@charset "UTF-8";
:root {
  --header-height: 130px;
}
@media screen and (max-width: 1199px) {
  :root {
    --header-height: 100px;
  }
}
@media screen and (max-width: 575px) {
  :root {
    --header-height: 80px;
  }
}

#marked-objects .marked-object::before, #package-info .highlights ul li::before,
#room-info .highlights ul li::before, .content-block-filter .filter-group.filter-group-hashtags::before, .content-block-accordion .accordion-item .accordion-button::after,
.content-block-seminar-rooms .accordion-item .accordion-button::after, .content-block blockquote::before, .content-block ul:not(.list-unstyled) li:not(.breadcrumb-item)::before, .breadcrumb .breadcrumb-item a::before, .breadcrumb .breadcrumb-item + .breadcrumb-item::before, #main-navigation-wrapper #main-navigation .navigation li a::after, .video-background-controls button, .btn-text::after, [class^=icon-], [class*=" icon-"], .tns-outer .tns-controls button::before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Fjalla One */
@font-face {
  font-family: "Fjalla One";
  font-style: normal;
  font-weight: 400;
  src: url(/build/fonts/fjalla-one-v13-latin-regular.3eb61198.eot);
  /* IE9 Compat Modes */
  src: local(""), url(/build/fonts/fjalla-one-v13-latin-regular.3eb61198.eot) format("embedded-opentype"), url(/build/fonts/fjalla-one-v13-latin-regular.1c9ec140.woff2) format("woff2"), url(/build/fonts/fjalla-one-v13-latin-regular.8b87b997.woff) format("woff"), url(/build/fonts/fjalla-one-v13-latin-regular.73cf4c08.ttf) format("truetype"), url(/build/images/fjalla-one-v13-latin-regular.25803992.svg) format("svg");
  /* Legacy iOS */
}
/* Open Sans */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url(/build/fonts/open-sans-v34-latin-300.175ca101.eot);
  /* IE9 Compat Modes */
  src: local(""), url(/build/fonts/open-sans-v34-latin-300.175ca101.eot) format("embedded-opentype"), url(/build/fonts/open-sans-v34-latin-300.c93abfae.woff2) format("woff2"), url(/build/fonts/open-sans-v34-latin-300.fbaa05ad.woff) format("woff"), url(/build/fonts/open-sans-v34-latin-300.e57cd99d.ttf) format("truetype"), url(/build/images/open-sans-v34-latin-300.43861e56.svg) format("svg");
  /* Legacy iOS */
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: url(/build/fonts/open-sans-v34-latin-regular.6f06a4e8.eot);
  /* IE9 Compat Modes */
  src: local(""), url(/build/fonts/open-sans-v34-latin-regular.6f06a4e8.eot) format("embedded-opentype"), url(/build/fonts/open-sans-v34-latin-regular.a1535f45.woff2) format("woff2"), url(/build/fonts/open-sans-v34-latin-regular.7958f4e4.woff) format("woff"), url(/build/fonts/open-sans-v34-latin-regular.9fc51a00.ttf) format("truetype"), url(/build/images/open-sans-v34-latin-regular.a9aff17e.svg) format("svg");
  /* Legacy iOS */
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url(/build/fonts/open-sans-v34-latin-600.7562f9f9.eot);
  /* IE9 Compat Modes */
  src: local(""), url(/build/fonts/open-sans-v34-latin-600.7562f9f9.eot) format("embedded-opentype"), url(/build/fonts/open-sans-v34-latin-600.7ef3bbc9.woff2) format("woff2"), url(/build/fonts/open-sans-v34-latin-600.f031bf84.woff) format("woff"), url(/build/fonts/open-sans-v34-latin-600.8c07670b.ttf) format("truetype"), url(/build/images/open-sans-v34-latin-600.3d5351d0.svg) format("svg");
  /* Legacy iOS */
}
/*!
 * Bootstrap v5.1.3 (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 {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #72223D;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #34AA98;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-white: rgb(255, 255, 255);
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #34AA98;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #72223D;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 52, 170, 152;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 114, 34, 61;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-bg: rgb(255, 255, 255);
}

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

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
  margin: 1rem 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: 0.25;
}

hr:not([size]) {
  height: 1px;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
}

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2rem;
  }
}

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.75rem;
  }
}

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.5rem;
  }
}

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

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

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

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

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

ol,
ul {
  padding-left: 2rem;
}

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, .small {
  font-size: 0.875em;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #0d6efd;
  text-decoration: underline;
}
a:hover {
  color: #0a58ca;
}

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

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
  direction: ltr /* rtl:ignore */;
  unicode-bidi: bidi-override;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: #d63384;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 0.875em;
  color: rgb(255, 255, 255);
  background-color: #212529;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
  font-weight: 700;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #6c757d;
  text-align: left;
}

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

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

label {
  display: inline-block;
}

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,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]::-webkit-calendar-picker-indicator {
  display: none;
}

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

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

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

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit;
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

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

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::file-selector-button {
  font: inherit;
}

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

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

.display-1 {
  font-size: calc(1.625rem + 4.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-size: calc(1.475rem + 2.7vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

.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: 0.875em;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}
.blockquote > :last-child {
  margin-bottom: 0;
}

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: rgb(255, 255, 255);
  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: 0.875em;
  color: #6c757d;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  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;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

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

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

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

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

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

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

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

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

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

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

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

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

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

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

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

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

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

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

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

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

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

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

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

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

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }

  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

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

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

  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

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

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

  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

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

  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

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

  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

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

  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

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

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }

  .g-sm-0,
.gx-sm-0 {
    --bs-gutter-x: 0;
  }

  .g-sm-0,
.gy-sm-0 {
    --bs-gutter-y: 0;
  }

  .g-sm-1,
.gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-sm-1,
.gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-sm-2,
.gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-sm-2,
.gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-sm-3,
.gx-sm-3 {
    --bs-gutter-x: 1rem;
  }

  .g-sm-3,
.gy-sm-3 {
    --bs-gutter-y: 1rem;
  }

  .g-sm-4,
.gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-sm-4,
.gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-sm-5,
.gx-sm-5 {
    --bs-gutter-x: 3rem;
  }

  .g-sm-5,
.gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }

  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

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

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

  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

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

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

  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

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

  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

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

  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

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

  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

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

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-md-4 {
    margin-left: 33.33333333%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-md-7 {
    margin-left: 58.33333333%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-md-10 {
    margin-left: 83.33333333%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }

  .g-md-0,
.gx-md-0 {
    --bs-gutter-x: 0;
  }

  .g-md-0,
.gy-md-0 {
    --bs-gutter-y: 0;
  }

  .g-md-1,
.gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-md-1,
.gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-md-2,
.gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-md-2,
.gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-md-3,
.gx-md-3 {
    --bs-gutter-x: 1rem;
  }

  .g-md-3,
.gy-md-3 {
    --bs-gutter-y: 1rem;
  }

  .g-md-4,
.gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-md-4,
.gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-md-5,
.gx-md-5 {
    --bs-gutter-x: 3rem;
  }

  .g-md-5,
.gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }

  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

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

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

  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

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

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

  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

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

  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

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

  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

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

  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

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

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.33333333%;
  }

  .offset-lg-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-lg-4 {
    margin-left: 33.33333333%;
  }

  .offset-lg-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-lg-7 {
    margin-left: 58.33333333%;
  }

  .offset-lg-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-lg-10 {
    margin-left: 83.33333333%;
  }

  .offset-lg-11 {
    margin-left: 91.66666667%;
  }

  .g-lg-0,
.gx-lg-0 {
    --bs-gutter-x: 0;
  }

  .g-lg-0,
.gy-lg-0 {
    --bs-gutter-y: 0;
  }

  .g-lg-1,
.gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-lg-1,
.gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-lg-2,
.gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-lg-2,
.gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-lg-3,
.gx-lg-3 {
    --bs-gutter-x: 1rem;
  }

  .g-lg-3,
.gy-lg-3 {
    --bs-gutter-y: 1rem;
  }

  .g-lg-4,
.gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-lg-4,
.gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-lg-5,
.gx-lg-5 {
    --bs-gutter-x: 3rem;
  }

  .g-lg-5,
.gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }

  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

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

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

  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

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

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

  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

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

  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

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

  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

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

  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

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

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }

  .g-xl-0,
.gx-xl-0 {
    --bs-gutter-x: 0;
  }

  .g-xl-0,
.gy-xl-0 {
    --bs-gutter-y: 0;
  }

  .g-xl-1,
.gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xl-1,
.gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xl-2,
.gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xl-2,
.gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xl-3,
.gx-xl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xl-3,
.gy-xl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xl-4,
.gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xl-4,
.gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xl-5,
.gx-xl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xl-5,
.gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }

  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }

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

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

  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }

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

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

  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }

  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }

  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }

  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }

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

  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

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

  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }

  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }

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

  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }

  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }

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

  .offset-xxl-0 {
    margin-left: 0;
  }

  .offset-xxl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xxl-2 {
    margin-left: 16.66666667%;
  }

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

  .offset-xxl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xxl-5 {
    margin-left: 41.66666667%;
  }

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

  .offset-xxl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xxl-8 {
    margin-left: 66.66666667%;
  }

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

  .offset-xxl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xxl-11 {
    margin-left: 91.66666667%;
  }

  .g-xxl-0,
.gx-xxl-0 {
    --bs-gutter-x: 0;
  }

  .g-xxl-0,
.gy-xxl-0 {
    --bs-gutter-y: 0;
  }

  .g-xxl-1,
.gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }

  .g-xxl-1,
.gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }

  .g-xxl-2,
.gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }

  .g-xxl-2,
.gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }

  .g-xxl-3,
.gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }

  .g-xxl-3,
.gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }

  .g-xxl-4,
.gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }

  .g-xxl-4,
.gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }

  .g-xxl-5,
.gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }

  .g-xxl-5,
.gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: #212529;
  --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
  --bs-table-active-color: #212529;
  --bs-table-active-bg: rgba(0, 0, 0, 0.1);
  --bs-table-hover-color: #212529;
  --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
  vertical-align: top;
  border-color: #dee2e6;
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  background-color: var(--bs-table-bg);
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}
.table > :not(:first-child) {
  border-top: 2px solid currentColor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: 1px 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 1px;
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
  border-top-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: var(--bs-table-striped-bg);
  color: var(--bs-table-striped-color);
}

.table-active {
  --bs-table-accent-bg: var(--bs-table-active-bg);
  color: var(--bs-table-active-color);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-accent-bg: var(--bs-table-hover-bg);
  color: var(--bs-table-hover-color);
}

.table-primary {
  --bs-table-bg: #cfe2ff;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #bfd1ec;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #bacbe6;
}

.table-secondary {
  --bs-table-bg: #e2e3e5;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #d1d2d4;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #cbccce;
}

.table-success {
  --bs-table-bg: #d6eeea;
  --bs-table-striped-bg: #cbe2de;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #c1d6d3;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #c6dcd8;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #c1d6d3;
}

.table-info {
  --bs-table-bg: #cff4fc;
  --bs-table-striped-bg: #c5e8ef;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #badce3;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #bfe2e9;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #badce3;
}

.table-warning {
  --bs-table-bg: #fff3cd;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #ece1be;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #e6dbb9;
}

.table-danger {
  --bs-table-bg: #e3d3d8;
  --bs-table-striped-bg: #d8c8cd;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #ccbec2;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #d2c3c8;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #ccbec2;
}

.table-light {
  --bs-table-bg: #f8f9fa;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: rgb(0, 0, 0);
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: rgb(0, 0, 0);
  --bs-table-hover-bg: #e5e6e7;
  --bs-table-hover-color: rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  border-color: #dfe0e1;
}

.table-dark {
  --bs-table-bg: #212529;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: rgb(255, 255, 255);
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: rgb(255, 255, 255);
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  border-color: #373b3e;
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
}

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

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

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #6c757d;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: rgb(255, 255, 255);
  background-clip: padding-box;
  border: 1px solid #ced4da;
  appearance: none;
  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[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: #212529;
  background-color: rgb(255, 255, 255);
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  height: 1.5em;
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  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) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: #dde0e3;
}
.form-control::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  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) {
  .form-control::-webkit-file-upload-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: #dde0e3;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  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 {
  min-height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}
.form-control-sm::-webkit-file-upload-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}

.form-control-lg {
  min-height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}
.form-control-lg::-webkit-file-upload-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + 2px);
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + 2px);
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + 2px);
}

.form-control-color {
  width: 3rem;
  height: auto;
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}
.form-control-color::-webkit-color-swatch {
  height: 1.5em;
  border-radius: 0.25rem;
}

.form-select {
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: rgb(255, 255, 255);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
  background-image: none;
}
.form-select:disabled {
  background-color: #e9ecef;
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #212529;
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.form-check-input {
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  background-color: rgb(255, 255, 255);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0, 0, 0, 0.25);
  appearance: none;
  color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='rgb%28255, 255, 255%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='rgb%28255, 255, 255%29'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='rgb%28255, 255, 255%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  opacity: 0.5;
}

.form-switch {
  padding-left: 2.5em;
}
.form-switch .form-check-input {
  width: 2em;
  margin-left: -2.5em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}
.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgb%28255, 255, 255%29'/%3e%3c/svg%3e");
}

.form-check-inline {
  display: inline-block;
  margin-right: 1rem;
}

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px rgb(255, 255, 255), 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px rgb(255, 255, 255), 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  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) {
  .form-range::-webkit-slider-thumb {
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  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) {
  .form-range::-moz-range-thumb {
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}
.form-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-select {
  height: calc(3.5rem + 2px);
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding: 1rem 0.75rem;
  pointer-events: none;
  border: 1px solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::placeholder {
  color: transparent;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-select ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  opacity: 0.65;
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus {
  z-index: 3;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 3;
}

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

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

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

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

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #34AA98;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: rgb(0, 0, 0);
  background-color: rgba(52, 170, 152, 0.9);
  border-radius: 0.25rem;
}

.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: #34AA98;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2334AA98' 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: #34AA98;
  box-shadow: 0 0 0 0.25rem rgba(52, 170, 152, 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 .form-select:valid, .form-select.is-valid {
  border-color: #34AA98;
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  padding-right: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2334AA98' 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-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: #34AA98;
  box-shadow: 0 0 0 0.25rem rgba(52, 170, 152, 0.25);
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: #34AA98;
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: #34AA98;
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(52, 170, 152, 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #34AA98;
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid,
.was-validated .input-group .form-select:valid,
.input-group .form-select.is-valid {
  z-index: 1;
}
.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus,
.was-validated .input-group .form-select:valid:focus,
.input-group .form-select.is-valid:focus {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #72223D;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: rgb(255, 255, 255);
  background-color: rgba(114, 34, 61, 0.9);
  border-radius: 0.25rem;
}

.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: #72223D;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%2372223D'%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='%2372223D' 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: #72223D;
  box-shadow: 0 0 0 0.25rem rgba(114, 34, 61, 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 .form-select:invalid, .form-select.is-invalid {
  border-color: #72223D;
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  padding-right: 4.125rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%2372223D'%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='%2372223D' stroke='none'/%3e%3c/svg%3e");
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: #72223D;
  box-shadow: 0 0 0 0.25rem rgba(114, 34, 61, 0.25);
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: #72223D;
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: #72223D;
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(114, 34, 61, 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #72223D;
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid,
.was-validated .input-group .form-select:invalid,
.input-group .form-select.is-invalid {
  z-index: 2;
}
.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus,
.was-validated .input-group .form-select:invalid:focus,
.input-group .form-select.is-invalid:focus {
  z-index: 3;
}

.btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  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;
}
.btn-check:focus + .btn, .btn:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  pointer-events: none;
  opacity: 0.65;
}

.btn-primary {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-primary:hover {
  color: rgb(255, 255, 255);
  background-color: #0b5ed7;
  border-color: #0a58ca;
}
.btn-check:focus + .btn-primary, .btn-primary:focus {
  color: rgb(255, 255, 255);
  background-color: #0b5ed7;
  border-color: #0a58ca;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {
  color: rgb(255, 255, 255);
  background-color: #0a58ca;
  border-color: #0a53be;
}
.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-primary:disabled, .btn-primary.disabled {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}

.btn-secondary {
  color: rgb(255, 255, 255);
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  color: rgb(255, 255, 255);
  background-color: #5c636a;
  border-color: #565e64;
}
.btn-check:focus + .btn-secondary, .btn-secondary:focus {
  color: rgb(255, 255, 255);
  background-color: #5c636a;
  border-color: #565e64;
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle {
  color: rgb(255, 255, 255);
  background-color: #565e64;
  border-color: #51585e;
}
.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}
.btn-secondary:disabled, .btn-secondary.disabled {
  color: rgb(255, 255, 255);
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-success {
  color: rgb(0, 0, 0);
  background-color: #34AA98;
  border-color: #34AA98;
}
.btn-success:hover {
  color: rgb(0, 0, 0);
  background-color: #52b7a7;
  border-color: #48b3a2;
}
.btn-check:focus + .btn-success, .btn-success:focus {
  color: rgb(0, 0, 0);
  background-color: #52b7a7;
  border-color: #48b3a2;
  box-shadow: 0 0 0 0.25rem rgba(44, 145, 129, 0.5);
}
.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle {
  color: rgb(0, 0, 0);
  background-color: #5dbbad;
  border-color: #48b3a2;
}
.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(44, 145, 129, 0.5);
}
.btn-success:disabled, .btn-success.disabled {
  color: rgb(0, 0, 0);
  background-color: #34AA98;
  border-color: #34AA98;
}

.btn-info {
  color: rgb(0, 0, 0);
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-info:hover {
  color: rgb(0, 0, 0);
  background-color: #31d2f2;
  border-color: #25cff2;
}
.btn-check:focus + .btn-info, .btn-info:focus {
  color: rgb(0, 0, 0);
  background-color: #31d2f2;
  border-color: #25cff2;
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle {
  color: rgb(0, 0, 0);
  background-color: #3dd5f3;
  border-color: #25cff2;
}
.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);
}
.btn-info:disabled, .btn-info.disabled {
  color: rgb(0, 0, 0);
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}

.btn-warning {
  color: rgb(0, 0, 0);
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-warning:hover {
  color: rgb(0, 0, 0);
  background-color: #ffca2c;
  border-color: #ffc720;
}
.btn-check:focus + .btn-warning, .btn-warning:focus {
  color: rgb(0, 0, 0);
  background-color: #ffca2c;
  border-color: #ffc720;
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {
  color: rgb(0, 0, 0);
  background-color: #ffcd39;
  border-color: #ffc720;
}
.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);
}
.btn-warning:disabled, .btn-warning.disabled {
  color: rgb(0, 0, 0);
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-danger {
  color: rgb(255, 255, 255);
  background-color: #72223D;
  border-color: #72223D;
}
.btn-danger:hover {
  color: rgb(255, 255, 255);
  background-color: #611d34;
  border-color: #5b1b31;
}
.btn-check:focus + .btn-danger, .btn-danger:focus {
  color: rgb(255, 255, 255);
  background-color: #611d34;
  border-color: #5b1b31;
  box-shadow: 0 0 0 0.25rem rgba(135, 67, 90, 0.5);
}
.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle {
  color: rgb(255, 255, 255);
  background-color: #5b1b31;
  border-color: #561a2e;
}
.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(135, 67, 90, 0.5);
}
.btn-danger:disabled, .btn-danger.disabled {
  color: rgb(255, 255, 255);
  background-color: #72223D;
  border-color: #72223D;
}

.btn-light {
  color: rgb(0, 0, 0);
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-light:hover {
  color: rgb(0, 0, 0);
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:focus + .btn-light, .btn-light:focus {
  color: rgb(0, 0, 0);
  background-color: #f9fafb;
  border-color: #f9fafb;
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {
  color: rgb(0, 0, 0);
  background-color: #f9fafb;
  border-color: #f9fafb;
}
.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);
}
.btn-light:disabled, .btn-light.disabled {
  color: rgb(0, 0, 0);
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-dark {
  color: rgb(255, 255, 255);
  background-color: #212529;
  border-color: #212529;
}
.btn-dark:hover {
  color: rgb(255, 255, 255);
  background-color: #1c1f23;
  border-color: #1a1e21;
}
.btn-check:focus + .btn-dark, .btn-dark:focus {
  color: rgb(255, 255, 255);
  background-color: #1c1f23;
  border-color: #1a1e21;
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle {
  color: rgb(255, 255, 255);
  background-color: #1a1e21;
  border-color: #191c1f;
}
.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);
}
.btn-dark:disabled, .btn-dark.disabled {
  color: rgb(255, 255, 255);
  background-color: #212529;
  border-color: #212529;
}

.btn-outline-primary {
  color: #0d6efd;
  border-color: #0d6efd;
}
.btn-outline-primary:hover {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}
.btn-outline-primary:disabled, .btn-outline-primary.disabled {
  color: #0d6efd;
  background-color: transparent;
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}
.btn-outline-secondary:hover {
  color: rgb(255, 255, 255);
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {
  color: rgb(255, 255, 255);
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}
.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-success {
  color: #34AA98;
  border-color: #34AA98;
}
.btn-outline-success:hover {
  color: rgb(0, 0, 0);
  background-color: #34AA98;
  border-color: #34AA98;
}
.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {
  box-shadow: 0 0 0 0.25rem rgba(52, 170, 152, 0.5);
}
.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {
  color: rgb(0, 0, 0);
  background-color: #34AA98;
  border-color: #34AA98;
}
.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(52, 170, 152, 0.5);
}
.btn-outline-success:disabled, .btn-outline-success.disabled {
  color: #34AA98;
  background-color: transparent;
}

.btn-outline-info {
  color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-outline-info:hover {
  color: rgb(0, 0, 0);
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {
  color: rgb(0, 0, 0);
  background-color: #0dcaf0;
  border-color: #0dcaf0;
}
.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}
.btn-outline-info:disabled, .btn-outline-info.disabled {
  color: #0dcaf0;
  background-color: transparent;
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
.btn-outline-warning:hover {
  color: rgb(0, 0, 0);
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {
  color: rgb(0, 0, 0);
  background-color: #ffc107;
  border-color: #ffc107;
}
.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}
.btn-outline-warning:disabled, .btn-outline-warning.disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-danger {
  color: #72223D;
  border-color: #72223D;
}
.btn-outline-danger:hover {
  color: rgb(255, 255, 255);
  background-color: #72223D;
  border-color: #72223D;
}
.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {
  box-shadow: 0 0 0 0.25rem rgba(114, 34, 61, 0.5);
}
.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {
  color: rgb(255, 255, 255);
  background-color: #72223D;
  border-color: #72223D;
}
.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(114, 34, 61, 0.5);
}
.btn-outline-danger:disabled, .btn-outline-danger.disabled {
  color: #72223D;
  background-color: transparent;
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-outline-light:hover {
  color: rgb(0, 0, 0);
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {
  color: rgb(0, 0, 0);
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}
.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);
}
.btn-outline-light:disabled, .btn-outline-light.disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-dark {
  color: #212529;
  border-color: #212529;
}
.btn-outline-dark:hover {
  color: rgb(255, 255, 255);
  background-color: #212529;
  border-color: #212529;
}
.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {
  color: rgb(255, 255, 255);
  background-color: #212529;
  border-color: #212529;
}
.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {
  box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}
.btn-outline-dark:disabled, .btn-outline-dark.disabled {
  color: #212529;
  background-color: transparent;
}

.btn-link {
  font-weight: 400;
  color: #0d6efd;
  text-decoration: underline;
}
.btn-link:hover {
  color: #0a58ca;
}
.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
}

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

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

.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 {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

.dropup,
.dropend,
.dropdown,
.dropstart {
  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;
  z-index: 1000;
  display: none;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: rgb(255, 255, 255);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: 0.125rem;
}

.dropdown-menu-start {
  --bs-position: start;
}
.dropdown-menu-start[data-bs-popper] {
  right: auto;
  left: 0;
}

.dropdown-menu-end {
  --bs-position: end;
}
.dropdown-menu-end[data-bs-popper] {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  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;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropend .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;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .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;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #1e2125;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: rgb(255, 255, 255);
  text-decoration: none;
  background-color: #0d6efd;
}
.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 1rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

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

.dropdown-menu-dark {
  color: #dee2e6;
  background-color: #343a40;
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {
  color: rgb(255, 255, 255);
  background-color: rgba(255, 255, 255, 0.15);
}
.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
}
.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {
  color: #adb5bd;
}
.dropdown-menu-dark .dropdown-divider {
  border-color: rgba(0, 0, 0, 0.15);
}
.dropdown-menu-dark .dropdown-item-text {
  color: #dee2e6;
}
.dropdown-menu-dark .dropdown-header {
  color: #adb5bd;
}

.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-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.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:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.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, .dropend .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropstart .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 ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

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

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
  color: #0d6efd;
  text-decoration: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: #0a58ca;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  background: none;
  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;
  isolation: isolate;
}
.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: rgb(255, 255, 255);
  border-color: #dee2e6 #dee2e6 rgb(255, 255, 255);
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
}

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

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%;
}

.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-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  text-decoration: none;
  white-space: nowrap;
}
.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;
}

.navbar-text {
  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;
  transition: box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 0.25rem;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: 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 .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-sm .offcanvas-top,
.navbar-expand-sm .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: 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 .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-md .offcanvas-top,
.navbar-expand-md .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: 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 .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-lg .offcanvas-top,
.navbar-expand-lg .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: 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 .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-xl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xl .offcanvas-top,
.navbar-expand-xl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: inherit;
    bottom: 0;
    z-index: 1000;
    flex-grow: 1;
    visibility: visible !important;
    background-color: transparent;
    border-right: 0;
    border-left: 0;
    transition: none;
    transform: none;
  }
  .navbar-expand-xxl .offcanvas-top,
.navbar-expand-xxl .offcanvas-bottom {
    height: auto;
    border-top: 0;
    border-bottom: 0;
  }
  .navbar-expand-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.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 .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas {
  position: inherit;
  bottom: 0;
  z-index: 1000;
  flex-grow: 1;
  visibility: visible !important;
  background-color: transparent;
  border-right: 0;
  border-left: 0;
  transition: none;
  transform: none;
}
.navbar-expand .offcanvas-top,
.navbar-expand .offcanvas-bottom {
  height: auto;
  border-top: 0;
  border-bottom: 0;
}
.navbar-expand .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.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.55);
}
.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 .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.55);
  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' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%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.55);
}
.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: rgb(255, 255, 255);
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: rgb(255, 255, 255);
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.55);
}
.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 .nav-link.active {
  color: rgb(255, 255, 255);
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.55);
  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' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%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.55);
}
.navbar-dark .navbar-text a,
.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
  color: rgb(255, 255, 255);
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: rgb(255, 255, 255);
  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;
  padding: 1rem 1rem;
}

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

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

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

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

.card-header {
  padding: 0.5rem 1rem;
  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.5rem 1rem;
  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.5rem;
  margin-bottom: -0.5rem;
  margin-left: -0.5rem;
  border-bottom: 0;
}

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

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

.card-img,
.card-img-top,
.card-img-bottom {
  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-group > .card {
  margin-bottom: 0.75rem;
}
@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;
  }
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  background-color: rgb(255, 255, 255);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  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, border-radius 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: #0c63e4;
  background-color: #e7f1ff;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);
}
.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}
.accordion-button::after {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-left: auto;
  content: "";
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 1.25rem;
  transition: transform 0.2s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  background-color: rgb(255, 255, 255);
  border: 1px solid rgba(0, 0, 0, 0.125);
}
.accordion-item:first-of-type {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.accordion-body {
  padding: 1rem 1.25rem;
}

.accordion-flush .accordion-collapse {
  border-width: 0;
}
.accordion-flush .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}
.accordion-flush .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush .accordion-item .accordion-button {
  border-radius: 0;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0 0;
  margin-bottom: 1rem;
  list-style: none;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
}
.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  color: #0d6efd;
  text-decoration: none;
  background-color: rgb(255, 255, 255);
  border: 1px solid #dee2e6;
  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) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: #0a58ca;
  background-color: #e9ecef;
  border-color: #dee2e6;
}
.page-link:focus {
  z-index: 3;
  color: #0a58ca;
  background-color: #e9ecef;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.page-item:not(:first-child) .page-link {
  margin-left: -1px;
}
.page-item.active .page-link {
  z-index: 3;
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  background-color: rgb(255, 255, 255);
  border-color: #dee2e6;
}

.page-link {
  padding: 0.375rem 0.75rem;
}

.page-item:first-child .page-link {
  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;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
}
.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;
}
.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.35em 0.65em;
  font-size: 0.75em;
  font-weight: 700;
  line-height: 1;
  color: rgb(255, 255, 255);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
.badge:empty {
  display: none;
}

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

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

.alert-heading {
  color: inherit;
}

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

.alert-dismissible {
  padding-right: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}

.alert-primary {
  color: #084298;
  background-color: #cfe2ff;
  border-color: #b6d4fe;
}
.alert-primary .alert-link {
  color: #06357a;
}

.alert-secondary {
  color: #41464b;
  background-color: #e2e3e5;
  border-color: #d3d6d8;
}
.alert-secondary .alert-link {
  color: #34383c;
}

.alert-success {
  color: #1f665b;
  background-color: #d6eeea;
  border-color: #c2e6e0;
}
.alert-success .alert-link {
  color: #195249;
}

.alert-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}
.alert-info .alert-link {
  color: #04414d;
}

.alert-warning {
  color: #664d03;
  background-color: #fff3cd;
  border-color: #ffecb5;
}
.alert-warning .alert-link {
  color: #523e02;
}

.alert-danger {
  color: #441425;
  background-color: #e3d3d8;
  border-color: #d5bdc5;
}
.alert-danger .alert-link {
  color: #36101e;
}

.alert-light {
  color: #636464;
  background-color: #fefefe;
  border-color: #fdfdfe;
}
.alert-light .alert-link {
  color: #4f5050;
}

.alert-dark {
  color: #141619;
  background-color: #d3d3d4;
  border-color: #bcbebf;
}
.alert-dark .alert-link {
  color: #101214;
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: rgb(255, 255, 255);
  text-align: center;
  white-space: nowrap;
  background-color: #0d6efd;
  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 {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

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

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > li::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.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.5rem 1rem;
  color: #212529;
  text-decoration: none;
  background-color: rgb(255, 255, 255);
  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: rgb(255, 255, 255);
}
.list-group-item.active {
  z-index: 2;
  color: rgb(255, 255, 255);
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.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;
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .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: #084298;
  background-color: #cfe2ff;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #084298;
  background-color: #bacbe6;
}
.list-group-item-primary.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #084298;
  border-color: #084298;
}

.list-group-item-secondary {
  color: #41464b;
  background-color: #e2e3e5;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #41464b;
  background-color: #cbccce;
}
.list-group-item-secondary.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #41464b;
  border-color: #41464b;
}

.list-group-item-success {
  color: #1f665b;
  background-color: #d6eeea;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #1f665b;
  background-color: #c1d6d3;
}
.list-group-item-success.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #1f665b;
  border-color: #1f665b;
}

.list-group-item-info {
  color: #055160;
  background-color: #cff4fc;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #055160;
  background-color: #badce3;
}
.list-group-item-info.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #055160;
  border-color: #055160;
}

.list-group-item-warning {
  color: #664d03;
  background-color: #fff3cd;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #664d03;
  background-color: #e6dbb9;
}
.list-group-item-warning.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #664d03;
  border-color: #664d03;
}

.list-group-item-danger {
  color: #441425;
  background-color: #e3d3d8;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #441425;
  background-color: #ccbec2;
}
.list-group-item-danger.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #441425;
  border-color: #441425;
}

.list-group-item-light {
  color: #636464;
  background-color: #fefefe;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #636464;
  background-color: #e5e5e5;
}
.list-group-item-light.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #636464;
  border-color: #636464;
}

.list-group-item-dark {
  color: #141619;
  background-color: #d3d3d4;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #141619;
  background-color: #bebebf;
}
.list-group-item-dark.list-group-item-action.active {
  color: rgb(255, 255, 255);
  background-color: #141619;
  border-color: #141619;
}

.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: rgb(0, 0, 0);
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%280, 0, 0%29'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.25rem;
  opacity: 0.5;
}
.btn-close:hover {
  color: rgb(0, 0, 0);
  text-decoration: none;
  opacity: 0.75;
}
.btn-close:focus {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  opacity: 1;
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  user-select: none;
  opacity: 0.25;
}

.btn-close-white {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
  width: 350px;
  max-width: 100%;
  font-size: 0.875rem;
  pointer-events: auto;
  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.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.5rem 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-header .btn-close {
  margin-right: -0.375rem;
  margin-left: 0.75rem;
}

.toast-body {
  padding: 0.75rem;
  word-wrap: break-word;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1055;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  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 {
  height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

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

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: rgb(255, 255, 255);
  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: 1050;
  width: 100vw;
  height: 100vh;
  background-color: rgb(0, 0, 0);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  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 .btn-close {
  padding: 0.5rem 0.5rem;
  margin: -0.5rem -0.5rem -0.5rem 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;
  flex-shrink: 0;
  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;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    height: calc(100% - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }

  .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;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}
.modal-fullscreen .modal-footer {
  border-radius: 0;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
}
.tooltip {
  position: absolute;
  z-index: 1080;
  display: block;
  margin: 0;
  font-family: var(--bs-font-sans-serif);
  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 .tooltip-arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: 0;
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: rgb(0, 0, 0);
}

.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] {
  padding: 0 0.4rem;
}
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: rgb(0, 0, 0);
}

.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: 0;
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: rgb(0, 0, 0);
}

.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] {
  padding: 0 0.4rem;
}
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: rgb(0, 0, 0);
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: rgb(255, 255, 255);
  text-align: center;
  background-color: rgb(0, 0, 0);
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0 /* rtl:ignore */;
  z-index: 1070;
  display: block;
  max-width: 276px;
  font-family: var(--bs-font-sans-serif);
  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: rgb(255, 255, 255);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .popover-arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgb(255, 255, 255);
}

.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgb(255, 255, 255);
}

.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-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 > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgb(255, 255, 255);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f0f0f0;
}

.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgb(255, 255, 255);
}

.popover-header {
  padding: 0.5rem 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f0f0f0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 1rem 1rem;
  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%;
  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;
}

/* rtl:begin:ignore */
.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
  transform: translateX(100%);
}

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

/* rtl:end:ignore */
.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    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%;
  padding: 0;
  color: rgb(255, 255, 255);
  text-align: center;
  background: none;
  border: 0;
  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: rgb(255, 255, 255);
  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: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28255, 255, 255%29'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28255, 255, 255%29'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  background-clip: padding-box;
  border: 0;
  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 [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 1.25rem;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: rgb(255, 255, 255);
  text-align: center;
}

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
  filter: invert(1) grayscale(100);
}
.carousel-dark .carousel-indicators [data-bs-target] {
  background-color: rgb(0, 0, 0);
}
.carousel-dark .carousel-caption {
  color: rgb(0, 0, 0);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: 0.75s linear infinite spinner-border;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: 0.75s linear infinite spinner-grow;
}

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
.spinner-grow {
    animation-duration: 1.5s;
  }
}
.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: 1045;
  display: flex;
  flex-direction: column;
  max-width: 100%;
  visibility: hidden;
  background-color: rgb(255, 255, 255);
  background-clip: padding-box;
  outline: 0;
  transition: transform 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: rgb(0, 0, 0);
}
.offcanvas-backdrop.fade {
  opacity: 0;
}
.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem;
}
.offcanvas-header .btn-close {
  padding: 0.5rem 0.5rem;
  margin-top: -0.5rem;
  margin-right: -0.5rem;
  margin-bottom: -0.5rem;
}

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

.offcanvas-body {
  flex-grow: 1;
  padding: 1rem 1rem;
  overflow-y: auto;
}

.offcanvas-start {
  top: 0;
  left: 0;
  width: 400px;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(-100%);
}

.offcanvas-end {
  top: 0;
  right: 0;
  width: 400px;
  border-left: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateX(100%);
}

.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: 30vh;
  max-height: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(-100%);
}

.offcanvas-bottom {
  right: 0;
  left: 0;
  height: 30vh;
  max-height: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  transform: translateY(100%);
}

.offcanvas.show {
  transform: none;
}

.placeholder {
  display: inline-block;
  min-height: 1em;
  vertical-align: middle;
  cursor: wait;
  background-color: currentColor;
  opacity: 0.5;
}
.placeholder.btn::before {
  display: inline-block;
  content: "";
}

.placeholder-xs {
  min-height: 0.6em;
}

.placeholder-sm {
  min-height: 0.8em;
}

.placeholder-lg {
  min-height: 1.2em;
}

.placeholder-glow .placeholder {
  animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  mask-image: linear-gradient(130deg, rgb(0, 0, 0) 55%, rgba(0, 0, 0, 0.8) 75%, rgb(0, 0, 0) 95%);
  mask-size: 200% 100%;
  animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
  100% {
    mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.link-primary {
  color: #0d6efd;
}
.link-primary:hover, .link-primary:focus {
  color: #0a58ca;
}

.link-secondary {
  color: #6c757d;
}
.link-secondary:hover, .link-secondary:focus {
  color: #565e64;
}

.link-success {
  color: #34AA98;
}
.link-success:hover, .link-success:focus {
  color: #5dbbad;
}

.link-info {
  color: #0dcaf0;
}
.link-info:hover, .link-info:focus {
  color: #3dd5f3;
}

.link-warning {
  color: #ffc107;
}
.link-warning:hover, .link-warning:focus {
  color: #ffcd39;
}

.link-danger {
  color: #72223D;
}
.link-danger:hover, .link-danger:focus {
  color: #5b1b31;
}

.link-light {
  color: #f8f9fa;
}
.link-light:hover, .link-light:focus {
  color: #f9fafb;
}

.link-dark {
  color: #212529;
}
.link-dark:hover, .link-dark:focus {
  color: #1a1e21;
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ratio-1x1 {
  --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
  --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
  --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
  --bs-aspect-ratio: 42.8571428571%;
}

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

.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}

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

.vr {
  display: inline-block;
  align-self: stretch;
  width: 1px;
  min-height: 1em;
  background-color: currentColor;
  opacity: 0.25;
}

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

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

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

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

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

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

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

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

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

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

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

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

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

.d-grid {
  display: grid !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;
}

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

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

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

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

.shadow-none {
  box-shadow: none !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;
}

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

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

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

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

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

.start-50 {
  left: 50% !important;
}

.start-100 {
  left: 100% !important;
}

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

.end-50 {
  right: 50% !important;
}

.end-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

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

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

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

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

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

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

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

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

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

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

.border-primary {
  border-color: #0d6efd !important;
}

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

.border-success {
  border-color: #34AA98 !important;
}

.border-info {
  border-color: #0dcaf0 !important;
}

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

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

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

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

.border-white {
  border-color: rgb(255, 255, 255) !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !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;
}

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

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

.min-vw-100 {
  min-width: 100vw !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;
}

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

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

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

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

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

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

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

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

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

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !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;
}

.justify-content-evenly {
  justify-content: space-evenly !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;
}

.order-first {
  order: -1 !important;
}

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

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !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;
}

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

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

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

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

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

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

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

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

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !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;
}

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

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

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

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

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

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

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

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

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

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

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

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

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

.me-auto {
  margin-right: auto !important;
}

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

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

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

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

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

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

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

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

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

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

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

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

.ms-auto {
  margin-left: auto !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

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

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

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

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

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

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

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

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

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

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

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

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

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

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

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

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

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

.fst-normal {
  font-style: normal !important;
}

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

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

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

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

.fw-bolder {
  font-weight: bolder !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;
}

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

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

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

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

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

.text-decoration-line-through {
  text-decoration: line-through !important;
}

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

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

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

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

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

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
  --bs-text-opacity: 1;
  color: #6c757d !important;
}

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

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

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

.text-opacity-25 {
  --bs-text-opacity: 0.25;
}

.text-opacity-50 {
  --bs-text-opacity: 0.5;
}

.text-opacity-75 {
  --bs-text-opacity: 0.75;
}

.text-opacity-100 {
  --bs-text-opacity: 1;
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-black {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
}

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

.bg-opacity-10 {
  --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
  --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
  --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
  --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
  --bs-bg-opacity: 1;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

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

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

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

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

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

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

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

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

.rounded-end {
  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-start {
  border-bottom-left-radius: 0.25rem !important;
  border-top-left-radius: 0.25rem !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

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

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

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

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

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

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

  .d-sm-grid {
    display: grid !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;
  }

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

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

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

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

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

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

  .gap-sm-0 {
    gap: 0 !important;
  }

  .gap-sm-1 {
    gap: 0.25rem !important;
  }

  .gap-sm-2 {
    gap: 0.5rem !important;
  }

  .gap-sm-3 {
    gap: 1rem !important;
  }

  .gap-sm-4 {
    gap: 1.5rem !important;
  }

  .gap-sm-5 {
    gap: 3rem !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;
  }

  .justify-content-sm-evenly {
    justify-content: space-evenly !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;
  }

  .order-sm-first {
    order: -1 !important;
  }

  .order-sm-0 {
    order: 0 !important;
  }

  .order-sm-1 {
    order: 1 !important;
  }

  .order-sm-2 {
    order: 2 !important;
  }

  .order-sm-3 {
    order: 3 !important;
  }

  .order-sm-4 {
    order: 4 !important;
  }

  .order-sm-5 {
    order: 5 !important;
  }

  .order-sm-last {
    order: 6 !important;
  }

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

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

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

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

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

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

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

  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

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

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

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

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

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

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

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

  .me-sm-0 {
    margin-right: 0 !important;
  }

  .me-sm-1 {
    margin-right: 0.25rem !important;
  }

  .me-sm-2 {
    margin-right: 0.5rem !important;
  }

  .me-sm-3 {
    margin-right: 1rem !important;
  }

  .me-sm-4 {
    margin-right: 1.5rem !important;
  }

  .me-sm-5 {
    margin-right: 3rem !important;
  }

  .me-sm-auto {
    margin-right: auto !important;
  }

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

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

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

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

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

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

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

  .ms-sm-0 {
    margin-left: 0 !important;
  }

  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }

  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }

  .ms-sm-3 {
    margin-left: 1rem !important;
  }

  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }

  .ms-sm-5 {
    margin-left: 3rem !important;
  }

  .ms-sm-auto {
    margin-left: auto !important;
  }

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

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

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

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

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

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

  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

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

  .pe-sm-0 {
    padding-right: 0 !important;
  }

  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pe-sm-3 {
    padding-right: 1rem !important;
  }

  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pe-sm-5 {
    padding-right: 3rem !important;
  }

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

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

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

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

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

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

  .ps-sm-0 {
    padding-left: 0 !important;
  }

  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }

  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }

  .ps-sm-3 {
    padding-left: 1rem !important;
  }

  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }

  .ps-sm-5 {
    padding-left: 3rem !important;
  }

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

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

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

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

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

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

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

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

  .d-md-grid {
    display: grid !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;
  }

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

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

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

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

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

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

  .gap-md-0 {
    gap: 0 !important;
  }

  .gap-md-1 {
    gap: 0.25rem !important;
  }

  .gap-md-2 {
    gap: 0.5rem !important;
  }

  .gap-md-3 {
    gap: 1rem !important;
  }

  .gap-md-4 {
    gap: 1.5rem !important;
  }

  .gap-md-5 {
    gap: 3rem !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;
  }

  .justify-content-md-evenly {
    justify-content: space-evenly !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;
  }

  .order-md-first {
    order: -1 !important;
  }

  .order-md-0 {
    order: 0 !important;
  }

  .order-md-1 {
    order: 1 !important;
  }

  .order-md-2 {
    order: 2 !important;
  }

  .order-md-3 {
    order: 3 !important;
  }

  .order-md-4 {
    order: 4 !important;
  }

  .order-md-5 {
    order: 5 !important;
  }

  .order-md-last {
    order: 6 !important;
  }

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

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

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

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

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

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

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

  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

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

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

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

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

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

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

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

  .me-md-0 {
    margin-right: 0 !important;
  }

  .me-md-1 {
    margin-right: 0.25rem !important;
  }

  .me-md-2 {
    margin-right: 0.5rem !important;
  }

  .me-md-3 {
    margin-right: 1rem !important;
  }

  .me-md-4 {
    margin-right: 1.5rem !important;
  }

  .me-md-5 {
    margin-right: 3rem !important;
  }

  .me-md-auto {
    margin-right: auto !important;
  }

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

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

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

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

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

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

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

  .ms-md-0 {
    margin-left: 0 !important;
  }

  .ms-md-1 {
    margin-left: 0.25rem !important;
  }

  .ms-md-2 {
    margin-left: 0.5rem !important;
  }

  .ms-md-3 {
    margin-left: 1rem !important;
  }

  .ms-md-4 {
    margin-left: 1.5rem !important;
  }

  .ms-md-5 {
    margin-left: 3rem !important;
  }

  .ms-md-auto {
    margin-left: auto !important;
  }

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

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

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

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

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

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

  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

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

  .pe-md-0 {
    padding-right: 0 !important;
  }

  .pe-md-1 {
    padding-right: 0.25rem !important;
  }

  .pe-md-2 {
    padding-right: 0.5rem !important;
  }

  .pe-md-3 {
    padding-right: 1rem !important;
  }

  .pe-md-4 {
    padding-right: 1.5rem !important;
  }

  .pe-md-5 {
    padding-right: 3rem !important;
  }

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

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

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

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

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

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

  .ps-md-0 {
    padding-left: 0 !important;
  }

  .ps-md-1 {
    padding-left: 0.25rem !important;
  }

  .ps-md-2 {
    padding-left: 0.5rem !important;
  }

  .ps-md-3 {
    padding-left: 1rem !important;
  }

  .ps-md-4 {
    padding-left: 1.5rem !important;
  }

  .ps-md-5 {
    padding-left: 3rem !important;
  }

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

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

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }

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

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

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

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

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

  .d-lg-grid {
    display: grid !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;
  }

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

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

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

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

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

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

  .gap-lg-0 {
    gap: 0 !important;
  }

  .gap-lg-1 {
    gap: 0.25rem !important;
  }

  .gap-lg-2 {
    gap: 0.5rem !important;
  }

  .gap-lg-3 {
    gap: 1rem !important;
  }

  .gap-lg-4 {
    gap: 1.5rem !important;
  }

  .gap-lg-5 {
    gap: 3rem !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;
  }

  .justify-content-lg-evenly {
    justify-content: space-evenly !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;
  }

  .order-lg-first {
    order: -1 !important;
  }

  .order-lg-0 {
    order: 0 !important;
  }

  .order-lg-1 {
    order: 1 !important;
  }

  .order-lg-2 {
    order: 2 !important;
  }

  .order-lg-3 {
    order: 3 !important;
  }

  .order-lg-4 {
    order: 4 !important;
  }

  .order-lg-5 {
    order: 5 !important;
  }

  .order-lg-last {
    order: 6 !important;
  }

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

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

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

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

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

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

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

  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

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

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

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

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

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

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

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

  .me-lg-0 {
    margin-right: 0 !important;
  }

  .me-lg-1 {
    margin-right: 0.25rem !important;
  }

  .me-lg-2 {
    margin-right: 0.5rem !important;
  }

  .me-lg-3 {
    margin-right: 1rem !important;
  }

  .me-lg-4 {
    margin-right: 1.5rem !important;
  }

  .me-lg-5 {
    margin-right: 3rem !important;
  }

  .me-lg-auto {
    margin-right: auto !important;
  }

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

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

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

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

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

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

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

  .ms-lg-0 {
    margin-left: 0 !important;
  }

  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }

  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }

  .ms-lg-3 {
    margin-left: 1rem !important;
  }

  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }

  .ms-lg-5 {
    margin-left: 3rem !important;
  }

  .ms-lg-auto {
    margin-left: auto !important;
  }

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

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

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

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

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

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

  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

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

  .pe-lg-0 {
    padding-right: 0 !important;
  }

  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pe-lg-3 {
    padding-right: 1rem !important;
  }

  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pe-lg-5 {
    padding-right: 3rem !important;
  }

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

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

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

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

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

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

  .ps-lg-0 {
    padding-left: 0 !important;
  }

  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }

  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }

  .ps-lg-3 {
    padding-left: 1rem !important;
  }

  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }

  .ps-lg-5 {
    padding-left: 3rem !important;
  }

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

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

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

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

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

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

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

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

  .d-xl-grid {
    display: grid !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;
  }

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

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

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

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

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

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

  .gap-xl-0 {
    gap: 0 !important;
  }

  .gap-xl-1 {
    gap: 0.25rem !important;
  }

  .gap-xl-2 {
    gap: 0.5rem !important;
  }

  .gap-xl-3 {
    gap: 1rem !important;
  }

  .gap-xl-4 {
    gap: 1.5rem !important;
  }

  .gap-xl-5 {
    gap: 3rem !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;
  }

  .justify-content-xl-evenly {
    justify-content: space-evenly !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;
  }

  .order-xl-first {
    order: -1 !important;
  }

  .order-xl-0 {
    order: 0 !important;
  }

  .order-xl-1 {
    order: 1 !important;
  }

  .order-xl-2 {
    order: 2 !important;
  }

  .order-xl-3 {
    order: 3 !important;
  }

  .order-xl-4 {
    order: 4 !important;
  }

  .order-xl-5 {
    order: 5 !important;
  }

  .order-xl-last {
    order: 6 !important;
  }

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

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

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

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

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

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

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

  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

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

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

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

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

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

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

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

  .me-xl-0 {
    margin-right: 0 !important;
  }

  .me-xl-1 {
    margin-right: 0.25rem !important;
  }

  .me-xl-2 {
    margin-right: 0.5rem !important;
  }

  .me-xl-3 {
    margin-right: 1rem !important;
  }

  .me-xl-4 {
    margin-right: 1.5rem !important;
  }

  .me-xl-5 {
    margin-right: 3rem !important;
  }

  .me-xl-auto {
    margin-right: auto !important;
  }

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

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

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

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

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

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

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

  .ms-xl-0 {
    margin-left: 0 !important;
  }

  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }

  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }

  .ms-xl-3 {
    margin-left: 1rem !important;
  }

  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }

  .ms-xl-5 {
    margin-left: 3rem !important;
  }

  .ms-xl-auto {
    margin-left: auto !important;
  }

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

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

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

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

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

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

  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

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

  .pe-xl-0 {
    padding-right: 0 !important;
  }

  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pe-xl-3 {
    padding-right: 1rem !important;
  }

  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pe-xl-5 {
    padding-right: 3rem !important;
  }

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

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

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

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

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

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

  .ps-xl-0 {
    padding-left: 0 !important;
  }

  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }

  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }

  .ps-xl-3 {
    padding-left: 1rem !important;
  }

  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }

  .ps-xl-5 {
    padding-left: 3rem !important;
  }

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

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

  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }

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

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

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

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

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

  .d-xxl-grid {
    display: grid !important;
  }

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

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

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

  .d-xxl-flex {
    display: flex !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .gap-xxl-0 {
    gap: 0 !important;
  }

  .gap-xxl-1 {
    gap: 0.25rem !important;
  }

  .gap-xxl-2 {
    gap: 0.5rem !important;
  }

  .gap-xxl-3 {
    gap: 1rem !important;
  }

  .gap-xxl-4 {
    gap: 1.5rem !important;
  }

  .gap-xxl-5 {
    gap: 3rem !important;
  }

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

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

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

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

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

  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .order-xxl-first {
    order: -1 !important;
  }

  .order-xxl-0 {
    order: 0 !important;
  }

  .order-xxl-1 {
    order: 1 !important;
  }

  .order-xxl-2 {
    order: 2 !important;
  }

  .order-xxl-3 {
    order: 3 !important;
  }

  .order-xxl-4 {
    order: 4 !important;
  }

  .order-xxl-5 {
    order: 5 !important;
  }

  .order-xxl-last {
    order: 6 !important;
  }

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

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

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

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

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

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

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

  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }

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

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

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

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

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

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

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

  .me-xxl-0 {
    margin-right: 0 !important;
  }

  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }

  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }

  .me-xxl-3 {
    margin-right: 1rem !important;
  }

  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }

  .me-xxl-5 {
    margin-right: 3rem !important;
  }

  .me-xxl-auto {
    margin-right: auto !important;
  }

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

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

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

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

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

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

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

  .ms-xxl-0 {
    margin-left: 0 !important;
  }

  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }

  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }

  .ms-xxl-3 {
    margin-left: 1rem !important;
  }

  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }

  .ms-xxl-5 {
    margin-left: 3rem !important;
  }

  .ms-xxl-auto {
    margin-left: auto !important;
  }

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

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

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

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

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

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

  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

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

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

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

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

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

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

  .pe-xxl-0 {
    padding-right: 0 !important;
  }

  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }

  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }

  .pe-xxl-3 {
    padding-right: 1rem !important;
  }

  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }

  .pe-xxl-5 {
    padding-right: 3rem !important;
  }

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

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

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

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

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

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

  .ps-xxl-0 {
    padding-left: 0 !important;
  }

  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }

  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }

  .ps-xxl-3 {
    padding-left: 1rem !important;
  }

  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }

  .ps-xxl-5 {
    padding-left: 3rem !important;
  }

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

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

  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }

  .fs-2 {
    font-size: 2rem !important;
  }

  .fs-3 {
    font-size: 1.75rem !important;
  }

  .fs-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }

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

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

  .d-print-grid {
    display: grid !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;
  }

  .d-print-none {
    display: none !important;
  }
}
.tiny-slider-wrapper {
  /* overflow: hidden; */
}

.tns-outer .tns-controls button {
  position: absolute;
  top: 50%;
  height: 80px;
  width: 80px;
  transform: translateY(-50%);
  border: 1px solid #CCCED0;
  border-radius: 50%;
  background-color: transparent;
  color: #76797d;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
  transition: all 0.4s ease 0s;
}
@media screen and (max-width: 1399px) {
  .tns-outer .tns-controls button {
    height: 70px;
    width: 70px;
  }
}
@media screen and (max-width: 1199px) {
  .tns-outer .tns-controls button {
    height: 60px;
    width: 60px;
  }
}
@media screen and (max-width: 991px) {
  .tns-outer .tns-controls button {
    height: 45px;
    width: 45px;
  }
}
@media screen and (max-width: 575px) {
  .tns-outer .tns-controls button {
    height: 40px;
    width: 40px;
  }
}
.tns-outer .tns-controls button:hover {
  color: #2E3C45;
  border-color: #2E3C45;
}
.tns-outer .tns-controls button::before {
  font-size: 20px;
}
@media screen and (max-width: 1199px) {
  .tns-outer .tns-controls button::before {
    font-size: 18px;
  }
}
@media screen and (max-width: 991px) {
  .tns-outer .tns-controls button::before {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .tns-outer .tns-controls button::before {
    font-size: 14px;
  }
}
.tns-outer .tns-controls button[data-controls=prev] {
  left: -110px;
}
@media screen and (max-width: 1399px) {
  .tns-outer .tns-controls button[data-controls=prev] {
    left: -95px;
  }
}
@media screen and (max-width: 1199px) {
  .tns-outer .tns-controls button[data-controls=prev] {
    left: -80px;
  }
}
@media screen and (max-width: 991px) {
  .tns-outer .tns-controls button[data-controls=prev] {
    left: -60px;
  }
}
.tns-outer .tns-controls button[data-controls=prev]::before {
  content: "\e903";
}
.tns-outer .tns-controls button[data-controls=next] {
  right: -110px;
}
@media screen and (max-width: 1399px) {
  .tns-outer .tns-controls button[data-controls=next] {
    right: -95px;
  }
}
@media screen and (max-width: 1199px) {
  .tns-outer .tns-controls button[data-controls=next] {
    right: -80px;
  }
}
@media screen and (max-width: 991px) {
  .tns-outer .tns-controls button[data-controls=next] {
    right: -60px;
  }
}
.tns-outer .tns-controls button[data-controls=next]::before {
  content: "\e904";
}
.tns-outer .tns-nav {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
}
.tns-outer .tns-nav button {
  -webkit-appearance: none;
  padding: 0;
  width: 10px;
  height: 10px;
  border: 0;
  border-radius: 50%;
  background-color: rgb(0, 0, 0);
  opacity: 0.8;
}
.tns-outer .tns-nav button + button {
  margin-left: 12px;
}
.tns-outer .tns-nav button:hover {
  opacity: 1;
}
.tns-outer .tns-nav button.tns-nav-active {
  opacity: 1;
  background-color: rgb(114, 34, 61);
}

.tns-custom-nav .tns-nav-item {
  opacity: 0.5;
}
.tns-custom-nav .tns-nav-item.tns-nav-active {
  opacity: 1;
}

.slide {
  background-size: cover;
  background-position: left top;
  background-repeat: no-repeat;
}
.slide .top-media {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.slide .top-media img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

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

@font-face {
  font-family: "icomoon";
  src: url(/build/fonts/icomoon.15355417.eot);
  src: url(/build/fonts/icomoon.15355417.eot) format("embedded-opentype"), url(/build/fonts/icomoon.28ed8cf3.ttf) format("truetype"), url(/build/fonts/icomoon.bb503b1d.woff) format("woff"), url(/build/images/icomoon.f99ee4a9.svg) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.icon-walk:before {
  content: "\e939";
}

.icon-hiking:before {
  content: "\e937";
}

.icon-running:before {
  content: "\e938";
}

.icon-camera:before {
  content: "\e936";
}

.icon-quote:before {
  content: "\e935";
}

.icon-voucher:before {
  content: "\e934";
}

.icon-pin:before {
  content: "\e932";
}

.icon-tag:before {
  content: "\e933";
}

.icon-arrow-down:before {
  content: "\e901";
}

.icon-arrow-left:before {
  content: "\e903";
}

.icon-arrow-right:before {
  content: "\e904";
}

.icon-arrow-up:before {
  content: "\e905";
}

.icon-autumn:before,
.icon-category-74:before,
.icon-season-132:before {
  content: "\e906";
}

.icon-bed:before {
  content: "\e907";
}

.icon-bike:before {
  content: "\e90b";
}

.icon-calendar:before {
  content: "\e90c";
}

.icon-chat:before {
  content: "\e90f";
}

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

.icon-clock:before {
  content: "\e915";
}

.icon-discount:before {
  content: "\e916";
}

.icon-facebook:before {
  content: "\e91a";
}

.icon-heart:before {
  content: "\e922";
}

.icon-instagram:before {
  content: "\e923";
}

.icon-mail:before {
  content: "\e924";
}

.icon-mask:before {
  content: "\e925";
}

.icon-mountain:before {
  content: "\e926";
}

.icon-offer:before {
  content: "\e927";
}

.icon-persons:before {
  content: "\e928";
}

.icon-phone:before {
  content: "\e929";
}

.icon-plane:before {
  content: "\e92a";
}

.icon-play-circle:before {
  content: "\e92b";
}

.icon-spring:before,
.icon-category-103:before,
.icon-season-131:before {
  content: "\e92c";
}

.icon-star:before {
  content: "\e92d";
}

.icon-suitcase:before {
  content: "\e92e";
}

.icon-summer:before,
.icon-category-73:before,
.icon-season-59:before {
  content: "\e92f";
}

.icon-tree:before {
  content: "\e930";
}

.icon-winter:before,
.icon-category-75:before,
.icon-season-133:before {
  content: "\e931";
}

.icon-play:before {
  content: "\e91f";
}

.icon-pause:before {
  content: "\e91e";
}

.icon-mute:before {
  content: "\e920";
}

.icon-unmute:before {
  content: "\e921";
}

.icon-info:before {
  content: "\e91d";
}

.icon-alarm-clock:before {
  content: "\e902";
}

.icon-children:before {
  content: "\e908";
}

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

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

.icon-gallery:before {
  content: "\e90d";
}

.icon-heart-o:before {
  content: "\e90e";
}

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

.icon-minus:before {
  content: "\e912";
}

.icon-newsletter:before {
  content: "\e913";
}

.icon-person:before {
  content: "\e914";
}

.icon-plus:before {
  content: "\e917";
}

.icon-size:before {
  content: "\e918";
}

.icon-star-o:before {
  content: "\e919";
}

.icon-youtube:before {
  content: "\e91b";
}

.icon-zoom:before {
  content: "\e91c";
}

.icon-sportalpen:before {
  content: "\e900";
}

/***   BOOTSTRAP EXTENSION   ***/
.gx-6 {
  margin-left: -2rem;
  margin-right: -2rem;
}
.gx-6 > .col, .gx-6 > [class^=col-], .gx-6 > [class*=" col-"] {
  padding-left: 2rem;
  padding-right: 2rem;
}
@media screen and (max-width: 991px) {
  .gx-6 {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
  .gx-6 > .col, .gx-6 > [class^=col-], .gx-6 > [class*=" col-"] {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.gx-7 {
  margin-left: -4rem;
  margin-right: -4rem;
}
.gx-7 > .col, .gx-7 > [class^=col-], .gx-7 > [class*=" col-"] {
  padding-left: 4rem;
  padding-right: 4rem;
}
@media screen and (max-width: 1399px) {
  .gx-7 {
    margin-left: -3rem;
    margin-right: -3rem;
  }
  .gx-7 > .col, .gx-7 > [class^=col-], .gx-7 > [class*=" col-"] {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.mb-6 {
  margin-bottom: 6rem;
}
@media screen and (max-width: 991px) {
  .mb-6 {
    margin-bottom: 4rem;
  }
}

.mb-8 {
  margin-bottom: 8rem;
}
@media screen and (max-width: 1399px) {
  .mb-8 {
    margin-bottom: 4rem;
  }
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-80 {
  margin-bottom: 80px;
}
@media screen and (max-width: 575px) {
  .mb-80 {
    margin-bottom: 40px;
  }
}

.mb-160 {
  margin-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .mb-160 {
    margin-bottom: 120px;
  }
}
@media screen and (max-width: 575px) {
  .mb-160 {
    margin-bottom: 80px;
  }
}

.mb-200 {
  margin-bottom: 200px;
}

.mt-6 {
  margin-top: 6rem;
}
@media screen and (max-width: 575px) {
  .mt-6 {
    margin-top: 4rem;
  }
}

.mt-40 {
  margin-top: 50px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-200 {
  margin-top: 200px;
}

.p-6 {
  padding: 6rem !important;
}

.px-6 {
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}
@media screen and (max-width: 1199px) {
  .px-6 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
}
@media screen and (max-width: 575px) {
  .px-6 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
}

.pt-6 {
  padding-top: 6rem !important;
}

@media screen and (max-width: 575px) {
  .container {
    width: 80%;
    padding-left: 0;
    padding-right: 0;
  }
}

/***   BASIC SETTINGS   ***/
html, body {
  -webkit-overflow-scrolling: touch;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: "Open Sans", sans-serif;
  font-weight: 300;
  font-size: 18px;
  line-height: 1.8;
}
body.editmode {
  font-family: "Open Sans", sans-serif !important;
}
@media screen and (max-width: 991px) {
  body {
    font-size: 16px;
    line-height: 1.6;
  }
}
@media screen and (max-width: 575px) {
  body {
    font-size: 14px;
    line-height: 1.6;
  }
}
body.noscroll, body.active-info-dialog {
  overflow: hidden;
}

figure {
  width: 100%;
  margin-bottom: 0;
}

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

body:not(.editmode) figure[class^=img-],
body:not(.editmode) figure[class*=" img-"] {
  position: relative;
  width: 100%;
}
body:not(.editmode) figure[class^=img-]::after,
body:not(.editmode) figure[class*=" img-"]::after {
  content: "";
  display: block;
  height: 0;
  width: 100%;
}
body:not(.editmode) figure[class^=img-].img-square,
body:not(.editmode) figure[class*=" img-"].img-square {
  /* 1:1 */
  padding-bottom: 100%;
}
body:not(.editmode) figure[class^=img-].img-univisium,
body:not(.editmode) figure[class*=" img-"].img-univisium {
  /* 2:1 */
  padding-bottom: 50%;
}
@media screen and (max-width: 1199px) {
  body:not(.editmode) figure[class^=img-].img-univisium,
body:not(.editmode) figure[class*=" img-"].img-univisium {
    padding-bottom: 75%;
  }
}
body:not(.editmode) figure[class^=img-].img-univisiumgallery,
body:not(.editmode) figure[class*=" img-"].img-univisiumgallery {
  /* 2:1.259375 */
  padding-bottom: 62.96875%;
}
@media screen and (max-width: 1399px) {
  body:not(.editmode) figure[class^=img-].img-univisiumgallery,
body:not(.editmode) figure[class*=" img-"].img-univisiumgallery {
    padding-bottom: 64.402173913%;
  }
}
@media screen and (max-width: 1199px) {
  body:not(.editmode) figure[class^=img-].img-univisiumgallery,
body:not(.editmode) figure[class*=" img-"].img-univisiumgallery {
    padding-bottom: 133.333333%;
  }
}
@media screen and (max-width: 991px) {
  body:not(.editmode) figure[class^=img-].img-univisiumgallery,
body:not(.editmode) figure[class*=" img-"].img-univisiumgallery {
    padding-bottom: 62.96875%;
  }
}
body:not(.editmode) figure[class^=img-].img-landscape,
body:not(.editmode) figure[class*=" img-"].img-landscape {
  /* 4:3 */
  padding-bottom: 75%;
}
body:not(.editmode) figure[class^=img-].img-portrait,
body:not(.editmode) figure[class*=" img-"].img-portrait {
  /* 3:4 */
  padding-bottom: 133.333333%;
}
body:not(.editmode) figure[class^=img-].img-cinema,
body:not(.editmode) figure[class*=" img-"].img-cinema {
  /* 2.35:1 */
  padding-bottom: 42.55319%;
}
@media screen and (max-width: 991px) {
  body:not(.editmode) figure[class^=img-].img-cinema,
body:not(.editmode) figure[class*=" img-"].img-cinema {
    padding-bottom: 62.96875%;
  }
}
body:not(.editmode) figure[class^=img-]:not(.img-auto) > *:not(.copyright):not(figcaption),
body:not(.editmode) figure[class*=" img-"]:not(.img-auto) > *:not(.copyright):not(figcaption) {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100% !important;
  display: block;
}
body:not(.editmode) figure[class^=img-] .img-fluid,
body:not(.editmode) figure[class*=" img-"] .img-fluid {
  height: 100%;
  object-fit: cover;
}
body:not(.editmode) figure[class^=img-] figcaption,
body:not(.editmode) figure[class*=" img-"] figcaption {
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(114, 34, 61, 0.5);
  color: rgb(255, 255, 255);
}
body:not(.editmode) figure[class^=img-] figcaption [class^=icon-], body:not(.editmode) figure[class^=img-] figcaption [class*=" icon-"],
body:not(.editmode) figure[class*=" img-"] figcaption [class^=icon-],
body:not(.editmode) figure[class*=" img-"] figcaption [class*=" icon-"] {
  font-size: 1.5rem;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}

.btn:not(.dropdown-toggle) {
  outline: none !important;
  box-shadow: none !important;
  background-color: transparent;
  padding: 1.25rem 1.75rem;
  border-radius: 5px;
  line-height: 1;
  border: 1px solid #CCCED0;
  color: #2E3C45;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .btn:not(.dropdown-toggle) {
    font-size: 14px;
    padding: 1rem 1.5rem;
  }
}
.btn:not(.dropdown-toggle).btn-sm, .btn-group-sm > .btn:not(.dropdown-toggle) {
  font-size: 15px;
  padding: 0.75rem 1.25rem;
}
.package .btn:not(.dropdown-toggle).btn-sm, .package .btn-group-sm > .btn:not(.dropdown-toggle) {
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .btn:not(.dropdown-toggle).btn-sm, .btn-group-sm > .btn:not(.dropdown-toggle) {
    font-size: 12px;
    padding: 0.5rem 1.25rem;
  }
}
.btn:not(.dropdown-toggle).btn-lg, .btn-group-lg > .btn:not(.dropdown-toggle) {
  font-size: 20px;
  padding: 1.25rem 2rem;
}
@media screen and (max-width: 767px) {
  .btn:not(.dropdown-toggle).btn-lg, .btn-group-lg > .btn:not(.dropdown-toggle) {
    padding: 1.25rem 1.75rem;
    font-size: 16px;
  }
}
.btn:not(.dropdown-toggle):hover, .btn:not(.dropdown-toggle).active {
  text-decoration: none;
  border-color: #72223D;
  color: #72223D;
}
.btn:not(.dropdown-toggle).active {
  background-color: #72223D;
  color: rgb(255, 255, 255);
}
.btn:not(.dropdown-toggle).btn-red {
  background-color: #72223D;
  color: rgb(255, 255, 255);
  border-color: #72223D;
}
.btn:not(.dropdown-toggle).btn-red:hover, .btn:not(.dropdown-toggle).btn-red.active {
  border-color: #2E3C45;
  background-color: #2E3C45;
}
.btn:not(.dropdown-toggle).btn-back {
  padding-right: 1.5rem;
  padding-left: 1.25rem;
}
.btn:not(.dropdown-toggle).btn-back::after {
  display: none;
}
.btn:not(.dropdown-toggle).btn-back::before {
  right: 0;
  margin-right: 0.75rem;
  content: "\e904";
}
.btn:not(.dropdown-toggle).btn-back:hover::before, .btn:not(.dropdown-toggle).btn-back.active::before {
  right: 3px;
}
.btn:not(.dropdown-toggle)[disabled] {
  cursor: not-allowed;
}
.btn:not(.dropdown-toggle)[disabled]:hover {
  background-color: #2E3C45;
  color: rgb(255, 255, 255);
}
.btn:not(.dropdown-toggle)[disabled]:hover::after {
  left: 0;
}
.btn:not(.dropdown-toggle).has-icon {
  position: relative;
  padding-left: 3.25rem;
}
.btn:not(.dropdown-toggle).has-icon [class^=icon-], .btn:not(.dropdown-toggle).has-icon [class*=" icon-"] {
  position: absolute;
  top: 50%;
  left: 1.5rem;
  transform: translateY(-50%);
  font-size: 1rem;
}
.btn:not(.dropdown-toggle).has-icon.btn-sm, .btn-group-sm > .btn:not(.dropdown-toggle).has-icon {
  padding-left: 2.25rem;
}
.btn:not(.dropdown-toggle).has-icon.btn-sm [class^=icon-], .btn-group-sm > .btn:not(.dropdown-toggle).has-icon [class^=icon-], .btn:not(.dropdown-toggle).has-icon.btn-sm [class*=" icon-"], .btn-group-sm > .btn:not(.dropdown-toggle).has-icon [class*=" icon-"] {
  left: 0.75rem;
}

.btn-text {
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.4s ease 0s;
}
.btn-text::after {
  transition: all 0.4s ease 0s;
  position: relative;
  font-size: 70%;
  content: "\e904";
  left: 0;
  margin-left: 0.5rem;
}
.btn-text:hover, .btn-text.active {
  color: #2E3C45 !important;
}
.btn-text:hover::after, .btn-text.active::after {
  left: 5px;
}

@media screen and (min-width: 768px) {
  .two-column {
    -webkit-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 4rem;
    column-gap: 4rem;
  }

  .multi-column {
    -webkit-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 4rem;
    column-gap: 4rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1399px) {
  .multi-column {
    -webkit-column-count: 2;
    column-count: 2;
  }
}
.video-background-controls {
  display: flex;
}
.video-background-controls button {
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  line-height: 1;
  background: none;
  -webkit-appearance: none;
  color: rgb(255, 255, 255);
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.4s ease 0s;
  border: 1px solid rgb(255, 255, 255);
}
.video-background-controls button:hover {
  opacity: 1;
}
.video-background-controls button + button {
  margin-left: 0.5rem;
}
.video-background-controls button i {
  display: none !important;
}
.video-background-controls button.play-toggle::before {
  content: "\e91e";
}
.video-background-controls button.play-toggle.paused::before {
  content: "\e91f";
}
.video-background-controls button.mute-toggle::before {
  content: "\e921";
}
.video-background-controls button.mute-toggle.muted::before {
  content: "\e920";
}

#page {
  position: relative;
  width: 100%;
  overflow: hidden;
}
body.top-invisible #page {
  padding-top: var(--header-height);
}

#header {
  position: fixed;
  top: 0;
  width: 100%;
  height: var(--header-height);
  background-color: transparent;
  z-index: 200;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  padding-left: 6rem;
  padding-right: 6rem;
  transition: background-color 0.4s ease 0s;
  /*.watchlist {
    position: relative;
    font-size: 2rem;
    color: $white;
    text-decoration: none;
    @include transition-effect(color);


    .items-count {
      position: absolute;
      top: 50%;
      margin-top: -.75rem;
      right: -.5rem;
      display: block;
      width: 1.5rem;
      height: 1.5rem;
      border-radius: 50%;
      background-color: $grey;
      text-align: center;
      font-size: .75rem;
      line-height: 1.5rem;
      @include transition-effect(background-color);
    }

    &:hover {
      color: $grey;

      .items-count {
        background-color: $white;
      }
    }
  }*/
}
@media screen and (max-width: 1199px) {
  #header {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 575px) {
  #header {
    padding-left: 10%;
    padding-right: 10%;
  }
}
#header > .container-fluid, #header > .container-sm, #header > .container-md, #header > .container-lg, #header > .container-xl, #header > .container-xxl {
  z-index: 2;
}
#header > .container-fluid, #header > .container-sm, #header > .container-md, #header > .container-lg, #header > .container-xl, #header > .container-xxl, #header > .container-fluid > .row, #header > .container-sm > .row, #header > .container-md > .row, #header > .container-lg > .row, #header > .container-xl > .row, #header > .container-xxl > .row {
  height: 100%;
}
#header .desktop-cta-buttons a {
  z-index: 999;
  font-weight: 300;
  text-decoration: none !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
  color: rgb(255, 255, 255);
}
#header .desktop-cta-buttons a [class^=icon-], #header .desktop-cta-buttons a [class*=" icon-"] {
  font-size: 18px;
}
body.masked #header .desktop-cta-buttons .enquiry-link {
  color: #2E3C45;
}
#header .desktop-cta-buttons .calculator {
  font-weight: 600;
}
body.masked #header .desktop-cta-buttons .calculator {
  color: #72223D;
}
#header.compressed, body.top-invisible #header {
  background-color: rgb(255, 255, 255);
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.06);
}
#header.compressed .desktop-cta-buttons .enquiry-link, body.top-invisible #header .desktop-cta-buttons .enquiry-link {
  color: #2E3C45;
}
#header.compressed .desktop-cta-buttons .calculator, body.top-invisible #header .desktop-cta-buttons .calculator {
  color: #72223D;
}
#header.nav-up {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-animation: 250ms ease-in-out 0s 1 normal forwards running moveUp;
  animation: 250ms ease-in-out 0s 1 normal forwards running moveUp;
}
#header.nav-down {
  -webkit-animation: 250ms ease-in-out 0s 1 normal forwards running moveDown;
  animation: 250ms ease-in-out 0s 1 normal forwards running moveDown;
}
#header.nav-down.initial-load {
  -webkit-animation-duration: 0ms;
  animation-duration: 0ms;
}
#header.nav-down:not(.initial-load) {
  -webkit-transform: translateY(-200px);
  transform: translateY(-200px);
}

#logo img {
  height: 46px;
  width: auto;
  transition: opacity 0.4s ease 0s;
}
@media screen and (max-width: 575px) {
  #logo img {
    height: 36px;
  }
}
#logo img.logo-white {
  opacity: 1;
}
#header.compressed #logo img.logo-white, body.top-invisible #logo img.logo-white, body.masked #logo img.logo-white {
  opacity: 0;
}
#logo img.logo {
  top: 0;
  left: 0;
  opacity: 0;
}
#header.compressed #logo img.logo, body.top-invisible #logo img.logo, body.masked #logo img.logo {
  opacity: 1;
}

/***   ON SCROLL ANIMATION   ***/
@-webkit-keyframes moveUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-200px);
    transform: translateY(-200px);
  }
}
@keyframes moveUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-200px);
    transform: translateY(-200px);
  }
}
@-webkit-keyframes moveDown {
  0% {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes moveDown {
  0% {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@media screen and (max-width: 576px) {
  #top-image .top-media {
    aspect-ratio: 576/432;
    position: relative;
  }
  #top-image .top-media img.img-fluid {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    inset: 0;
  }
}

#footer .container > div {
  border: 1px solid #CCCED0;
  border-radius: 5px;
}
#footer #footer-logo {
  width: 235px;
  max-width: 100%;
}
#footer .address-contact {
  margin-left: 52px;
}
@media screen and (max-width: 1399px) and (min-width: 1200px), screen and (max-width: 767px) {
  #footer .address-contact {
    margin-left: 0;
  }
}
#footer .phone, #footer .email {
  color: rgb(0, 0, 0);
  text-decoration: none;
}
#footer .stay-in-touch {
  padding-left: 35px;
  line-height: 1.1;
}
#footer .stay-in-touch:first-letter {
  margin-left: -35px;
}
#footer .arrival-map {
  width: 575px;
}
@media screen and (max-width: 1599px) {
  #footer .arrival-map {
    width: 425px;
  }
}
@media screen and (max-width: 1199px) {
  #footer .arrival-map {
    margin-bottom: -120px;
  }
}
@media screen and (max-width: 767px) {
  #footer .arrival-map {
    width: 100%;
  }
}
@media screen and (max-width: 575px) {
  #footer .arrival-map {
    margin-bottom: -100px;
  }
}
@media screen and (max-width: 424px) {
  #footer .arrival-map {
    margin-bottom: -80px;
  }
}

#sportalpen {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  font-size: 2rem;
}
#sportalpen > a {
  color: rgb(255, 255, 255);
  text-decoration: none !important;
  font-size: 30px;
  transition: all 0.4s ease 0s;
}
#sportalpen > a:hover {
  color: #cf0034;
}

#back-to-top {
  top: 50%;
  left: 3rem;
  transform: rotate(-90deg) translate(-50%, -50%);
  transform-origin: left;
  opacity: 0;
  z-index: 200;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none !important;
  color: #2E3C45;
  transition: all 0.4s ease 0s;
}
@media screen and (max-width: 1199px) {
  #back-to-top {
    left: 1.75rem;
  }
}
@media screen and (max-width: 575px) {
  #back-to-top {
    left: 6.5%;
    font-size: 12px;
  }
}
#back-to-top .bar {
  width: 70px;
  height: 1px;
  background-color: rgba(46, 60, 69, 0.25);
  transition: background-color 0.4s ease 0s;
}
#back-to-top .progress {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  height: 4px;
  width: 0%;
  background-color: #2E3C45;
  transition: background-color 0.4s ease 0s;
}
#back-to-top.visible {
  opacity: 1;
}
#back-to-top.visible:hover {
  color: #72223D;
}
#back-to-top.visible:hover .bar, #back-to-top.visible:hover .progress {
  background-color: #72223D;
}

#mobile-cta-buttons {
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgb(255, 255, 255);
  box-shadow: 0 -30px 30px rgba(0, 0, 0, 0.06);
  z-index: 999;
}
#mobile-cta-buttons a {
  color: #72223D;
  text-decoration: none !important;
}
#mobile-cta-buttons a [class^=icon-], #mobile-cta-buttons a [class*=" icon-"] {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #mobile-cta-buttons a [class^=icon-], #mobile-cta-buttons a [class*=" icon-"] {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  #mobile-cta-buttons a [class^=icon-], #mobile-cta-buttons a [class*=" icon-"] {
    font-size: 20px;
  }
}
#mobile-cta-buttons a.mail {
  background-color: #2E3C45;
  color: rgb(255, 255, 255);
}
#mobile-cta-buttons a.calculator {
  background-color: #72223D;
  color: rgb(255, 255, 255);
}

/***  OPEN/CLOSE MAIN DESKTOP/MOBILE NAVIGATION   ***/
.menu-btn {
  width: 80px;
  height: 80px;
  cursor: pointer;
  z-index: 99;
  transition: top 250ms ease 0s;
  border: 1px solid rgb(255, 255, 255);
  border-radius: 50%;
  padding: 15px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 1199px) {
  .menu-btn {
    width: 64px;
    height: 64px;
    padding: 10px;
  }
}
@media screen and (max-width: 575px) {
  .menu-btn {
    width: 44px;
    height: 44px;
    padding: 5px;
  }
}
#header.compressed .menu-btn, body.top-invisible .menu-btn, body.masked .menu-btn {
  border-color: #CCCED0;
}
.menu-btn input:checked + label .menu-icon {
  background: transparent !important;
}
.menu-btn input:checked + label .menu-icon::before, .menu-btn input:checked + label .menu-icon::after {
  background: #2E3C45;
  top: 0;
  width: 100%;
  -webkit-transition: top ease 250ms, transform ease 250ms 250ms;
  transition: top ease 250ms, transform ease 250ms 250ms;
}
.menu-btn input:checked + label .menu-icon::before {
  transform: rotate(45deg);
  left: 0;
}
.menu-btn input:checked + label .menu-icon::after {
  transform: rotate(-45deg);
  right: 0;
}
.menu-btn label {
  width: 100%;
  height: 100%;
  cursor: pointer;
  padding: 5px;
}
.menu-btn label .menu-icon, .menu-btn label .menu-icon::before, .menu-btn label .menu-icon::after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  background: rgb(255, 255, 255);
  border-radius: 1px;
  width: 100%;
}
#header.compressed .menu-btn label .menu-icon, body.top-invisible .menu-btn label .menu-icon, body.masked .menu-btn label .menu-icon, #header.compressed .menu-btn label .menu-icon::before, body.top-invisible .menu-btn label .menu-icon::before, body.masked .menu-btn label .menu-icon::before, #header.compressed .menu-btn label .menu-icon::after, body.top-invisible .menu-btn label .menu-icon::after, body.masked .menu-btn label .menu-icon::after {
  background: #CCCED0;
}
.menu-btn label .menu-icon {
  left: 0;
  top: 50%;
}
.menu-btn label .menu-icon::before {
  top: -11px;
  left: 0;
}
.menu-btn label .menu-icon::after {
  top: 10px;
  right: 0;
}

/***   BODY MASK   ***/
@media screen and (min-width: 1199px) {
  body.masked::before {
    content: "";
    position: absolute;
    z-index: 199;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.8);
  }
}
/***   MAIN DESKTOP NAVIGATION ***/
#main-navigation-wrapper {
  height: 100vh;
  top: 0;
  right: -100%;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  overflow: visible;
  transition: all 0.4s ease 0s;
}
#main-navigation-wrapper.open {
  visibility: visible;
  opacity: 1;
  right: 0;
}
#main-navigation-wrapper > .container-fluid, #main-navigation-wrapper > .container-sm, #main-navigation-wrapper > .container-md, #main-navigation-wrapper > .container-lg, #main-navigation-wrapper > .container-xl, #main-navigation-wrapper > .container-xxl,
#main-navigation-wrapper > .container-fluid > .row,
#main-navigation-wrapper > .container-sm > .row,
#main-navigation-wrapper > .container-md > .row,
#main-navigation-wrapper > .container-lg > .row,
#main-navigation-wrapper > .container-xl > .row,
#main-navigation-wrapper > .container-xxl > .row {
  height: 100%;
}
#main-navigation-wrapper #main-navigation {
  overflow: visible;
  background-color: rgb(255, 255, 255);
  height: 100%;
  padding-top: var(--header-height);
}
#main-navigation-wrapper #main-navigation .navigation {
  line-height: 1;
}
#main-navigation-wrapper #main-navigation .navigation li + li {
  margin-top: 2.5rem;
}
#main-navigation-wrapper #main-navigation .navigation li a {
  display: block;
  position: relative;
  color: #72223D;
  text-decoration: none !important;
  transition: all 0.4s ease 0s;
  font-size: 16px;
}
#main-navigation-wrapper #main-navigation .navigation li a strong {
  font-family: "Fjalla One", sans-serif;
  font-size: 28px;
  font-weight: 400;
  color: #2E3C45;
  text-transform: uppercase;
}
#main-navigation-wrapper #main-navigation .navigation li a::after {
  position: absolute;
  content: "\e904";
  right: 24px;
  top: 0;
  pointer-events: none;
  font-size: 18px;
  color: rgb(114, 34, 61);
  line-height: 28px;
}
#main-navigation-wrapper #main-navigation .navigation li.active a strong {
  color: #72223D;
}
#main-navigation-wrapper #main-navigation .navigation li.active a::after {
  display: none;
}
#main-navigation-wrapper #main-navigation .navigation > li {
  display: block;
  position: relative;
}
#main-navigation-wrapper #main-navigation .navigation > li::after {
  display: block;
  content: "";
  position: absolute;
  top: 14px;
  left: 230px;
  right: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: rgb(114, 34, 61);
  z-index: 99;
  transition: all 0.4s ease 0s;
}
#main-navigation-wrapper #main-navigation .navigation > li.active::after {
  right: -9rem;
}
#main-navigation-wrapper #main-navigation .navigation > li.active > a {
  opacity: 1;
  display: block;
}
#main-navigation-wrapper #main-navigation .btn.has-icon [class^=icon-], #main-navigation-wrapper #main-navigation .btn.has-icon [class*=" icon-"] {
  font-size: 1.25rem;
}
@media screen and (max-width: 1399px) {
  #main-navigation-wrapper #main-navigation .btn.has-icon {
    padding-left: 0;
    padding-right: 0;
  }
  #main-navigation-wrapper #main-navigation .btn.has-icon [class^=icon-], #main-navigation-wrapper #main-navigation .btn.has-icon [class*=" icon-"] {
    position: static;
  }
}
#main-navigation-wrapper .sub-navigation-wrapper {
  display: none;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.9);
  padding-top: var(--header-height);
}
#main-navigation-wrapper .sub-navigation-wrapper.active {
  display: block;
  opacity: 1;
}
#main-navigation-wrapper .sub-navigation-wrapper .sub-navigation {
  line-height: 1;
}
#main-navigation-wrapper .sub-navigation-wrapper .sub-navigation > li a {
  text-decoration: none !important;
  font-family: "Fjalla One", sans-serif;
  font-size: 21px;
  font-weight: 400;
  color: #2E3C45;
}
#main-navigation-wrapper .sub-navigation-wrapper .sub-navigation > li:hover > a, #main-navigation-wrapper .sub-navigation-wrapper .sub-navigation > li.active > a {
  color: #72223D;
}
/***   MAIN MOBILE NAVIGATION   ***/
@media screen and (max-width: 991px) {
  #mobile-navigation {
    position: fixed;
    z-index: 99;
    top: 0;
    bottom: 0;
    left: -100%;
    width: 100%;
    transition: all 0.4s;
    overflow-y: scroll;
    overflow-x: hidden;
    background: rgb(255, 255, 255);
  }
  #mobile-navigation .container {
    overflow: hidden;
    min-height: 100%;
  }
  #mobile-navigation.open {
    left: 0;
  }
  #mobile-navigation ul {
    margin: 0;
    padding-top: var(--header-height);
    width: 100%;
  }
  #mobile-navigation ul.inactive {
    z-index: 1;
    background: rgb(255, 255, 255);
  }
  #mobile-navigation ul.inactive > li > a {
    opacity: 0;
  }
  #mobile-navigation ul li > a span.title {
    font-family: "Fjalla One", sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: rgb(0, 0, 0);
    text-transform: uppercase;
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation ul li > a span.title {
    font-size: 16px;
    line-height: 1;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation ul li > a span.name {
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    font-weight: 300;
    color: rgb(114, 34, 61);
    line-height: 0.8;
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation ul li > a span.name {
    line-height: 0.5;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation ul li.menu-start-item > a {
    float: left;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation ul li.has-children > a {
    position: relative;
  }
  #mobile-navigation ul li.has-children > a [class^=icon-], #mobile-navigation ul li.has-children > a [class*=" icon-"] {
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation ul li a {
    display: block;
    padding: 0.5rem 0;
    text-decoration: none !important;
    opacity: 1;
    color: #2E3C45;
    -webkit-transition: none;
    transition: none;
    font-weight: 400;
  }
  #mobile-navigation ul li a.active {
    color: rgb(114, 34, 61);
  }
  #mobile-navigation ul li a:hover {
    color: rgb(114, 34, 61);
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation ul {
    min-height: 100%;
    line-height: 1.4;
  }
}
@media screen and (max-width: 991px) and (max-height: 490px) {
  #mobile-navigation ul {
    line-height: 1;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation .mobile-lang-navigation {
    margin-top: 20px;
    margin-bottom: 25px;
  }
  #mobile-navigation .mobile-lang-navigation ul {
    padding-top: 10px;
  }
  #mobile-navigation .mobile-lang-navigation ul li a {
    font-size: 16px;
    margin-left: 4px;
  }
  #mobile-navigation .mobile-lang-navigation ul li a:after {
    content: "|";
    line-height: 1;
    margin-left: 4px;
  }
  #mobile-navigation .mobile-lang-navigation ul li.active a {
    font-weight: bold;
  }
  #mobile-navigation .mobile-lang-navigation ul li:last-of-type a:after {
    content: "";
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation .mobile-lang-navigation ul {
    padding-top: 0;
  }
}
@media screen and (max-width: 991px) and (max-width: 575px) {
  #mobile-navigation .mobile-lang-navigation {
    margin-top: 0;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation .mobile-lang-navigation {
    line-height: 1.1;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation .mobile-nav-buttons {
    margin-top: 20px;
  }
  #mobile-navigation .mobile-nav-buttons a.btn {
    width: 31% !important;
  }
}
@media screen and (max-width: 991px) and (max-height: 680px) {
  #mobile-navigation .mobile-nav-buttons {
    margin-top: 10px;
  }
  #mobile-navigation .mobile-nav-buttons a.btn {
    padding: 10px;
  }
}
@media screen and (max-width: 991px) and (max-height: 600px) {
  #mobile-navigation .mobile-nav-buttons {
    margin-top: 10px;
  }
  #mobile-navigation .mobile-nav-buttons a.btn {
    padding: 10px;
  }
}
@media screen and (max-width: 991px) and (max-height: 490px) {
  #mobile-navigation .mobile-nav-buttons {
    margin-top: 3px;
  }
}
@media screen and (max-width: 991px) {
  #mobile-navigation .sub-navigation {
    top: 0;
    left: -100%;
    transition: all 0.4s;
    background: rgb(255, 255, 255);
  }
  #mobile-navigation .sub-navigation.active {
    left: 0;
    z-index: 2;
  }
  #mobile-navigation .sub-navigation .menu-start-item {
    text-decoration: none !important;
    text-transform: uppercase;
    font-family: "Fjalla One", sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: rgb(114, 34, 61) !important;
    margin-bottom: 20px;
  }
  #mobile-navigation .sub-navigation .menu-start-item li a {
    text-decoration: none !important;
    font-family: "Open Sans", sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: rgb(0, 0, 0);
  }
  #mobile-navigation .sub-navigation .menu-start-item li a:hover {
    color: rgb(114, 34, 61);
  }
}
@media screen and (min-width: 767px) {
  .mobile-nav-buttons {
    margin-top: 50px;
    margin-right: 30%;
  }
}
/***   BREADCRUMBS   ***/
.breadcrumb {
  padding: 0;
  line-height: 1;
  list-style: none;
  font-size: 14px;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  content: "\e904";
  color: #72223D;
  font-size: 10px;
  line-height: 14px;
}
.breadcrumb .breadcrumb-item a {
  font-family: "Open Sans", sans-serif;
  color: #2E3C45 !important;
  text-decoration: none !important;
  font-weight: 300;
  transition: color 0.4s ease 0s;
}
.breadcrumb .breadcrumb-item.active a {
  font-weight: 600;
  color: #2E3C45;
}
@media screen and (max-width: 575px) {
  .breadcrumb .breadcrumb-item a::before {
    content: "\e903";
    margin-right: 5px;
    font-size: 65%;
    vertical-align: 1px;
  }
}

/***   LANGUAGE NAVIGATION   ***/
#language-navigation ul {
  line-height: 1;
}
#language-navigation ul li + li {
  border-left: 1px solid #2E3C45;
  padding-left: 0.5rem;
  margin-left: 0.5rem;
}
#language-navigation ul li:not(.active):hover a {
  color: #72223D;
}
#language-navigation ul li.active {
  font-weight: 700;
}
#language-navigation ul li a {
  transition: color 0.4s ease 0s;
  color: #2E3C45;
  text-decoration: none;
}

/***   FOOTER NAVIGATION   ***/
#footer-navigation {
  font-family: "Fjalla One", sans-serif;
  font-size: 24px;
}
#footer-navigation li a {
  color: #2E3C45;
  text-decoration: none !important;
  transition: color 0.4s ease 0s;
}
#footer-navigation li a:hover {
  color: #72223D;
}

/***   FOOTER LEGAL NAVIGATION   ***/
#footer-legal-navigation {
  margin-left: 52px;
  font-size: 14px;
}
@media screen and (max-width: 1399px) and (min-width: 1200px), screen and (max-width: 991px) {
  #footer-legal-navigation {
    margin-left: 0;
  }
}
#footer-legal-navigation li a {
  color: #2E3C45;
  text-decoration: none !important;
  transition: color 0.4s ease 0s;
}
#footer-legal-navigation li a:hover {
  color: #72223D;
}

/***   SOCIAL NAVIGATION   ***/
#social-navigation a,
#footer-social-navigation a {
  text-decoration: none !important;
  color: rgb(255, 255, 255);
  line-height: 1;
  transition: color 0.4s ease 0s;
}
#header.compressed #social-navigation a, body.top-invisible #social-navigation a, body.masked #social-navigation a, #footer #social-navigation a,
#header.compressed #footer-social-navigation a,
body.top-invisible #footer-social-navigation a,
body.masked #footer-social-navigation a,
#footer #footer-social-navigation a {
  color: #72223D;
}
#social-navigation a [class^=icon-], #social-navigation a [class*=" icon-"],
#footer-social-navigation a [class^=icon-],
#footer-social-navigation a [class*=" icon-"] {
  font-size: 24px;
}
#social-navigation a .social-tooltip,
#footer-social-navigation a .social-tooltip {
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 14px;
  font-weight: 600;
  opacity: 0;
  transition: opacity 0.4s ease 0s;
}
#social-navigation a:hover .social-tooltip,
#footer-social-navigation a:hover .social-tooltip {
  opacity: 1;
}

#footer-social-navigation a [class^=icon-], #footer-social-navigation a [class*=" icon-"] {
  font-size: 38px;
}
@media screen and (max-width: 575px) {
  #footer-social-navigation a [class^=icon-], #footer-social-navigation a [class*=" icon-"] {
    font-size: 30px;
  }
}

#top {
  overflow: hidden;
}
body:not(.editmode) #top {
  background-color: #f8f9fa;
}
body:not(.editmode) #top .top-caption {
  opacity: 0;
  visibility: hidden;
}
#top .top-container {
  width: 100%;
  height: 100%;
  padding: 6rem;
  top: 0;
  left: 0;
}
#top .top-caption {
  background-color: transparent;
  width: 45%;
  max-width: 100%;
}
body:not(.editmode) #top .top-caption {
  padding-left: 65px;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 575px) {
  body:not(.editmode) #top .top-caption {
    padding-left: 15px;
  }
}
@media screen and (max-width: 1599px) {
  #top .top-caption {
    width: 55%;
  }
}
@media screen and (max-width: 1199px) {
  #top .top-caption {
    width: 65%;
  }
}
#top .top-caption .h6 {
  border-bottom: 2px solid rgba(255, 255, 255, 0.25);
}
body:not(.editmode) #top .top-caption .h6:first-letter {
  margin-left: -65px;
}
@media screen and (max-width: 575px) {
  body:not(.editmode) #top .top-caption .h6:first-letter {
    margin-left: -15px;
  }
}
#top .top-caption .content {
  font-size: 30px;
  line-height: 1;
  color: inherit;
}
@media screen and (max-width: 1599px) {
  #top .top-caption .content {
    font-size: 24px;
  }
}
@media screen and (max-width: 1399px) {
  #top .top-caption .content {
    font-size: 22px;
  }
}
@media screen and (max-width: 1199px) {
  #top .top-caption .content {
    font-size: 20px;
  }
}
@media screen and (max-width: 991px) {
  #top .top-caption .content {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  #top .top-caption .content {
    font-size: 16px;
  }
}
#top .tns-outer .tns-nav {
  top: auto;
  bottom: 0;
  justify-content: end;
  padding: 0 3rem 3rem 0;
}

#top-image .top-caption, #top-video .top-caption {
  transition: opacity 1s ease 1s;
}
#top-image.images-loaded .top-caption, #top-image.video-loaded .top-caption, #top-video.images-loaded .top-caption, #top-video.video-loaded .top-caption {
  opacity: 1 !important;
  visibility: visible !important;
}

#top-image figure {
  opacity: 0;
  transition: opacity 1s ease 0.5s;
}
#top-image figure::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: transparent;
  background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.3) 100%);
}
#top-image figure .img-fluid {
  max-width: none;
  width: 100%;
}
#top-image.images-loaded figure {
  opacity: 1;
}

body:not(.editmode) #top-video {
  padding-bottom: 42.55319%;
  /* cinema ratio - 2.35:1 */
}
#top-video .top-video-player {
  width: 100%;
  height: 100%;
}

body:not(.editmode) #top-slider .slide {
  height: calc(100vh - var(--header-height));
}
#top-slider .slide .top-media img {
  height: 110%;
  width: 110%;
  object-fit: cover;
  transition: all 6s ease-in-out 0s;
}
#top-slider .slide .top-caption {
  transition: all 1s ease-in-out 0.5s;
}
#top-slider .slide.tns-slide-active .top-caption {
  opacity: 1 !important;
  visibility: visible !important;
}
#top-slider .slide.tns-slide-active .top-media img {
  width: 100%;
  height: 100%;
}

#top-split {
  background-color: rgb(0, 0, 0);
}
#top-split .split-item .split-caption {
  color: rgb(255, 255, 255);
  padding-left: 35px;
}
@media screen and (max-width: 575px) {
  #top-split .split-item .split-caption {
    padding-left: 20px;
  }
}
#top-split .split-item .split-caption .headline {
  font-size: 75px;
  transition: transform 0.4s ease-in-out 0s;
  transform-origin: 0 100%;
}
#top-split .split-item .split-caption .headline:first-letter {
  margin-left: -35px;
}
@media screen and (max-width: 1599px) {
  #top-split .split-item .split-caption .headline {
    font-size: 65px;
  }
}
@media screen and (max-width: 1399px) {
  #top-split .split-item .split-caption .headline {
    font-size: 55px;
  }
}
@media screen and (max-width: 575px) {
  #top-split .split-item .split-caption .headline {
    font-size: 32px;
  }
  #top-split .split-item .split-caption .headline:first-letter {
    margin-left: -20px;
  }
}
@media screen and (max-width: 575px) and (max-height: 630px) {
  #top-split .split-item .split-caption .headline {
    font-size: 26px;
  }
}
#top-split .split-item .split-caption .line {
  width: 100%;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.25);
  transition: background-color 0.4s ease-in-out 0s;
}
#top-split .split-item .split-caption .subline {
  font-size: 20px;
  line-height: 1.25;
}
@media screen and (max-width: 1399px) {
  #top-split .split-item .split-caption .subline {
    font-size: 18px;
  }
}
#top-split .split-item .split-caption .content .btn {
  color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
}
@media screen and (max-height: 630px) {
  #top-split .split-item .split-caption .content .btn {
    padding: 10px !important;
  }
}
body:not(.editmode) #top-split .split-item {
  opacity: 1;
  transition: opacity 0.4s ease-in-out 0s;
}
body:not(.editmode) #top-split .split-item figure {
  height: 100vh;
}
body:not(.editmode) #top-split .split-item figure img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 70px 160px;
  transition: padding 0.4s ease-in-out 0s;
}
@media screen and (max-width: 1599px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper {
    padding: 0 60px 120px;
  }
}
@media screen and (max-width: 1399px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper {
    padding: 0 40px 80px;
  }
}
@media screen and (max-width: 575px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper {
    padding: 0 10% 2rem;
  }
}
@media screen and (max-width: 575px) and (max-height: 645px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper {
    padding: 0 10% 1rem;
  }
}
@media screen and (max-width: 575px) and (max-height: 499px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper {
    padding: 0 10% 0.5rem;
  }
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  content: "";
  background: transparent;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.2));
  opacity: 0.65;
  z-index: 1;
  transition: opacity 0.4s ease-in-out 0s;
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption {
  z-index: 2;
  transition: all 0.4s ease-in-out 0s;
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption .subline {
  transition: opacity 0.2s ease-in-out 0s;
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption .content {
  transition: all 0.4s ease-in-out 0s;
}
@media screen and (min-width: 576px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption .content {
    opacity: 0;
    max-height: 0;
  }
}
@media screen and (max-width: 575px) {
  body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption .content *:not(.btn) {
    display: none;
  }
}
body:not(.editmode) #top-split .split-item .split-caption-wrapper .split-caption .content .btn:hover {
  color: #2E3C45;
  background-color: rgb(255, 255, 255);
}
body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper {
  padding-left: 40px;
  padding-right: 120px;
  background-position: 100% 50%;
}
@media screen and (max-width: 424px) {
  body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper {
    padding-right: 10px;
  }
}
body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .headline {
  transform: scale(1.4);
}
@media screen and (max-width: 424px) {
  body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .headline {
    transform: none;
  }
}
body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .line {
  background-color: white;
}
body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .subline {
  opacity: 0;
}
body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .content {
  opacity: 1;
  max-height: 500px;
}
@media screen and (max-width: 424px) {
  body:not(.editmode) #top-split .split-item:hover .split-caption-wrapper .split-caption .content .btn {
    margin-right: 5px;
  }
}
body:not(.editmode) #top-split .col-12.darkened .split-item .split-caption-wrapper::before {
  opacity: 1;
}
body:not(.editmode) #top-split .col-12.darkened .split-item .split-caption-wrapper .split-caption {
  opacity: 0.45;
}

#go-to-content {
  z-index: 20;
  bottom: 0;
  left: 50%;
  opacity: 0.75;
  font-size: 50px;
  color: rgb(255, 255, 255);
  text-decoration: none;
  transform: translateX(-50%);
  line-height: 1;
  transition: opacity 0.4s ease 0s;
}
#go-to-content:hover {
  opacity: 1;
}

/***   GENERAL SETTINGS ***/
.content > *:last-child {
  margin-bottom: 0 !important;
}
.content .btn + .btn {
  margin-left: 1rem;
}

.copyright {
  position: absolute;
  bottom: 8px;
  left: 10px;
  font-weight: 400;
  font-size: 12px;
  color: rgb(255, 255, 255);
  opacity: 0.8;
  z-index: 2;
}

/***   HEADLINES   ***/
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-top: 0;
  font-weight: 400;
  font-family: "Fjalla One", sans-serif;
  text-transform: uppercase;
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong,
.h1 strong, .h2 strong, .h3 strong, .h4 strong, .h5 strong, .h6 strong {
  font-weight: 400;
  color: #72223D;
}
@media screen and (max-width: 424px) {
  .content-block h1, .content-block h2, .content-block h3, .content-block h4, .content-block h5, .content-block h6,
.content-block .h1, .content-block .h2, .content-block .h3, .content-block .h4, .content-block .h5, .content-block .h6 {
    hyphens: auto;
    -webkit-hyphens: auto;
    overflow-wrap: anywhere;
    word-break: normal;
    padding-inline-end: 0.1em;
  }
}

h1, .h1 {
  font-size: 50px;
}
h1.has-line::before, .h1.has-line::before {
  content: "";
  width: 90%;
  max-width: 300px;
  height: 2px;
  background-color: rgba(46, 60, 69, 0.25);
  display: block;
  margin-bottom: 2rem;
}
@media screen and (max-width: 575px) {
  h1.has-line::before, .h1.has-line::before {
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 1199px) {
  h1, .h1 {
    font-size: 46px;
  }
}
@media screen and (max-width: 991px) {
  h1, .h1 {
    font-size: 44px;
  }
}
@media screen and (max-width: 767px) {
  h1, .h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 575px) {
  h1, .h1 {
    font-size: 28px;
  }
}
@media screen and (max-width: 424px) {
  h1, .h1 {
    font-size: 26px;
  }
}

h2, .h2 {
  font-size: 44px;
}
@media screen and (max-width: 1399px) {
  h2, .h2 {
    font-size: 38px;
  }
}
@media screen and (max-width: 991px) {
  h2, .h2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 575px) {
  h2, .h2 {
    font-size: 24px;
  }
}

h3, .h3 {
  font-size: 30px;
  margin-bottom: 1rem;
}
@media screen and (max-width: 991px) {
  h3, .h3 {
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  h3, .h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  h3, .h3 {
    font-size: 20px;
  }
}

h4, .h4 {
  font-size: 28px;
}
@media screen and (max-width: 1399px) {
  h4, .h4 {
    font-size: 26px;
  }
}
@media screen and (max-width: 991px) {
  h4, .h4 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  h4, .h4 {
    font-size: 22px;
  }
}
@media screen and (max-width: 575px) {
  h4, .h4 {
    font-size: 20px;
  }
}
h4 > span + span::before, .h4 > span + span::before {
  content: "•";
  padding: 0 0.75rem;
}

h5, .h5 {
  font-size: 20px;
}
@media screen and (max-width: 991px) {
  h5, .h5 {
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  h5, .h5 {
    font-size: 16px;
  }
}

h6, .h6 {
  font-size: 90px;
  line-height: 1.1;
}
@media screen and (max-width: 1599px) {
  h6, .h6 {
    font-size: 70px;
  }
}
@media screen and (max-width: 1399px) {
  h6, .h6 {
    font-size: 60px;
  }
}
@media screen and (max-width: 1199px) {
  h6, .h6 {
    font-size: 50px;
  }
}
@media screen and (max-width: 991px) {
  h6, .h6 {
    font-size: 42px;
  }
}
@media screen and (max-width: 767px) {
  h6, .h6 {
    font-size: 32px;
  }
}
@media screen and (max-width: 575px) {
  h6, .h6 {
    font-size: 22px;
    line-height: 1.1;
  }
}

strong {
  font-weight: 600;
}

/***   content block GENERAL SETTINGS   ***/
.content-block a:not(.btn) {
  color: rgb(114, 34, 61);
  text-decoration: underline;
}
.content-block a:not(.btn):hover {
  text-decoration: none;
}
.content-block ul:not(.list-unstyled) {
  padding-left: 0;
  list-style: none;
}
.content-block ul:not(.list-unstyled) li:not(.breadcrumb-item) {
  position: relative;
  padding-left: 30px;
}
.content-block ul:not(.list-unstyled) li:not(.breadcrumb-item)::before {
  content: "\e910";
  color: #72223D;
  position: absolute;
  left: 0;
  line-height: inherit;
}
.content-block ul:not(.list-unstyled) li[style*="text-align:center"], .content-block ul:not(.list-unstyled) li[style*="text-align: center"], .content-block ul:not(.list-unstyled) .text-center li {
  position: static;
  padding-left: 0;
}
.content-block ul:not(.list-unstyled) li[style*="text-align:center"]::before, .content-block ul:not(.list-unstyled) li[style*="text-align: center"]::before, .content-block ul:not(.list-unstyled) .text-center li::before {
  position: relative;
  padding-right: 8px;
}
.content-block ul:not(.list-unstyled).list-highlighted li + li {
  margin-top: 1rem;
}
.content-block p, .content-block ul, .content-block ol {
  margin-bottom: 1.5rem;
}
.content-block p + h3, .content-block p + .h3, .content-block p + blockquote, .content-block ul + h3, .content-block ul + .h3, .content-block ul + blockquote, .content-block ol + h3, .content-block ol + .h3, .content-block ol + blockquote {
  margin-top: 3rem;
}
@media screen and (max-width: 575px) {
  .content-block p, .content-block ul, .content-block ol {
    margin-bottom: 1.25rem;
  }
}
.content-block blockquote {
  font-family: "Fjalla One", sans-serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.2;
  position: relative;
}
@media screen and (max-width: 1399px) {
  .content-block blockquote {
    font-size: 32px;
  }
}
@media screen and (max-width: 1199px) {
  .content-block blockquote {
    font-size: 28px;
  }
}
@media screen and (max-width: 575px) {
  .content-block blockquote {
    font-size: 26px;
  }
}
@media screen and (max-width: 424px) {
  .content-block blockquote {
    font-size: 22px;
  }
}
.content-block blockquote::before {
  content: "\e935";
  color: #e8edf0;
  font-size: 200%;
  position: absolute;
  transform: translate(-75%, -25%);
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .content-block blockquote::before {
    transform: translate(-50%, -25%);
  }
}
.content-block blockquote + p {
  margin-top: 3rem;
}
.content-block blockquote strong {
  font-weight: 400;
  color: #72223D;
}
.content-block blockquote a {
  text-decoration: none !important;
  color: #2E3C45 !important;
  transition: color 0.4s ease 0s;
}
.content-block blockquote a:hover {
  color: #72223D;
}

.img-hover, .video-hover {
  overflow: hidden;
}
.img-hover img, .video-hover img {
  max-width: none;
  width: 100%;
}
.img-hover [class^=icon-], .img-hover [class*=" icon-"], .video-hover [class^=icon-], .video-hover [class*=" icon-"] {
  bottom: 50%;
  left: 50%;
  font-size: 40px;
  transform: translate(-50%, 50%);
  color: rgb(255, 255, 255);
  opacity: 0.8;
  z-index: 3;
  cursor: pointer;
  transition: all 0.4s ease 0s;
}
.img-hover:hover [class^=icon-], .img-hover:hover [class*=" icon-"], .video-hover:hover [class^=icon-], .video-hover:hover [class*=" icon-"] {
  opacity: 1;
}

.img-hover {
  width: 100%;
  height: 100%;
}
.img-hover [class^=icon-], .img-hover [class*=" icon-"] {
  bottom: 10%;
  visibility: hidden;
  opacity: 0;
}
.img-hover:hover [class^=icon-], .img-hover:hover [class*=" icon-"] {
  visibility: visible;
  bottom: 50%;
}

.video-hover {
  overflow: hidden;
}
.video-hover::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  display: block;
  background: rgb(0, 0, 0);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.2));
  opacity: 0.55;
  z-index: 2;
  transition: opacity 0.4s ease 0s;
}
.video-hover [class^=icon-], .video-hover [class*=" icon-"] {
  font-size: 80px;
}
.video-hover:hover::before {
  opacity: 0.25;
}

/***   content block HEADLINES   ***/
.content-block-headlines h1, .content-block-headlines .h1 {
  font-size: 80px;
  text-transform: none;
}
@media screen and (max-width: 1199px) {
  .content-block-headlines h1, .content-block-headlines .h1 {
    font-size: 62px;
  }
}
@media screen and (max-width: 991px) {
  .content-block-headlines h1, .content-block-headlines .h1 {
    font-size: 52px;
  }
}
@media screen and (max-width: 767px) {
  .content-block-headlines h1, .content-block-headlines .h1 {
    font-size: 42px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-headlines h1, .content-block-headlines .h1 {
    font-size: 34px;
  }
}

/***   content block TEXT   ***/
@media screen and (min-width: 992px) {
  .content-block-text .content.headline-has-line,
.content-block-photo-credits .content.headline-has-line {
    padding-top: 2rem;
  }
}

/***   content block TEXT WITH MEDIA   ***/
.content-block-text-with-media .mt-top {
  margin-top: 150px;
}
@media screen and (max-width: 575px) {
  .content-block-text-with-media .mt-top {
    margin-top: 125px;
  }
}
@media screen and (max-width: 424px) {
  .content-block-text-with-media .mt-top {
    margin-top: 100px;
  }
}
.content-block-text-with-media .box {
  border: 1px solid #CCCED0;
  border-radius: 5px;
}
.content-block-text-with-media .box h3, .content-block-text-with-media .box .h3 {
  text-transform: none;
}

/***   content block GALLERY   ***/
.content-block-gallery .gallery-wrapper {
  margin-bottom: -3rem;
}
@media screen and (max-width: 1399px) {
  .content-block-gallery .gallery-wrapper {
    margin-bottom: -1.5rem;
  }
}
.content-block-gallery .gallery-item.gallery-image img, .content-block-gallery .gallery-item.gallery-video img {
  width: 100%;
}
.content-block-gallery .gallery-item.gallery-text {
  height: 100%;
  border: 1px solid #CCCED0;
  border-radius: 5px;
}
@media screen and (max-width: 1399px) and (min-width: 1200px) {
  .content-block-gallery .gallery-item.gallery-text.p-sm-5 {
    padding: 2rem !important;
  }
}
.content-block-gallery .gallery-item.gallery-text h3, .content-block-gallery .gallery-item.gallery-text .h3 {
  text-transform: none;
}

/***   content block VIDEO   ***/
.content-block-video .content-media {
  margin-top: 0 !important;
}
.content-block-video .content-wrapper {
  width: 100%;
  height: 100%;
  background: rgb(52, 170, 152);
}
.content-block-video .content-wrapper [class^=icon-], .content-block-video .content-wrapper [class*=" icon-"] {
  font-size: 5rem;
}

/***   content block ACCORDION   ***/
.content-block-accordion .accordion-item,
.content-block-seminar-rooms .accordion-item {
  border: 0;
  border-bottom: 1px solid rgba(46, 60, 69, 0.25);
}
.content-block-accordion .accordion-item:first-of-type,
.content-block-seminar-rooms .accordion-item:first-of-type {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: 1px solid rgba(46, 60, 69, 0.25);
}
@media screen and (max-width: 991px) {
  .content-block-accordion .accordion-item:not(.accordion-item-0),
.content-block-seminar-rooms .accordion-item:not(.accordion-item-0) {
    border-top: 0 !important;
  }
}
.content-block-accordion .accordion-item .accordion-button,
.content-block-seminar-rooms .accordion-item .accordion-button {
  padding: 1.5rem 0;
  font-size: 20px;
  font-weight: 600;
  outline: none !important;
  box-shadow: none !important;
}
@media screen and (max-width: 991px) {
  .content-block-accordion .accordion-item .accordion-button,
.content-block-seminar-rooms .accordion-item .accordion-button {
    padding: 1.2rem 0;
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-accordion .accordion-item .accordion-button,
.content-block-seminar-rooms .accordion-item .accordion-button {
    padding: 1rem 0;
    font-size: 16px;
  }
}
.content-block-accordion .accordion-item .accordion-button::after,
.content-block-seminar-rooms .accordion-item .accordion-button::after {
  color: #72223D;
  content: "\e901";
  background-image: none;
  font-size: 18px;
  width: auto;
  height: auto;
}
@media screen and (max-width: 991px) {
  .content-block-accordion .accordion-item .accordion-button::after,
.content-block-seminar-rooms .accordion-item .accordion-button::after {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-accordion .accordion-item .accordion-button::after,
.content-block-seminar-rooms .accordion-item .accordion-button::after {
    font-size: 14px;
  }
}
.content-block-accordion .accordion-item .accordion-button:not(.collapsed),
.content-block-seminar-rooms .accordion-item .accordion-button:not(.collapsed) {
  color: #2E3C45;
  box-shadow: none;
  background-color: transparent;
}
.content-block-accordion .accordion-item .accordion-body,
.content-block-seminar-rooms .accordion-item .accordion-body {
  padding: 0.5rem 0 3rem 0;
}
@media screen and (max-width: 575px) {
  .content-block-accordion .accordion-item .accordion-body,
.content-block-seminar-rooms .accordion-item .accordion-body {
    padding: 0.25rem 0 1.5rem 0;
  }
}
.content-block-accordion .accordion-item small, .content-block-accordion .accordion-item .small, .content-block-accordion .accordion-item .small,
.content-block-seminar-rooms .accordion-item small,
.content-block-seminar-rooms .accordion-item .small,
.content-block-seminar-rooms .accordion-item .small {
  font-weight: 300;
}
.content-block-accordion .accordion-item small > span + span::before, .content-block-accordion .accordion-item .small > span + span::before,
.content-block-seminar-rooms .accordion-item small > span + span::before,
.content-block-seminar-rooms .accordion-item .small > span + span::before {
  content: "•";
  padding: 0 0.375rem;
}

.content-block-jobs .job {
  border-bottom: 1px solid rgba(46, 60, 69, 0.25);
  padding: 1.5rem 0;
  font-size: 20px;
  font-weight: 600;
}
.content-block-jobs .job:first-of-type {
  border-top: 1px solid rgba(46, 60, 69, 0.25);
}
@media screen and (max-width: 991px) {
  .content-block-jobs .job {
    padding: 1.2rem 0;
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-jobs .job {
    padding: 1rem 0;
    font-size: 16px;
  }
}
.content-block-jobs .job small, .content-block-jobs .job .small {
  font-weight: 300;
}
.content-block-jobs .job small > span + span::before, .content-block-jobs .job .small > span + span::before {
  content: "•";
  padding: 0 0.375rem;
}

/***   content block QUOTE   ***/
/***   content block TIP   ***/
.content-block-tip .tip {
  border: 1px solid rgb(114, 34, 61);
}
.content-block-tip .tip [class^=icon-], .content-block-tip .tip [class*=" icon-"] {
  background-color: rgb(114, 34, 61);
  color: rgb(255, 255, 255);
  border-radius: 50%;
  top: 0;
  right: 0;
  transform: translate(-50%, -50%);
  font-size: 2.5rem;
}

/***   content block INSPIRATIONS   ***/
.content-block-inspirations .tiny-slider-wrapper.active-tiny-slider {
  padding-top: 104px;
}
@media screen and (max-width: 1399px) {
  .content-block-inspirations .tiny-slider-wrapper.active-tiny-slider {
    padding-top: 94px;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-inspirations .tiny-slider-wrapper.active-tiny-slider {
    padding-top: 84px;
  }
}
@media screen and (max-width: 991px) {
  .content-block-inspirations .tiny-slider-wrapper {
    padding-top: 69px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-inspirations .tiny-slider-wrapper {
    padding-top: 64px;
  }
}
.content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button {
  top: 0;
  transform: none;
  left: auto;
}
.content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=prev] {
  right: 92px;
}
@media screen and (max-width: 1399px) {
  .content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=prev] {
    right: 82px;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=prev] {
    right: 72px;
  }
}
@media screen and (max-width: 991px) {
  .content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=prev] {
    right: 57px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=prev] {
    right: calc(10% + 52px);
  }
}
.content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=next] {
  right: 0;
}
@media screen and (max-width: 575px) {
  .content-block-inspirations .tiny-slider-wrapper .tns-outer .tns-controls button[data-controls=next] {
    right: 10%;
  }
}

@media screen and (max-width: 575px) {
  .content-block-packages .tiny-slider-container,
.content-block-inspirations .tiny-slider-container {
    width: 90%;
    padding: 0;
    max-width: none;
    margin-left: 10%;
  }
}

/***   content block TEASER ROW   ***/
.content-block-teaser-row {
  padding-top: 49px;
}
@media screen and (max-width: 575px) {
  .content-block-teaser-row {
    padding-top: 39px;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-teaser-row .row.gx-6 {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .content-block-teaser-row .row.gx-6 > .col, .content-block-teaser-row .row.gx-6 > [class^=col-], .content-block-teaser-row .row.gx-6 > [class*=" col-"] {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.content-block-teaser-row .teaser {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  padding: 5rem 2.5rem 4rem;
}
@media screen and (max-width: 575px) {
  .content-block-teaser-row .teaser {
    padding: 4rem 2rem 2.5rem;
  }
}
.content-block-teaser-row .teaser [class^=icon-], .content-block-teaser-row .teaser [class*=" icon-"] {
  background-color: #72223D;
  color: rgb(255, 255, 255);
  border-radius: 50%;
  font-size: 50px;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 575px) {
  .content-block-teaser-row .teaser [class^=icon-], .content-block-teaser-row .teaser [class*=" icon-"] {
    font-size: 30px;
  }
}
body:not(.editmode) .content-block-teaser-row .teaser .btn {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  white-space: nowrap;
  background-color: rgb(255, 255, 255);
}
@media screen and (min-width: 992px) {
  .content-block-teaser-row .has-image-teaser .teaser-wrapper-image {
    z-index: 2;
  }
  .content-block-teaser-row .has-image-teaser .teaser {
    margin-left: -3rem;
    margin-right: -3rem;
    padding: 6rem 6rem 5.5rem;
  }
  .content-block-teaser-row .has-image-teaser .teaser.teaser-0 {
    padding-left: 3rem;
    margin-left: 0;
  }
  .content-block-teaser-row .has-image-teaser .teaser.teaser-0 .btn,
.content-block-teaser-row .has-image-teaser .teaser.teaser-0 [class^=icon-], .content-block-teaser-row .has-image-teaser .teaser.teaser-0 [class*=" icon-"] {
    margin-left: -1.5rem;
  }
  .content-block-teaser-row .has-image-teaser .teaser.teaser-2 {
    padding-right: 3rem;
    margin-right: 0;
  }
  .content-block-teaser-row .has-image-teaser .teaser.teaser-2 .btn,
.content-block-teaser-row .has-image-teaser .teaser.teaser-2 [class^=icon-], .content-block-teaser-row .has-image-teaser .teaser.teaser-2 [class*=" icon-"] {
    margin-left: 1.5rem;
  }
}

/***   content block CALL TO ACTION    ***/
/***   content block TEASER   ***/
.content-block-call-to-action .teaser .teaser-overlay, .content-block-call-to-action .teaser .teaser-caption-wrapper,
.content-block-teaser .teaser .teaser-overlay,
.content-block-teaser .teaser .teaser-caption-wrapper {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.content-block-call-to-action .teaser .teaser-overlay,
.content-block-teaser .teaser .teaser-overlay {
  z-index: 9;
}
.content-block-call-to-action .teaser .teaser-caption-wrapper,
.content-block-teaser .teaser .teaser-caption-wrapper {
  padding: 6rem;
  z-index: 10;
}
@media screen and (max-width: 1199px) {
  .content-block-call-to-action .teaser .teaser-caption-wrapper,
.content-block-teaser .teaser .teaser-caption-wrapper {
    padding: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .content-block-call-to-action .teaser .teaser-caption-wrapper,
.content-block-teaser .teaser .teaser-caption-wrapper {
    padding: 2rem 3rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-call-to-action .teaser .teaser-caption-wrapper,
.content-block-teaser .teaser .teaser-caption-wrapper {
    padding: 3rem 7.5%;
  }
}
body:not(.editmode) .content-block-call-to-action .teaser .teaser-caption,
body:not(.editmode) .content-block-teaser .teaser .teaser-caption {
  width: 560px;
  max-width: 50%;
}
@media screen and (max-width: 575px) {
  body:not(.editmode) .content-block-call-to-action .teaser .teaser-caption,
body:not(.editmode) .content-block-teaser .teaser .teaser-caption {
    max-width: 100%;
  }
}
.content-block-call-to-action .teaser .teaser-video-wrapper,
.content-block-teaser .teaser .teaser-video-wrapper {
  padding-top: 42.55319%;
}
@media screen and (max-width: 991px) {
  .content-block-call-to-action .teaser .teaser-video-wrapper,
.content-block-teaser .teaser .teaser-video-wrapper {
    padding-top: 62.96875%;
  }
}
.content-block-call-to-action .teaser.teaser-overlay-light .teaser-overlay,
.content-block-teaser .teaser.teaser-overlay-light .teaser-overlay {
  background: rgba(255, 255, 255, 0.5);
  background: linear-gradient(rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.7) 100%);
}
.content-block-call-to-action .teaser.teaser-overlay-dark .teaser-overlay,
.content-block-teaser .teaser.teaser-overlay-dark .teaser-overlay {
  background: rgba(0, 0, 0, 0.5);
  background: linear-gradient(rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.5) 100%);
}

@media screen and (max-width: 575px) {
  .content-block-call-to-action .teaser .content-media.img-cinema {
    padding-bottom: 133.333333%;
  }
  .content-block-call-to-action .teaser .content-media.img-cinema .img-fluid {
    width: auto;
    object-fit: cover;
  }
}
.content-block-call-to-action .teaser .teaser-caption {
  background-color: rgb(255, 255, 255);
  border-radius: 30px;
  padding: 4.5rem;
}
@media screen and (max-width: 1399px) {
  .content-block-call-to-action .teaser .teaser-caption {
    padding: 3rem;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-call-to-action .teaser .teaser-caption {
    padding: 2.5rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-call-to-action .teaser .teaser-caption {
    padding: 2rem;
  }
}
.content-block-call-to-action .btn + .btn {
  margin-left: 1.5rem;
}
@media screen and (max-width: 991px) {
  .content-block-call-to-action .btn.has-icon {
    padding-left: 1.75rem;
  }
  .content-block-call-to-action .btn + .btn {
    margin-left: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .content-block-call-to-action .btn.has-icon {
    padding-left: 1.5rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-call-to-action .btn + .btn {
    margin-left: 0.5rem;
  }
}

.content-block-teaser .teaser .teaser-caption,
.content-block-carousel-special .teaser .teaser-caption {
  color: rgb(255, 255, 255);
  font-weight: 400;
}
.content-block-teaser .teaser .teaser-caption .catchword,
.content-block-carousel-special .teaser .teaser-caption .catchword {
  font-size: 24px;
}
@media screen and (max-width: 1399px) {
  .content-block-teaser .teaser .teaser-caption .catchword,
.content-block-carousel-special .teaser .teaser-caption .catchword {
    font-size: 22px;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-teaser .teaser .teaser-caption .catchword,
.content-block-carousel-special .teaser .teaser-caption .catchword {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .content-block-teaser .teaser .teaser-caption .catchword,
.content-block-carousel-special .teaser .teaser-caption .catchword {
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-teaser .teaser .teaser-caption .catchword,
.content-block-carousel-special .teaser .teaser-caption .catchword {
    font-size: 15px;
  }
}
.content-block-teaser .teaser .teaser-caption .btn,
.content-block-carousel-special .teaser .teaser-caption .btn {
  color: inherit;
  border-color: rgb(255, 255, 255);
}
.content-block-teaser .teaser .teaser-caption .btn:hover,
.content-block-carousel-special .teaser .teaser-caption .btn:hover {
  background-color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255) !important;
  color: #72223D;
}
.content-block-teaser .teaser.teaser-overlay-light .teaser-caption,
.content-block-carousel-special .teaser.teaser-overlay-light .teaser-caption {
  color: #2E3C45;
}
.content-block-teaser .teaser.teaser-overlay-light .teaser-caption .btn,
.content-block-carousel-special .teaser.teaser-overlay-light .teaser-caption .btn {
  border-color: #2E3C45;
}

/***   content block TABS & PRESS IMAGES   ***/
/***   content block ROOMS  ***/
.content-block-rooms .rooms-box {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  padding: 6rem 6rem 6rem 8rem;
}
@media screen and (max-width: 1399px) {
  .content-block-rooms .rooms-box {
    padding: 4rem 4rem 4rem 6rem;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-rooms .rooms-box {
    padding: 4rem 4rem 6rem 4rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-rooms .rooms-box {
    padding: 2rem 2rem 5rem 2rem;
  }
}
.content-block-rooms .rooms-box .btn + .btn {
  margin-left: 1.5rem;
}
@media screen and (max-width: 575px) {
  .content-block-rooms .rooms-box .btn + .btn {
    margin-left: 0;
    margin-top: 0.75rem;
  }
}
.content-block-rooms .room .price-from {
  right: auto;
  left: 30px;
}
@media screen and (max-width: 575px) {
  .content-block-rooms .room .price-from {
    left: 20px;
  }
}
.content-block-rooms .room .name {
  color: rgb(255, 255, 255);
  right: 35px;
  bottom: 35px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .content-block-rooms .room .name {
    bottom: 64px;
    left: 35px;
    text-align: center;
  }
}
@media screen and (max-width: 575px) {
  .content-block-rooms .room .name {
    bottom: 54px;
  }
}
.content-block-rooms .tiny-slider-wrapper {
  margin-right: -3rem;
}
@media screen and (max-width: 1199px) {
  .content-block-rooms .tiny-slider-wrapper {
    margin-right: 0;
    margin-top: -3rem;
  }
}
.content-block-rooms .tiny-slider-wrapper .tns-outer .tns-controls {
  top: auto;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .content-block-rooms .tiny-slider-wrapper .tns-outer .tns-controls {
    width: auto;
    right: 30px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-rooms .tiny-slider-wrapper .tns-outer .tns-controls {
    bottom: 20px;
    left: 20px;
    right: 20px;
  }
}

/***  content block CAROUSEL  ***/
.content-block-carousel .tiny-slider-wrapper {
  padding-top: 120px;
}
@media screen and (max-width: 767px) {
  .content-block-carousel .tiny-slider-wrapper {
    padding-top: 100px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .tiny-slider-wrapper {
    padding-top: 60px;
  }
}
.content-block-carousel .tiny-slider-wrapper .tiny-slider-headline {
  top: 0;
  right: 0;
  height: 80px;
}
.content-block-carousel .tab-media-wrapper {
  height: 325px;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 991px) {
  .content-block-carousel .tab-media-wrapper {
    height: 225px;
  }
}
@media screen and (max-width: 767px) {
  .content-block-carousel .tab-media-wrapper {
    height: auto;
  }
}
.content-block-carousel .tab-media-wrapper.tab-box-wrapper {
  height: 674px;
}
@media screen and (max-width: 1199px) {
  .content-block-carousel .tab-media-wrapper.tab-box-wrapper {
    height: 424px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .tab-media-wrapper.tab-box-wrapper {
    height: unset;
  }
}
.content-block-carousel .tab-media {
  width: 100%;
  height: 100%;
}
.content-block-carousel .tab-media img {
  object-fit: cover;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .content-block-carousel .tab-media img {
    height: auto;
  }
}
.content-block-carousel .carousel-nav {
  padding-right: 6rem;
}
.content-block-carousel .carousel-nav ul li {
  color: #76797d;
  transition: color 0.4s ease 0s;
  cursor: pointer;
}
.content-block-carousel .carousel-nav ul li.active {
  color: #2E3C45;
}
.content-block-carousel .box {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  margin-left: 6rem;
  height: 100%;
}
@media screen and (max-width: 1399px) {
  .content-block-carousel .box {
    font-size: 90%;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-carousel .box {
    margin-left: 3rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .box {
    margin-left: 2rem;
    margin-right: -0.1px;
    margin-top: -0.1px;
    height: unset;
    border-radius: 0 0 0 5px;
  }
}
.content-block-carousel .tns-outer .tns-controls {
  position: absolute;
  top: 0;
  left: 6rem;
  width: 50%;
  z-index: 5;
  display: flex;
  justify-content: start;
  outline: none !important;
}
@media screen and (max-width: 1599px) {
  .content-block-carousel .tns-outer .tns-controls {
    width: 40%;
  }
}
@media screen and (max-width: 1399px) {
  .content-block-carousel .tns-outer .tns-controls {
    width: 35%;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-carousel .tns-outer .tns-controls {
    left: 3rem;
    width: 40%;
  }
}
@media screen and (max-width: 991px) {
  .content-block-carousel .tns-outer .tns-controls {
    width: calc(100% - 6rem);
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .tns-outer .tns-controls {
    width: calc(100% - 6rem);
  }
}
.content-block-carousel .tns-outer .tns-controls button {
  width: 80px;
  height: 80px;
  position: static;
  transform: none;
  border-color: #CCCED0;
  color: #76797d;
  opacity: 1;
  padding: 0;
}
.content-block-carousel .tns-outer .tns-controls button::before {
  font-size: 20px;
  line-height: 78px;
  color: inherit;
}
.content-block-carousel .tns-outer .tns-controls button + button {
  margin-left: 1rem;
}
@media screen and (max-width: 767px) {
  .content-block-carousel .tns-outer .tns-controls button {
    width: 60px;
    height: 60px;
  }
  .content-block-carousel .tns-outer .tns-controls button::before {
    font-size: 18px;
    line-height: 58px;
  }
  .content-block-carousel .tns-outer .tns-controls button + button {
    margin-left: 0.5rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .tns-outer .tns-controls button {
    width: 40px;
    height: 40px;
  }
  .content-block-carousel .tns-outer .tns-controls button::before {
    font-size: 14px;
    line-height: 38px;
  }
}
.content-block-carousel .tns-outer .tns-controls .tns-progress-bar {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: #CCCED0;
  left: 220px;
  right: 0;
  height: 1px;
}
@media screen and (max-width: 767px) {
  .content-block-carousel .tns-outer .tns-controls .tns-progress-bar {
    left: 160px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel .tns-outer .tns-controls .tns-progress-bar {
    left: 120px;
  }
}
.content-block-carousel .tns-outer .tns-controls .tns-progress-bar .progress {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 2px;
  height: 4px;
  display: block;
  left: 0;
  width: 0;
  background-color: #72223D;
  transition: width 0.4s ease 0s;
}

/***  content block CAROUSEL SPECIAL  ***/
.content-block-carousel-special .teaser-wrapper {
  padding-bottom: 42.55319%;
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .teaser-wrapper {
    padding-bottom: 62.96875%;
  }
}
.content-block-carousel-special .tiny-slider-wrapper {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 70%;
  z-index: 3;
}
@media screen and (max-width: 1599px) {
  .content-block-carousel-special .tiny-slider-wrapper {
    width: 80%;
  }
}
@media screen and (max-width: 1399px) {
  .content-block-carousel-special .tiny-slider-wrapper {
    width: 85%;
  }
}
@media screen and (max-width: 1199px) {
  .content-block-carousel-special .tiny-slider-wrapper {
    width: 70%;
    top: auto;
    bottom: 3rem;
    transform: none;
  }
  .content-block-carousel-special .tiny-slider-wrapper .tns-ovh {
    display: none;
  }
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .tiny-slider-wrapper {
    width: 100%;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel-special .tiny-slider-wrapper {
    bottom: 1.5rem;
  }
}
.content-block-carousel-special .teaser {
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 0.6s ease 0s;
}
.content-block-carousel-special .teaser::after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: transparent;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
  z-index: 1;
}
.content-block-carousel-special .teaser.active {
  opacity: 1;
}
.content-block-carousel-special .teaser .img-fluid {
  max-width: none;
  width: 100%;
}
.content-block-carousel-special .teaser-caption-wrapper {
  bottom: 0;
  left: 0;
  padding-left: 6rem;
  padding-bottom: 6rem;
  z-index: 2;
}
@media screen and (max-width: 1599px) {
  .content-block-carousel-special .teaser-caption-wrapper {
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .teaser-caption-wrapper {
    bottom: auto;
    top: 3rem;
    padding-bottom: 0;
    padding-right: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .teaser-caption-wrapper {
    padding: 0 3rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-carousel-special .teaser-caption-wrapper {
    top: 1.5rem;
  }
}
.content-block-carousel-special .slide {
  color: rgb(255, 255, 255);
}
.content-block-carousel-special .slide figure {
  background-color: rgb(0, 0, 0);
  overflow: hidden;
  border-radius: 50px;
}
.content-block-carousel-special .slide figure img {
  opacity: 0.55;
}
.content-block-carousel-special .slide .slide-caption {
  bottom: 0;
  left: 0;
  padding: 0 100px 40px 40px;
}
.content-block-carousel-special .slide .slide-caption .h6 {
  font-size: 28px;
  line-height: 1.2;
}
.content-block-carousel-special .slide .slide-caption .catchword {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.2;
}
.content-block-carousel-special .slide .slide-caption .catchword::before {
  content: "";
  display: block;
  height: 3px;
  width: 25px;
  background-color: rgb(255, 255, 255);
  margin-bottom: 0.5rem;
}
.content-block-carousel-special .slide.tns-slide-active:first-child {
  opacity: 0;
}
.content-block-carousel-special .teaser-caption {
  max-width: 530px;
}
@media screen and (max-width: 1599px) {
  .content-block-carousel-special .teaser-caption {
    max-width: 430px;
  }
}
@media screen and (max-width: 1399px) {
  .content-block-carousel-special .teaser-caption {
    max-width: 330px;
  }
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .teaser-caption {
    max-width: 100%;
  }
}
.content-block-carousel-special .teaser-caption .icon-tag {
  background-color: #72223D;
  border-radius: 50%;
  width: 58px;
  height: 58px;
}
.content-block-carousel-special .tns-outer {
  padding-bottom: 120px !important;
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .tns-outer {
    padding-bottom: 80px !important;
  }
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .tns-outer {
    padding-bottom: 40px !important;
  }
}
.content-block-carousel-special .tns-outer .tns-item .slide-inner {
  opacity: 0;
  transition: opacity 0.4s ease 0s;
}
.content-block-carousel-special .tns-outer .tns-item.tns-slide-active .slide-inner,
.content-block-carousel-special .tns-outer .tns-item.tns-slide-active + .tns-item:not(.tns-slide-active) .slide-inner {
  opacity: 1;
}
.content-block-carousel-special .tns-outer .tns-item:not(.tns-slide-active) + .tns-slide-active .slide-inner {
  opacity: 0;
}
.content-block-carousel-special .tns-outer .tns-controls {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 72.842261%;
  z-index: 5;
  display: flex;
  justify-content: start;
  outline: none !important;
}
@media screen and (max-width: 991px) {
  .content-block-carousel-special .tns-outer .tns-controls {
    width: calc(100% - 6rem);
  }
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .tns-outer .tns-controls {
    width: calc(100% - 3rem);
  }
}
.content-block-carousel-special .tns-outer .tns-controls button {
  width: 80px;
  height: 80px;
  position: static;
  transform: none;
  border-color: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  opacity: 1;
  padding: 0;
}
.content-block-carousel-special .tns-outer .tns-controls button::before {
  font-size: 20px;
  line-height: 78px;
  color: inherit;
}
.content-block-carousel-special .tns-outer .tns-controls button + button {
  margin-left: 1rem;
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .tns-outer .tns-controls button {
    width: 40px;
    height: 40px;
  }
  .content-block-carousel-special .tns-outer .tns-controls button::before {
    font-size: 12px;
    line-height: 38px;
  }
  .content-block-carousel-special .tns-outer .tns-controls button + button {
    margin-left: 0.5rem;
  }
}
.content-block-carousel-special .tns-outer .tns-controls .tns-progress-bar {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgb(255, 255, 255);
  left: 220px;
  right: calc(6rem + 80px);
  height: 1px;
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .tns-outer .tns-controls .tns-progress-bar {
    left: 140px;
    right: calc(3rem + 80px);
  }
}
.content-block-carousel-special .tns-outer .tns-controls .tns-progress-bar .progress {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 2px;
  height: 4px;
  display: block;
  left: 0;
  width: 0;
  background-color: #72223D;
  transition: width 0.4s ease 0s;
}
.content-block-carousel-special .tns-outer .tns-controls .tns-progress-count {
  position: absolute;
  top: 50%;
  right: 6rem;
  transform: translateY(-50%);
  color: rgb(255, 255, 255);
  font-family: "Fjalla One", sans-serif;
  font-size: 50px;
}
@media screen and (max-width: 767px) {
  .content-block-carousel-special .tns-outer .tns-controls .tns-progress-count {
    right: 3rem;
    font-size: 30px;
  }
}

/***   content block PRESS DOWNLOADS   ***/
.content-block-press-downloads .logo-4c {
  border: 1px solid rgb(114, 34, 61);
}
.content-block-press-downloads .logo-neg {
  background-color: rgb(114, 34, 61);
}
.content-block-press-downloads .downloads {
  line-height: 1;
}
.content-block-press-downloads .downloads a + a {
  border-left: 1px solid rgb(114, 34, 61);
  margin-left: 0.5rem;
  padding-left: 0.5rem;
}

/***   content block SITEMAP   ***/
.content-block-sitemap .navigation li {
  margin-top: 0.25rem;
}
.content-block-sitemap .navigation li a {
  display: block;
  line-height: 1em;
  text-decoration: none !important;
  color: #2E3C45;
  transition: all 0.4s ease 0s;
}
.content-block-sitemap .navigation > li > a {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  padding: 1.5rem 0;
  color: #2E3C45 !important;
  text-align: center;
  text-transform: uppercase;
  font-weight: 400;
}
.content-block-sitemap .navigation > li:hover > a {
  background-color: rgb(114, 34, 61);
  color: rgb(255, 255, 255) !important;
  border-color: #72223D;
}
.content-block-sitemap .navigation > li > ul > li > a {
  padding: 1rem 0;
  border-bottom: 1px solid #CCCED0;
}
.content-block-sitemap .navigation > li > ul > li:hover > a {
  font-weight: 700;
}
.content-block-sitemap .navigation > li > ul > li > ul > li > a {
  padding: 0.5rem 0;
  font-size: 80%;
}
.content-block-sitemap .navigation > li > ul > li > ul > li:hover > a {
  font-weight: 700;
}

/***   content block SNIPPET CHILDREN PRICES   ***/
.content-block-children-prices .nav-tabs {
  border-bottom: 0;
}
.content-block-children-prices table td {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  vertical-align: top;
}
.content-block-children-prices table td:first-of-type {
  padding-right: 1.5rem;
}

/***   content block TIME SLIDER   ***/
.content-block-time-slider .current-date-time {
  top: 3rem;
  left: 3rem;
  z-index: 10;
  line-height: 1;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 1199px) {
  .content-block-time-slider .current-date-time {
    top: 1.5rem;
    left: 1.5rem;
  }
}
.content-block-time-slider .current-date-time .time {
  font-size: 3rem;
}
.content-block-time-slider .slide .slide-caption-wrapper {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 6rem;
  z-index: 10;
}
@media screen and (max-width: 1199px) {
  .content-block-time-slider .slide .slide-caption-wrapper {
    padding: 3rem;
  }
}
.content-block-time-slider .slide .slide-caption {
  background-color: rgb(52, 170, 152);
  max-width: 400px;
}
.content-block-time-slider .tns-nav {
  top: auto;
  bottom: 3rem;
  left: 0;
  right: 0;
  padding: 0 6rem;
  justify-content: space-around;
}
@media screen and (max-width: 1199px) {
  .content-block-time-slider .tns-nav {
    bottom: 1.5rem;
  }
}
.content-block-time-slider .tns-nav::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(52, 170, 152);
}
.content-block-time-slider .tns-nav button {
  font-size: 0.75rem;
  padding: 0.75rem 1rem 0.75rem 1.25rem;
  border-radius: 2.25rem;
  width: auto;
  height: auto;
  opacity: 1;
  z-index: 2;
}

/***   content block GOOGLE MAP   ***/
.google-map-wrapper {
  width: 100%;
}

#google-map {
  position: relative;
  width: 100%;
  height: 500px;
}
@media screen and (max-width: 575px) {
  #google-map {
    height: 300px;
  }
}
#google-map.google-map--notinitialized {
  background: url("https://sporthotel.at/bilder/platzhalter/placeholder-google-maps.jpeg") center center no-repeat;
  background-size: cover;
}

.google-map__accept {
  background-color: rgba(0, 0, 0, 0.3);
  color: rgb(255, 255, 255);
  width: 320px;
  position: absolute;
  left: 50%;
  margin-left: -160px;
  top: 50%;
  padding: 16px;
  text-align: center;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .directions-submit {
    display: block;
    margin-top: 5px;
    width: 100%;
  }
}
/***   content block IFRAME   ***/
.content-block-iframe iframe {
  border: 0;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .content-block-iframe#webcam-sporthotel-wagrain iframe {
    height: 390px !important;
  }
}
@media screen and (max-width: 575px) {
  .content-block-iframe#webcam-sporthotel-wagrain iframe {
    height: 350px !important;
  }
}
@media screen and (max-width: 424px) {
  .content-block-iframe#webcam-sporthotel-wagrain iframe {
    height: 250px !important;
  }
}

/***   content block PRIVACY POLICY   ***/
.content-block-privacy-policy {
  font-size: 75%;
}

/***   content block WEEKLY PROGRAM   ***/
@media screen and (max-width: 1399px) {
  .weekly-program .col-12 .day.day-5, .weekly-program .col-12 .day.day-6, .weekly-program .col-12 .day.day-7 {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 991px) {
  .weekly-program .col-12 .day.day-4 {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .weekly-program .col-12 .day.day-3 {
    margin-top: 3rem;
  }
}
.weekly-program .col-12 .day .name {
  line-height: 1;
  background-color: rgb(52, 170, 152);
}
.weekly-program .col-12 .day .item {
  position: relative;
  background-color: #d9e1e6;
}
.weekly-program .col-12 .day .item.highlight {
  color: rgb(255, 255, 255) !important;
  background-color: rgb(114, 34, 61) !important;
}
.weekly-program .col-12 .day .item.highlight .title, .weekly-program .col-12 .day .item.highlight .description, .weekly-program .col-12 .day .item.highlight [class^=icon-], .weekly-program .col-12 .day .item.highlight [class*=" icon-"] {
  color: inherit !important;
}
.weekly-program .col-12 .day .item.highlight .description p + p {
  border-color: rgb(255, 255, 255);
}
.weekly-program .col-12 .day .item [class^=icon-], .weekly-program .col-12 .day .item [class*=" icon-"] {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 30px;
}
.weekly-program .col-12 .day .item .title {
  font-weight: 700;
}
.weekly-program .col-12 .day .item .description p {
  margin-bottom: 0;
}
.weekly-program .col-12 .day .item .description p + p {
  border-top: 1px solid #abbcc7;
  padding-top: 1rem;
  margin-top: 1rem;
}
.weekly-program .col-12:nth-child(odd) .day .name {
  background-color: #4ac7b4;
}
.weekly-program .col-12:nth-child(odd) .day .item {
  background-color: #f8f9fa;
}

/***   DATEPICKER FOR BOOTSTRAP   ***/
.datepicker {
  border: 1px solid #2E3C45;
  border-radius: 0;
  box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.1);
  padding: 6px;
  z-index: 1000 !important;
}
.datepicker::before {
  border-bottom-color: #2E3C45;
}
.datepicker .datepicker-days table tr td, .datepicker .datepicker-days table tr th {
  width: 35px;
  height: 35px;
  border-radius: 0;
}
.datepicker .datepicker-days table thead th.dow {
  font-size: 70%;
  text-transform: uppercase;
}
.datepicker .datepicker-days table tbody tr {
  border-top: 1px solid rgb(255, 255, 255);
}
.datepicker .datepicker-days table tbody tr td {
  background-image: none !important;
}
.datepicker .datepicker-days table tbody tr td.old, .datepicker .datepicker-days table tbody tr td.new {
  color: #2E3C45;
}
.datepicker .datepicker-days table tbody tr td.disabled, .datepicker .datepicker-days table tbody tr td.disabled:hover {
  text-decoration: line-through;
  color: #2E3C45;
}
.datepicker .datepicker-days table tbody tr td.active.active, .datepicker .datepicker-days table tbody tr td.active.highlighted.active, .datepicker .datepicker-days table tbody tr td.active.highlighted:active, .datepicker .datepicker-days table tbody tr td.active:active {
  background-color: rgb(114, 34, 61);
  border-color: rgb(114, 34, 61);
}

/***   FILTER   ***/
.content-block-filter .filter-wrapper {
  background-color: #2E3C45;
}
.content-block-filter .filter-group {
  position: relative;
}
.content-block-filter .filter-group.filter-group-hashtags {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  padding: 2rem 3rem;
}
@media screen and (max-width: 767px) {
  .content-block-filter .filter-group.filter-group-hashtags {
    padding: 1rem 1.5rem;
  }
}
@media screen and (max-width: 575px) {
  .content-block-filter .filter-group.filter-group-hashtags {
    padding: 1rem 0.75rem;
  }
}
@media screen and (max-width: 424px) {
  .content-block-filter .filter-group.filter-group-hashtags {
    padding: 0.75rem 0.5rem;
  }
}
.content-block-filter .filter-group.filter-group-hashtags::before {
  content: "\e904";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-50%, -50%);
  border: 1px solid #CCCED0;
  border-radius: 50%;
  background-color: rgb(255, 255, 255);
  color: #76797d;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  .content-block-filter .filter-group.filter-group-hashtags::before {
    display: none;
  }
}
.content-block-filter .filter-group.filter-group-hashtags .label {
  bottom: 100%;
  left: 0;
  color: #76797d;
  font-weight: 600;
}
.content-block-filter .filter-group .filter::after {
  display: none;
}
.content-block-filter .filter-group .filter [class^=icon-], .content-block-filter .filter-group .filter [class*=" icon-"] {
  font-size: 1.25rem;
}
.content-block-filter .filter-group .filter.hashtag-filter {
  font-weight: 600;
  cursor: pointer;
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  .content-block-filter .filter-group .filter.hashtag-filter {
    font-size: 14px;
  }
}
.content-block-filter .filter-group .filter.hashtag-filter span {
  color: #72223D;
}
.content-block-filter .filter-group .filter.btn.d-flex {
  padding-left: 0;
  padding-right: 0;
}
.content-block-filter .filter-group .filter-date, .content-block-filter .filter-group .filter-select {
  width: 100%;
  background-color: rgb(52, 170, 152);
  border: 1px solid rgb(52, 170, 152);
  appearance: none;
  padding: 0.75rem 1.25rem;
  border-radius: 1.5rem;
  box-shadow: none !important;
  outline: none !important;
}
.content-block-filter #clear-filter {
  font-size: 0.75rem;
  cursor: pointer;
  transition: color 0.4s ease 0s;
}
.content-block-filter #clear-filter:hover {
  color: rgb(114, 34, 61);
}

/***   OBJECT ITEMS   ***/
.package .price-from, .room .price-from, .treatment .price-from, .press-release .price-from {
  background-color: rgb(255, 255, 255);
  border-radius: 5px;
  top: 30px;
  right: 30px;
  font-size: 16px;
  line-height: 1.2;
}
.package .price-from strong, .room .price-from strong, .treatment .price-from strong, .press-release .price-from strong {
  font-family: "Fjalla One", sans-serif;
  font-size: 24px;
}
@media screen and (max-width: 575px) {
  .package .price-from, .room .price-from, .treatment .price-from, .press-release .price-from {
    top: 20px;
    font-size: 12px;
  }
  .package .price-from strong, .room .price-from strong, .treatment .price-from strong, .press-release .price-from strong {
    font-size: 18px;
  }
}
.package .title a, .room .title a, .treatment .title a, .press-release .title a {
  color: inherit;
  text-decoration: none;
}
.package .title a:hover, .package .title a:focus, .package .title a:active, .room .title a:hover, .room .title a:focus, .room .title a:active, .treatment .title a:hover, .treatment .title a:focus, .treatment .title a:active, .press-release .title a:hover, .press-release .title a:focus, .press-release .title a:active {
  text-decoration: none;
}

/***   PACKAGES   ***/
.package .price-from-highlight-wrapper {
  top: 30px;
  right: 30px;
  max-width: 75%;
}
.package .hashtags, .package .price-from, .package .price-from-highlight-wrapper {
  z-index: 2;
}
.package .hashtags {
  bottom: 25px;
  right: 25px;
  line-height: 1;
  color: rgb(255, 255, 255);
  font-weight: 600;
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  .package .hashtags {
    font-size: 14px;
  }
}
.package .short-description {
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  .package .short-description {
    font-size: 14px;
  }
}
.package:not(.is-top) figure::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  content: "";
  background: transparent;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  z-index: 1;
}
.package.is-top .info {
  border: 1px solid #CCCED0;
  border-left-width: 0;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}
@media screen and (max-width: 991px) {
  .package.is-top .info {
    border-left-width: 1px;
    border-top-width: 0;
    border-bottom-left-radius: 5px;
    border-top-right-radius: 0;
  }
}
.package.is-top .hashtags {
  top: 0;
  right: 25px;
  bottom: auto;
  background-color: rgb(255, 255, 255);
  color: #76797d;
  transform: translateY(-50%);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media screen and (max-width: 991px) {
  .package.is-top .hashtags {
    top: auto;
    bottom: 0;
    transform: translateY(50%);
  }
}

.content-block-packages .hashtags {
  display: none !important;
}
@media screen and (max-width: 1399px) {
  .content-block-packages .row.gx-6 {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .content-block-packages .row.gx-6 > .col, .content-block-packages .row.gx-6 > [class^=col-], .content-block-packages .row.gx-6 > [class*=" col-"] {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .content-block-packages .tiny-slider-wrapper {
    padding-top: 60px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-packages .tiny-slider-wrapper {
    padding-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .content-block-packages .tns-outer .tns-controls button {
    top: -10px;
    transform: none;
  }
  .content-block-packages .tns-outer .tns-controls button[data-controls=prev] {
    right: 55px;
    left: auto;
  }
  .content-block-packages .tns-outer .tns-controls button[data-controls=next] {
    right: 0;
  }
}
@media screen and (max-width: 575px) {
  .content-block-packages .tns-outer .tns-controls button[data-controls=prev] {
    right: calc(10% + 50px);
    left: auto;
  }
  .content-block-packages .tns-outer .tns-controls button[data-controls=next] {
    right: 10%;
  }
}

#package-info .package-info-wrapper,
#package-info .room-info-wrapper,
#room-info .package-info-wrapper,
#room-info .room-info-wrapper {
  padding-right: 6rem;
}
@media screen and (max-width: 1199px) {
  #package-info .package-info-wrapper,
#package-info .room-info-wrapper,
#room-info .package-info-wrapper,
#room-info .room-info-wrapper {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 575px) {
  #package-info .package-info-wrapper,
#package-info .room-info-wrapper,
#room-info .package-info-wrapper,
#room-info .room-info-wrapper {
    padding-left: 10%;
    padding-right: 10%;
  }
}
#package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
  font-size: 75px;
  text-transform: none;
}
@media screen and (max-width: 1399px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 65px;
  }
}
@media screen and (max-width: 1199px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 55px;
  }
}
@media screen and (max-width: 991px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 50px;
  }
}
@media screen and (max-width: 767px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 40px;
  }
}
@media screen and (max-width: 575px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 35px;
  }
}
@media screen and (max-width: 424px) {
  #package-info h1, #package-info .h1,
#room-info h1,
#room-info .h1 {
    font-size: 30px;
  }
}
#package-info .validity-period,
#package-info .size-occupancy,
#room-info .validity-period,
#room-info .size-occupancy {
  font-size: 22px;
  line-height: 1.2;
}
@media screen and (max-width: 1399px) {
  #package-info .validity-period,
#package-info .size-occupancy,
#room-info .validity-period,
#room-info .size-occupancy {
    font-size: 20px;
  }
}
@media screen and (max-width: 1199px) {
  #package-info .validity-period,
#package-info .size-occupancy,
#room-info .validity-period,
#room-info .size-occupancy {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  #package-info .validity-period,
#package-info .size-occupancy,
#room-info .validity-period,
#room-info .size-occupancy {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  #package-info .validity-period,
#package-info .size-occupancy,
#room-info .validity-period,
#room-info .size-occupancy {
    font-size: 14px;
  }
}
#package-info .hard-facts,
#room-info .hard-facts {
  border: 1px solid #CCCED0;
  border-radius: 5px;
  font-weight: 600;
}
#package-info .hard-facts .hashtags span i,
#room-info .hard-facts .hashtags span i {
  font-style: normal;
  color: #72223D;
}
#package-info .highlights ul li,
#room-info .highlights ul li {
  font-weight: 600;
  padding-left: 0;
}
#package-info .highlights ul li::before,
#room-info .highlights ul li::before {
  content: "\e910";
  color: #72223D;
  position: static;
  margin-right: 1rem;
}
#package-info #package-info-read-more::after,
#room-info #package-info-read-more::after {
  transform: rotate(90deg);
  display: inline-block;
  left: 0 !important;
}
#package-info #package-info-read-more.detailed-description-opened::after,
#room-info #package-info-read-more.detailed-description-opened::after {
  transform: rotate(-90deg);
}
#package-info #package-detailed-description h2, #package-info #package-detailed-description .h2,
#room-info #package-detailed-description h2,
#room-info #package-detailed-description .h2 {
  text-transform: none !important;
}
#package-info #package-detailed-description ul li::before,
#room-info #package-detailed-description ul li::before {
  content: "•" !important;
  left: 10px !important;
}
#package-info #package-detailed-description p + ul,
#room-info #package-detailed-description p + ul {
  margin-top: -1rem;
}

#room-gallery .tns-outer .tns-controls button,
#package-gallery .tns-outer .tns-controls button {
  top: 0;
  transform: translate(-50%, 0);
  color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
}
#room-gallery .tns-outer .tns-controls button[data-controls=prev],
#package-gallery .tns-outer .tns-controls button[data-controls=prev] {
  top: 15px;
  left: 50%;
}
#room-gallery .tns-outer .tns-controls button[data-controls=prev]::before,
#package-gallery .tns-outer .tns-controls button[data-controls=prev]::before {
  content: "\e905";
}
#room-gallery .tns-outer .tns-controls button[data-controls=next],
#package-gallery .tns-outer .tns-controls button[data-controls=next] {
  top: auto;
  bottom: 15px;
  left: 50%;
  right: auto;
}
#room-gallery .tns-outer .tns-controls button[data-controls=next]::before,
#package-gallery .tns-outer .tns-controls button[data-controls=next]::before {
  content: "\e901";
}

#package-prices .room-info {
  border: 1px solid #CCCED0;
  border-top-width: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
#package-prices .room-info .room-price-from {
  color: #76797d;
}
#package-prices .room-info .btn {
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  background-color: rgb(255, 255, 255);
}

#room-breadcrumbs {
  padding-left: 6rem;
  padding-right: 6rem;
}
@media screen and (max-width: 1199px) {
  #room-breadcrumbs {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 575px) {
  #room-breadcrumbs {
    padding-left: 10%;
    padding-right: 10%;
  }
}

/***   ROOMS   ***/
.room .bookable-as-single-room {
  bottom: 25px;
  right: 25px;
}
.room .info {
  border: 1px solid #CCCED0;
  border-top-width: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.room .info .short-description {
  font-size: 16px;
}
@media screen and (max-width: 991px) {
  .room .info .short-description {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  .room .info .short-description {
    font-size: 13px;
  }
}

.validity-period,
.size-occupancy {
  font-weight: 600;
  color: #76797d;
  line-height: 1.2;
}

.size-occupancy > div + div {
  border-left: 2px solid #CCCED0;
  padding-left: 0.75rem;
  margin-left: 0.75rem;
}

.content-block-rooms .tns-outer .tns-controls,
.content-block-room-overview .tns-outer .tns-controls {
  position: absolute;
  top: 30px;
  left: 30px;
  width: 50%;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  outline: none !important;
}
.content-block-rooms .tns-outer .tns-controls button,
.content-block-room-overview .tns-outer .tns-controls button {
  width: 34px;
  height: 34px;
  position: static;
  transform: none;
  border-color: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  opacity: 1;
  padding: 0;
}
.content-block-rooms .tns-outer .tns-controls button::before,
.content-block-room-overview .tns-outer .tns-controls button::before {
  font-size: 10px;
  line-height: 32px;
  color: inherit;
}
.content-block-rooms .tns-outer .tns-controls .tns-progress-bar,
.content-block-room-overview .tns-outer .tns-controls .tns-progress-bar {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgb(255, 255, 255);
  left: 55px;
  right: 55px;
  height: 1px;
}
.content-block-rooms .tns-outer .tns-controls .tns-progress-bar .progress,
.content-block-room-overview .tns-outer .tns-controls .tns-progress-bar .progress {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 2px;
  height: 4px;
  display: block;
  left: 0;
  width: 0;
  transition: width 0.4s ease 0s;
}
@media screen and (max-width: 390px) {
  .content-block-rooms .tns-outer .tns-controls,
.content-block-room-overview .tns-outer .tns-controls {
    top: 20px;
    left: 20px;
    width: 40%;
  }
  .content-block-rooms .tns-outer .tns-controls button,
.content-block-room-overview .tns-outer .tns-controls button {
    width: 30px;
    height: 30px;
  }
  .content-block-rooms .tns-outer .tns-controls button::before,
.content-block-room-overview .tns-outer .tns-controls button::before {
    font-size: 10px;
    line-height: 28px;
  }
  .content-block-rooms .tns-outer .tns-controls .tns-progress-bar,
.content-block-room-overview .tns-outer .tns-controls .tns-progress-bar {
    left: 36px;
    right: 36px;
  }
}

/***   PRICE TABLES   ***/
.table tr th, .table tr td {
  padding: 1.75rem 0;
  border-bottom: 1px solid rgba(46, 60, 69, 0.25);
  vertical-align: middle;
}
.table tr th:first-child, .table tr td:first-child {
  background-color: transparent;
}
.table tr th.borderless, .table tr td.borderless {
  border: 0 !important;
}
.table tr th a, .table tr td a {
  text-decoration: none !important;
}
.table tr th .h4, .table tr td .h4 {
  text-transform: none;
}
.table tr th.td-even, .table tr td.td-even {
  background-color: #f8f9fa;
}
.table tr:first-child th, .table tr:first-child td {
  border-top: 1px solid rgba(46, 60, 69, 0.25);
}
.table.table-narrow {
  font-size: 85%;
}
@media screen and (max-width: 1199px) and (min-width: 768px) {
  .table.table-narrow {
    font-size: 75%;
  }
}
.table.table-narrow tr th, .table.table-narrow tr td {
  padding: 1rem 0;
  line-height: 1.4;
}
@media screen and (max-width: 991px) {
  .table.table-narrow tr th, .table.table-narrow tr td {
    padding: 1rem;
  }
}
.table tbody {
  border-top: 0 !important;
}
.table tbody tr td.room-price > div > div {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.table tbody tr td.room-price .enquiry {
  background-color: rgb(114, 34, 61);
  visibility: hidden;
  opacity: 0;
  transition: all 0.4s ease 0s;
}
.table tbody tr td.room-price .enquiry a {
  color: rgb(255, 255, 255);
  text-transform: uppercase;
  font-weight: 400;
}
.table tbody tr td.room-price:hover .enquiry {
  visibility: visible;
  opacity: 1;
}

.content-block-room-price-list .table.desktop-price-table tr th:nth-child(even), .content-block-room-price-list .table.desktop-price-table tr td:nth-child(even) {
  background-color: #f8f9fa;
}
.content-block-room-price-list .table tr th, .content-block-room-price-list .table tr td {
  padding: 1rem 0;
}
.content-block-room-price-list .table tr th.season-name {
  line-height: 1;
}
.content-block-room-price-list .table tbody tr th.no-border, .content-block-room-price-list .table tbody tr td.no-border {
  border-top: 0 !important;
}
.content-block-room-price-list .table tbody tr th.no-border.separator, .content-block-room-price-list .table tbody tr td.no-border.separator {
  border-bottom: 0 !important;
}
.content-block-room-price-list .table tbody tr th.room-info a, .content-block-room-price-list .table tbody tr td.room-info a {
  color: #2E3C45;
}
.content-block-room-price-list .table tbody tr th.room-info .room-preview, .content-block-room-price-list .table tbody tr td.room-info .room-preview {
  width: 150px;
}
@media screen and (max-width: 991px) {
  .content-block-room-price-list .table tbody tr th.room-info .room-preview, .content-block-room-price-list .table tbody tr td.room-info .room-preview {
    width: 120px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-room-price-list .table tbody tr th.room-info .room-preview, .content-block-room-price-list .table tbody tr td.room-info .room-preview {
    width: 100%;
  }
}
.content-block-room-price-list .table tbody tr th .period, .content-block-room-price-list .table tbody tr td .period {
  padding-left: 38px;
}
@media screen and (max-width: 991px) {
  .content-block-room-price-list .table tbody tr th .period, .content-block-room-price-list .table tbody tr td .period {
    padding-left: 34px;
  }
}
@media screen and (max-width: 767px) {
  .content-block-room-price-list .table tbody tr th .period, .content-block-room-price-list .table tbody tr td .period {
    padding-left: 32px;
  }
}
@media screen and (max-width: 575px) {
  .content-block-room-price-list .table tbody tr th .period, .content-block-room-price-list .table tbody tr td .period {
    padding-left: 28px;
  }
}

/***   TREATMENTS   ***/
.treatment {
  border: 1px solid #CCCED0;
  border-radius: 5px;
}
.treatment .category {
  font-weight: 600;
  color: #76797d;
  line-height: 1;
}
.treatment .description, .treatment .prices {
  font-size: 16px;
}
@media screen and (max-width: 575px) {
  .treatment .description, .treatment .prices {
    font-size: 14px;
  }
}
.treatment .prices {
  line-height: 1.2;
}
@media screen and (max-width: 1399px) {
  .treatment .prices {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  .treatment .prices .d-block.text-nowrap {
    white-space: normal !important;
  }
}
.treatment .prices > div {
  width: 100%;
}
.treatment .prices [class^=icon-], .treatment .prices [class*=" icon-"] {
  font-size: 1.2rem;
  color: #76797d;
  top: 3px;
}
@media screen and (max-width: 575px) {
  .treatment .prices [class^=icon-], .treatment .prices [class*=" icon-"] {
    font-size: 1rem;
  }
}
.treatment .prices .dashed-line {
  border-bottom: 1px dashed #CCCED0;
  width: 100%;
  position: relative;
  bottom: 4px;
}
.treatment .prices .price {
  font-family: "Fjalla One", sans-serif;
  font-size: 24px;
}
@media screen and (max-width: 1399px) {
  .treatment .prices .price {
    font-size: 22px;
  }
}
@media screen and (max-width: 575px) {
  .treatment .prices .price {
    font-size: 18px;
  }
}

/***   PERSONS   ***/
.person .contact {
  border: 1px solid #CCCED0;
  border-left-width: 0;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  padding: 2.5rem 3rem;
}
@media screen and (max-width: 991px) {
  .person .contact {
    border-top: 0;
    border-left-width: 1px;
    border-top-right-radius: 0;
    border-bottom-left-radius: 5px;
  }
}
@media screen and (max-width: 575px) {
  .person .contact {
    padding: 1.5rem 2rem;
  }
}
.person .contact a {
  text-decoration: none !important;
  color: inherit !important;
}
.person .contact a [class^=icon-], .person .contact a [class*=" icon-"] {
  font-size: 1.2rem;
  color: #72223D;
}
.person .contact a:hover {
  color: #72223D !important;
}

/***   PRESS RELEASES   ***/
#press-downloads {
  background-color: #f8f9fa;
}

/***   INSPIRATIONS   ***/
.inspiration {
  border-radius: 30px;
  overflow: hidden;
  color: rgb(255, 255, 255);
  transform: translateZ(0);
}
.inspiration > figure::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  content: "";
  background: transparent;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.2));
  opacity: 0.65;
  z-index: 1;
  transition: opacity 0.4s ease-in-out 0s;
}
.inspiration > .position-absolute {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.inspiration .inspiration-inner {
  width: 100%;
}
.inspiration .inspiration-inner h3, .inspiration .inspiration-inner .h3 {
  text-transform: none;
  font-size: 40px;
  color: inherit;
}
@media screen and (max-width: 1399px) {
  .inspiration .inspiration-inner h3, .inspiration .inspiration-inner .h3 {
    font-size: 32px;
  }
}
@media screen and (max-width: 1199px) {
  .inspiration .inspiration-inner h3, .inspiration .inspiration-inner .h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 575px) {
  .inspiration .inspiration-inner h3, .inspiration .inspiration-inner .h3 {
    font-size: 26px;
  }
}
@media screen and (max-width: 424px) {
  .inspiration .inspiration-inner h3, .inspiration .inspiration-inner .h3 {
    font-size: 22px;
  }
}
.inspiration .inspiration-inner h3 a, .inspiration .inspiration-inner .h3 a {
  color: rgb(255, 255, 255) !important;
  text-decoration: none !important;
}
.inspiration .inspiration-inner .facts {
  height: 0;
  opacity: 0;
  color: rgb(255, 255, 255);
  transition: all 0.4s ease 0s;
}
@media screen and (max-width: 1199px) {
  .inspiration .inspiration-inner .facts {
    opacity: 1;
    height: auto !important;
  }
}
.inspiration .facts {
  font-size: 14px;
  font-weight: 600;
  color: #2E3C45;
}
@media screen and (max-width: 1399px) {
  .inspiration .facts {
    font-size: 12px;
  }
}
.inspiration .facts [class^=icon-], .inspiration .facts [class*=" icon-"] {
  font-size: 16px;
}
@media screen and (max-width: 1399px) {
  .inspiration .facts [class^=icon-], .inspiration .facts [class*=" icon-"] {
    font-size: 14px;
  }
}
.inspiration:hover > figure::before {
  opacity: 0.25;
}
.inspiration:hover .inspiration-inner .facts {
  height: 55px;
  opacity: 1;
}

/***   BLOG ARTICLE   ***/
.blog-article figure {
  border-radius: 30px;
  transform: translateZ(0);
  overflow: hidden;
}
.blog-article h3, .blog-article .h3 {
  text-transform: none;
}
.blog-article h3 a, .blog-article .h3 a {
  color: #2E3C45 !important;
  text-decoration: none !important;
}

.add-to-watchlist {
  position: absolute;
  top: 25px;
  left: 25px;
  line-height: 1;
  cursor: pointer;
}
.add-to-watchlist [class^=icon-], .add-to-watchlist [class*=" icon-"] {
  font-size: 30px;
  color: rgb(255, 255, 255);
}
.add-to-watchlist.marked [class^=icon-], .add-to-watchlist.marked [class*=" icon-"] {
  color: #72223D;
}
.add-to-watchlist.disabled {
  opacity: 0.2;
  cursor: default;
}

#marked-objects .marked-object {
  width: 99px;
  height: 66px;
  background-color: #ffffff;
  -webkit-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
  cursor: pointer;
  position: relative;
}
#marked-objects .marked-object + .marked-object {
  margin-left: 0.5rem;
}
#marked-objects .marked-object.empty {
  cursor: default;
}
#marked-objects .marked-object::before, #marked-objects .marked-object::after {
  position: absolute;
  opacity: 0;
  display: block;
}
#marked-objects .marked-object::before {
  content: "\e909";
  top: 0;
  right: 0;
  color: rgb(255, 255, 255);
  background-color: rgb(114, 34, 61);
  padding: 0.25rem;
  font-size: 0.75rem;
  z-index: 2;
}
#marked-objects .marked-object::after {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0.25rem solid rgb(114, 34, 61);
  z-index: 1;
}
#marked-objects .marked-object:hover:not(.empty)::before, #marked-objects .marked-object:hover:not(.empty)::after {
  opacity: 1;
}

#object-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(51, 51, 51, 0.8);
  z-index: 300;
  padding: 70px;
}
@media screen and (max-width: 991px) {
  #object-overlay {
    padding: 35px;
  }
}
@media screen and (max-width: 575px) {
  #object-overlay {
    padding: 15px;
  }
}
#object-overlay .inner-wrapper {
  position: relative;
  background-color: rgb(255, 255, 255);
  overflow: scroll;
  width: 100%;
  max-height: 100%;
  padding-top: 70px;
  padding-bottom: 70px;
}
#object-overlay .inner-wrapper .inner {
  position: relative;
}
#object-overlay .inner-wrapper .container {
  overflow: hidden;
}
#object-overlay #close-object-overlay, #object-overlay #close-object-overlay-bottom, #object-overlay #nav-object-overlay {
  position: absolute;
  top: 0;
  right: 10px;
  width: 70px;
  height: 70px;
  cursor: pointer;
  font-size: 30px;
  text-align: center;
  color: #2E3C45;
}
@media screen and (max-width: 767px) {
  #object-overlay #close-object-overlay, #object-overlay #close-object-overlay-bottom, #object-overlay #nav-object-overlay {
    width: 50px;
    height: 50px;
    font-size: 20px !important;
    right: 0;
  }
}
#object-overlay #close-object-overlay:hover, #object-overlay #close-object-overlay-bottom:hover, #object-overlay #nav-object-overlay:hover {
  color: rgb(114, 34, 61);
}
#object-overlay #close-object-overlay:hover::before, #object-overlay #close-object-overlay-bottom:hover::before, #object-overlay #nav-object-overlay:hover::before {
  color: rgb(114, 34, 61);
}
#object-overlay #close-object-overlay [class^=icon-], #object-overlay #close-object-overlay [class*=" icon-"], #object-overlay #close-object-overlay-bottom [class^=icon-], #object-overlay #close-object-overlay-bottom [class*=" icon-"], #object-overlay #nav-object-overlay [class^=icon-], #object-overlay #nav-object-overlay [class*=" icon-"] {
  line-height: 70px;
}
@media screen and (max-width: 767px) {
  #object-overlay #close-object-overlay [class^=icon-], #object-overlay #close-object-overlay [class*=" icon-"], #object-overlay #close-object-overlay-bottom [class^=icon-], #object-overlay #close-object-overlay-bottom [class*=" icon-"], #object-overlay #nav-object-overlay [class^=icon-], #object-overlay #nav-object-overlay [class*=" icon-"] {
    line-height: 45px;
  }
}
#object-overlay #close-object-overlay::before, #object-overlay #close-object-overlay-bottom::before, #object-overlay #nav-object-overlay::before {
  content: "schließen";
  position: absolute;
  bottom: -4px;
  left: 0;
  text-align: center;
  width: 100%;
  font-size: 12px;
  color: #2E3C45;
}
@media screen and (max-width: 767px) {
  #object-overlay #close-object-overlay::before, #object-overlay #close-object-overlay-bottom::before, #object-overlay #nav-object-overlay::before {
    font-size: 12px;
  }
}
#object-overlay #close-object-overlay-bottom {
  top: auto;
  right: 50%;
  margin-right: -50px;
  bottom: -80px;
}
#object-overlay #nav-object-overlay {
  right: 90px;
  width: 100px;
}
@media screen and (max-width: 767px) {
  #object-overlay #nav-object-overlay {
    right: 55px;
    width: 80px;
  }
}
#object-overlay #nav-object-overlay a {
  float: left;
  width: 50%;
  display: block;
  color: #2E3C45;
  text-decoration: none !important;
}
#object-overlay #nav-object-overlay a:hover {
  color: rgb(114, 34, 61);
}
#object-overlay #nav-object-overlay::before {
  content: "Zimmer wechseln";
}

/***   INFO BAR   ***/
#info-bar {
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgb(52, 170, 152);
  z-index: 201;
}

/***   INFO DIALOG   ***/
#info-dialog {
  z-index: 9999;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: auto;
  background-color: rgba(46, 60, 69, 0.8);
}

#info-dialog-container {
  background-color: rgb(52, 170, 152);
  width: 90%;
  max-width: 600px;
}

/***   CLOSE INFO BAR & DIALOG   ***/
#close-info-dialog, #close-info-bar {
  right: 0;
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1;
  transition: all 0.4s ease 0s;
}
#close-info-dialog:hover, #close-info-bar:hover {
  color: rgb(255, 255, 255);
}

#close-info-dialog {
  top: 0;
}

#close-info-bar {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

#cookie-notice {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(46, 60, 69, 0.6);
  z-index: 1000;
}
body.iframe-content #cookie-notice {
  display: none !important;
}
#cookie-notice > div {
  background: rgb(255, 255, 255);
  width: 90%;
  max-width: 500px;
}
#cookie-notice > div a:not(.btn) {
  color: rgb(114, 34, 61);
}
#cookie-notice > div a:not(.btn):hover {
  text-decoration: none;
}

/* Fancybox Thumb Override */
.fancybox__thumb {
  background-position: center top;
}

/* a11y: Visually hide, but keep accessible to screen readers */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* a11y: Tiny slider - prevent clicks in cloned/hidden slides before JS normalization */
.tns-slide-cloned a,
.tns-slide-cloned button,
.tns-item[aria-hidden=true] a,
.tns-item[aria-hidden=true] button,
.tns-slide-cloned [tabindex],
.tns-item[aria-hidden=true] [tabindex] {
  pointer-events: none;
}

/* a11y: additive popup color */
body .aa-popup-widget .flex > * {
  opacity: 1 !important;
}
body .aa-popup-widget .flex.flex-column > div {
  color: black;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLjM1NzhhNTkzLmNzcyIsIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNnQ2hCO0VBQ0U7QUQzQkY7QUM2QkU7RUFIRjtJQUlJO0VEMUJGO0FBQ0Y7QUMyQkU7RUFORjtJQU9JO0VEeEJGO0FBQ0Y7O0FFaEJBOzs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FGb0JGOztBR2hDQTtBQUNBO0VBQ0U7RUFDQTtFQUNBLGdCRnNCa0I7RUVyQmxCO0VBQXFFO0VBQ3JFO0VBSzZGO0FIZ0MvRjtBRzdCQTtBQUNBO0VBQ0U7RUFDQTtFQUNBLGdCRk9nQjtFRU5oQjtFQUErRDtFQUMvRDtFQUtzRjtBSDRCeEY7QUcxQkE7RUFDRTtFQUNBO0VBQ0EsZ0JGSmtCO0VFS2xCO0VBQW1FO0VBQ25FO0VBS3FGO0FIeUJ2RjtBR3ZCQTtFQUNFO0VBQ0E7RUFDQSxnQkZkbUI7RUVlbkI7RUFBK0Q7RUFDL0Q7RUFLaUY7QUhzQm5GO0FJdkVBOzs7OztFQUFBO0FDQUE7RUFRSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFDQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7RUFRQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBSUE7QUxnRkY7O0FNbkhBOzs7RUFHRTtBTnNIRjs7QU12R0k7RUFOSjtJQU9NO0VOMkdKO0FBQ0Y7O0FNOUZBO0VBQ0U7RUFDQTtFQ21QSSxtQ0FMSTtFRDVPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTmlHRjs7QU12RkE7RUFDRTtFQUNBLGNFK2tCNEI7RUY5a0I1QjtFQUNBO0VBQ0EsYUU4a0I0QjtBUnBmOUI7O0FNdkZBO0VBQ0UsV0V3YjRCO0FSOVY5Qjs7QU1oRkE7RUFDRTtFQUNBLHFCRW9oQjRCO0VGamhCNUIsZ0JFb2hCNEI7RUZuaEI1QixnQkVvaEI0QjtBUm5jOUI7O0FNN0VBO0VDd01RO0FQdkhSO0FPM0NJO0VEdENKO0lDK01RO0VQMUhOO0FBQ0Y7O0FNakZBO0VDbU1RO0FQOUdSO0FPcERJO0VEakNKO0lDME1RO0VQakhOO0FBQ0Y7O0FNckZBO0VDOExRO0FQckdSO0FPN0RJO0VENUJKO0lDcU1RO0VQeEdOO0FBQ0Y7O0FNekZBO0VDeUxRO0FQNUZSO0FPdEVJO0VEdkJKO0lDZ01RO0VQL0ZOO0FBQ0Y7O0FNN0ZBO0VDZ0xNLGtCQUxJO0FQMUVWOztBTTVGQTtFQzJLTSxlQUxJO0FQdEVWOztBTXJGQTtFQUNFO0VBQ0EsbUJFa1UwQjtBUjFPNUI7O0FNN0VBOztFQUVFO0VBQ0E7RUFDQTtBTmdGRjs7QU0xRUE7RUFDRTtFQUNBO0VBQ0E7QU42RUY7O0FNdkVBOztFQUVFO0FOMEVGOztBTXZFQTs7O0VBR0U7RUFDQTtBTjBFRjs7QU12RUE7Ozs7RUFJRTtBTjBFRjs7QU12RUE7RUFDRSxnQkV1WjRCO0FSN1U5Qjs7QU1yRUE7RUFDRTtFQUNBO0FOd0VGOztBTWxFQTtFQUNFO0FOcUVGOztBTTdEQTs7RUFFRSxtQkVnWTRCO0FSaFU5Qjs7QU14REE7RUM0RU0sa0JBTEk7QVBYVjs7QU1yREE7RUFDRSxjRTRiNEI7RUYzYjVCLHlCRW1jNEI7QVIzWTlCOztBTS9DQTs7RUFFRTtFQ3dESSxpQkFMSTtFRGpEUjtFQUNBO0FOa0RGOztBTS9DQTtFQUFNO0FObUROOztBTWxEQTtFQUFNO0FOc0ROOztBTWpEQTtFQUNFLGNFcE5RO0VGcU5SLDBCRWtNd0M7QVI5STFDO0FNbERFO0VBQ0UsY0VpTXNDO0FSN0kxQzs7QU16Q0U7RUFFRTtFQUNBO0FOMkNKOztBTXBDQTs7OztFQUlFLHFDRTZTNEI7RUQvUnhCLGNBTEk7RURQUjtFQUNBO0FOdUNGOztBTWhDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VDQUksa0JBTEk7QVB5Q1Y7QU0vQkU7RUNMSSxrQkFMSTtFRFlOO0VBQ0E7QU5pQ0o7O0FNN0JBO0VDWk0sa0JBTEk7RURtQlIsY0UxUVE7RUYyUVI7QU5nQ0Y7QU03QkU7RUFDRTtBTitCSjs7QU0zQkE7RUFDRTtFQ3hCSSxrQkFMSTtFRCtCUix5QkxyVE07RUtzVE4seUJFL1NTO0VDRVA7QVQ0VUo7QU01QkU7RUFDRTtFQy9CRSxjQUxJO0VEc0NOLGdCRTBRMEI7QVI1TzlCOztBTXJCQTtFQUNFO0FOd0JGOztBTWxCQTs7RUFFRTtBTnFCRjs7QU1iQTtFQUNFO0VBQ0E7QU5nQkY7O0FNYkE7RUFDRSxtQkV3VTRCO0VGdlU1QixzQkV1VTRCO0VGdFU1QixjRTFWUztFRjJWVDtBTmdCRjs7QU1UQTtFQUVFO0VBQ0E7QU5XRjs7QU1SQTs7Ozs7O0VBTUU7RUFDQTtFQUNBO0FOV0Y7O0FNSEE7RUFDRTtBTk1GOztBTUFBO0VBRUU7QU5FRjs7QU1NQTtFQUNFO0FOSEY7O0FNUUE7Ozs7O0VBS0U7RUFDQTtFQzlISSxrQkFMSTtFRHFJUjtBTkxGOztBTVNBOztFQUVFO0FOTkY7O0FNV0E7RUFDRTtBTlJGOztBTVdBO0VBR0U7QU5WRjtBTWFFO0VBQ0U7QU5YSjs7QU1rQkE7RUFDRTtBTmZGOztBTXVCQTs7OztFQUlFO0FOcEJGO0FNdUJJOzs7O0VBQ0U7QU5sQk47O0FNeUJBO0VBQ0U7RUFDQTtBTnRCRjs7QU0yQkE7RUFDRTtBTnhCRjs7QU1rQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBTi9CRjs7QU11Q0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxxQkU2SjRCO0VEaFh0QjtFRHNOTjtBTnJDRjtBT25WSTtFRGlYSjtJQ3hNUTtFUDhLTjtBQUNGO0FNa0NFO0VBQ0U7QU5oQ0o7O0FNdUNBOzs7Ozs7O0VBT0U7QU5wQ0Y7O0FNdUNBO0VBQ0U7QU5wQ0Y7O0FNNkNBO0VBQ0U7RUFDQTtBTjFDRjs7QU1rREE7Ozs7Ozs7Q0FBQTtBQVdBO0VBQ0U7QU5sREY7O0FNdURBO0VBQ0U7QU5wREY7O0FNMERBO0VBQ0U7QU52REY7O0FNNkRBO0VBQ0U7RUFDQTtBTjFERjs7QU0rREE7RUFDRTtBTjVERjs7QU1pRUE7RUFDRTtBTjlERjs7QU1xRUE7RUFDRTtFQUNBO0FObEVGOztBTTBFQTtFQUNFO0FOdkVGOztBTStFQTtFQUNFO0FONUVGOztBVXZnQkE7RUh5UU0sa0JBTEk7RUdsUVIsZ0JGdW1CNEI7QVI3RjlCOztBVXJnQkU7RUhzUU07RUdwUUosZ0JGMGxCa0I7RUV6bEJsQixnQkYya0IwQjtBUm5FOUI7QU92YUk7RUdwR0Y7SUg2UU07RVBrUU47QUFDRjs7QVVoaEJFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QVJ4RDlCO0FPbGJJO0VHcEdGO0lINlFNO0VQNlFOO0FBQ0Y7O0FVM2hCRTtFSHNRTTtFR3BRSixnQkYwbEJrQjtFRXpsQmxCLGdCRjJrQjBCO0FSN0M5QjtBTzdiSTtFR3BHRjtJSDZRTTtFUHdSTjtBQUNGOztBVXRpQkU7RUhzUU07RUdwUUosZ0JGMGxCa0I7RUV6bEJsQixnQkYya0IwQjtBUmxDOUI7QU94Y0k7RUdwR0Y7SUg2UU07RVBtU047QUFDRjs7QVVqakJFO0VIc1FNO0VHcFFKLGdCRjBsQmtCO0VFemxCbEIsZ0JGMmtCMEI7QVJ2QjlCO0FPbmRJO0VHcEdGO0lINlFNO0VQOFNOO0FBQ0Y7O0FVNWpCRTtFSHNRTTtFR3BRSixnQkYwbEJrQjtFRXpsQmxCLGdCRjJrQjBCO0FSWjlCO0FPOWRJO0VHcEdGO0lINlFNO0VQeVROO0FBQ0Y7O0FVampCQTtFQ3JERTtFQUNBO0FYMG1CRjs7QVVqakJBO0VDMURFO0VBQ0E7QVgrbUJGOztBVW5qQkE7RUFDRTtBVnNqQkY7QVVwakJFO0VBQ0Usb0JGOGxCMEI7QVJ4QzlCOztBVTVpQkE7RUhzTk0sa0JBTEk7RUcvTVI7QVYraUJGOztBVTNpQkE7RUFDRSxtQkZnU087RURqRkgsa0JBTEk7QVBxV1Y7QVU1aUJFO0VBQ0U7QVY4aUJKOztBVTFpQkE7RUFDRTtFQUNBLG1CRnNSTztFRGpGSCxrQkFMSTtFRzlMUixjRnBGUztBUmlvQlg7QVUzaUJFO0VBQ0U7QVY2aUJKOztBWTNvQkE7RUNJRTtFQUdBO0FieW9CRjs7QVkxb0JBO0VBQ0UsZ0JKczlDa0M7RUlyOUNsQyxvQ1hMTTtFV01OO0VIR0U7RUlSRjtFQUdBO0Fia3BCRjs7QVlwb0JBO0VBRUU7QVpzb0JGOztBWW5vQkE7RUFDRTtFQUNBO0Fac29CRjs7QVlub0JBO0VMK1BNLGtCQUxJO0VLeFBSLGNKMUJTO0FSZ3FCWDs7QWN4cUJFOzs7Ozs7O0VDSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnFyQkY7O0FnQjduQkk7RUY1Q0U7SUFDRSxnQk5pZGU7RVI0TnJCO0FBQ0Y7QWdCbm9CSTtFRjVDRTtJQUNFLGdCTmlkZTtFUmlPckI7QUFDRjtBZ0J4b0JJO0VGNUNFO0lBQ0UsZ0JOaWRlO0VSc09yQjtBQUNGO0FnQjdvQkk7RUY1Q0U7SUFDRSxpQk5pZGU7RVIyT3JCO0FBQ0Y7QWdCbHBCSTtFRjVDRTtJQUNFLGlCTmlkZTtFUmdQckI7QUFDRjtBaUJqdEJFO0VDQUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QWxCbXRCRjtBaUJ2dEJJO0VDYUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQjZzQkY7O0FrQjlwQk07RUFDRTtBbEJpcUJSOztBa0I5cEJNO0VBcENKO0VBQ0E7QWxCc3NCRjs7QWtCeHJCRTtFQUNFO0VBQ0E7QWxCMnJCSjs7QWtCN3JCRTtFQUNFO0VBQ0E7QWxCZ3NCSjs7QWtCbHNCRTtFQUNFO0VBQ0E7QWxCcXNCSjs7QWtCdnNCRTtFQUNFO0VBQ0E7QWxCMHNCSjs7QWtCNXNCRTtFQUNFO0VBQ0E7QWxCK3NCSjs7QWtCanRCRTtFQUNFO0VBQ0E7QWxCb3RCSjs7QWtCcnJCTTtFQWhESjtFQUNBO0FsQnl1QkY7O0FrQnByQlU7RUFoRU47RUFDQTtBbEJ3dkJKOztBa0J6ckJVO0VBaEVOO0VBQ0E7QWxCNnZCSjs7QWtCOXJCVTtFQWhFTjtFQUNBO0FsQmt3Qko7O0FrQm5zQlU7RUFoRU47RUFDQTtBbEJ1d0JKOztBa0J4c0JVO0VBaEVOO0VBQ0E7QWxCNHdCSjs7QWtCN3NCVTtFQWhFTjtFQUNBO0FsQml4Qko7O0FrQmx0QlU7RUFoRU47RUFDQTtBbEJzeEJKOztBa0J2dEJVO0VBaEVOO0VBQ0E7QWxCMnhCSjs7QWtCNXRCVTtFQWhFTjtFQUNBO0FsQmd5Qko7O0FrQmp1QlU7RUFoRU47RUFDQTtBbEJxeUJKOztBa0J0dUJVO0VBaEVOO0VBQ0E7QWxCMHlCSjs7QWtCM3VCVTtFQWhFTjtFQUNBO0FsQit5Qko7O0FrQnh1Qlk7RUF4RFY7QWxCb3lCRjs7QWtCNXVCWTtFQXhEVjtBbEJ3eUJGOztBa0JodkJZO0VBeERWO0FsQjR5QkY7O0FrQnB2Qlk7RUF4RFY7QWxCZ3pCRjs7QWtCeHZCWTtFQXhEVjtBbEJvekJGOztBa0I1dkJZO0VBeERWO0FsQnd6QkY7O0FrQmh3Qlk7RUF4RFY7QWxCNHpCRjs7QWtCcHdCWTtFQXhEVjtBbEJnMEJGOztBa0J4d0JZO0VBeERWO0FsQm8wQkY7O0FrQjV3Qlk7RUF4RFY7QWxCdzBCRjs7QWtCaHhCWTtFQXhEVjtBbEI0MEJGOztBa0J6d0JROztFQUVFO0FsQjR3QlY7O0FrQnp3QlE7O0VBRUU7QWxCNHdCVjs7QWtCbnhCUTs7RUFFRTtBbEJzeEJWOztBa0JueEJROztFQUVFO0FsQnN4QlY7O0FrQjd4QlE7O0VBRUU7QWxCZ3lCVjs7QWtCN3hCUTs7RUFFRTtBbEJneUJWOztBa0J2eUJROztFQUVFO0FsQjB5QlY7O0FrQnZ5QlE7O0VBRUU7QWxCMHlCVjs7QWtCanpCUTs7RUFFRTtBbEJvekJWOztBa0JqekJROztFQUVFO0FsQm96QlY7O0FrQjN6QlE7O0VBRUU7QWxCOHpCVjs7QWtCM3pCUTs7RUFFRTtBbEI4ekJWOztBZ0J4M0JJO0VFVUU7SUFDRTtFbEJrM0JOOztFa0IvMkJJO0lBcENKO0lBQ0E7RWxCdTVCQTs7RWtCejRCQTtJQUNFO0lBQ0E7RWxCNDRCRjs7RWtCOTRCQTtJQUNFO0lBQ0E7RWxCaTVCRjs7RWtCbjVCQTtJQUNFO0lBQ0E7RWxCczVCRjs7RWtCeDVCQTtJQUNFO0lBQ0E7RWxCMjVCRjs7RWtCNzVCQTtJQUNFO0lBQ0E7RWxCZzZCRjs7RWtCbDZCQTtJQUNFO0lBQ0E7RWxCcTZCRjs7RWtCdDRCSTtJQWhESjtJQUNBO0VsQjA3QkE7O0VrQnI0QlE7SUFoRU47SUFDQTtFbEJ5OEJGOztFa0IxNEJRO0lBaEVOO0lBQ0E7RWxCODhCRjs7RWtCLzRCUTtJQWhFTjtJQUNBO0VsQm05QkY7O0VrQnA1QlE7SUFoRU47SUFDQTtFbEJ3OUJGOztFa0J6NUJRO0lBaEVOO0lBQ0E7RWxCNjlCRjs7RWtCOTVCUTtJQWhFTjtJQUNBO0VsQmsrQkY7O0VrQm42QlE7SUFoRU47SUFDQTtFbEJ1K0JGOztFa0J4NkJRO0lBaEVOO0lBQ0E7RWxCNCtCRjs7RWtCNzZCUTtJQWhFTjtJQUNBO0VsQmkvQkY7O0VrQmw3QlE7SUFoRU47SUFDQTtFbEJzL0JGOztFa0J2N0JRO0lBaEVOO0lBQ0E7RWxCMi9CRjs7RWtCNTdCUTtJQWhFTjtJQUNBO0VsQmdnQ0Y7O0VrQno3QlU7SUF4RFY7RWxCcS9CQTs7RWtCNzdCVTtJQXhEVjtFbEJ5L0JBOztFa0JqOEJVO0lBeERWO0VsQjYvQkE7O0VrQnI4QlU7SUF4RFY7RWxCaWdDQTs7RWtCejhCVTtJQXhEVjtFbEJxZ0NBOztFa0I3OEJVO0lBeERWO0VsQnlnQ0E7O0VrQmo5QlU7SUF4RFY7RWxCNmdDQTs7RWtCcjlCVTtJQXhEVjtFbEJpaENBOztFa0J6OUJVO0lBeERWO0VsQnFoQ0E7O0VrQjc5QlU7SUF4RFY7RWxCeWhDQTs7RWtCaitCVTtJQXhEVjtFbEI2aENBOztFa0JyK0JVO0lBeERWO0VsQmlpQ0E7O0VrQjk5Qk07O0lBRUU7RWxCaStCUjs7RWtCOTlCTTs7SUFFRTtFbEJpK0JSOztFa0J4K0JNOztJQUVFO0VsQjIrQlI7O0VrQngrQk07O0lBRUU7RWxCMitCUjs7RWtCbC9CTTs7SUFFRTtFbEJxL0JSOztFa0JsL0JNOztJQUVFO0VsQnEvQlI7O0VrQjUvQk07O0lBRUU7RWxCKy9CUjs7RWtCNS9CTTs7SUFFRTtFbEIrL0JSOztFa0J0Z0NNOztJQUVFO0VsQnlnQ1I7O0VrQnRnQ007O0lBRUU7RWxCeWdDUjs7RWtCaGhDTTs7SUFFRTtFbEJtaENSOztFa0JoaENNOztJQUVFO0VsQm1oQ1I7QUFDRjtBZ0I5a0NJO0VFVUU7SUFDRTtFbEJ1a0NOOztFa0Jwa0NJO0lBcENKO0lBQ0E7RWxCNG1DQTs7RWtCOWxDQTtJQUNFO0lBQ0E7RWxCaW1DRjs7RWtCbm1DQTtJQUNFO0lBQ0E7RWxCc21DRjs7RWtCeG1DQTtJQUNFO0lBQ0E7RWxCMm1DRjs7RWtCN21DQTtJQUNFO0lBQ0E7RWxCZ25DRjs7RWtCbG5DQTtJQUNFO0lBQ0E7RWxCcW5DRjs7RWtCdm5DQTtJQUNFO0lBQ0E7RWxCMG5DRjs7RWtCM2xDSTtJQWhESjtJQUNBO0VsQitvQ0E7O0VrQjFsQ1E7SUFoRU47SUFDQTtFbEI4cENGOztFa0IvbENRO0lBaEVOO0lBQ0E7RWxCbXFDRjs7RWtCcG1DUTtJQWhFTjtJQUNBO0VsQndxQ0Y7O0VrQnptQ1E7SUFoRU47SUFDQTtFbEI2cUNGOztFa0I5bUNRO0lBaEVOO0lBQ0E7RWxCa3JDRjs7RWtCbm5DUTtJQWhFTjtJQUNBO0VsQnVyQ0Y7O0VrQnhuQ1E7SUFoRU47SUFDQTtFbEI0ckNGOztFa0I3bkNRO0lBaEVOO0lBQ0E7RWxCaXNDRjs7RWtCbG9DUTtJQWhFTjtJQUNBO0VsQnNzQ0Y7O0VrQnZvQ1E7SUFoRU47SUFDQTtFbEIyc0NGOztFa0I1b0NRO0lBaEVOO0lBQ0E7RWxCZ3RDRjs7RWtCanBDUTtJQWhFTjtJQUNBO0VsQnF0Q0Y7O0VrQjlvQ1U7SUF4RFY7RWxCMHNDQTs7RWtCbHBDVTtJQXhEVjtFbEI4c0NBOztFa0J0cENVO0lBeERWO0VsQmt0Q0E7O0VrQjFwQ1U7SUF4RFY7RWxCc3RDQTs7RWtCOXBDVTtJQXhEVjtFbEIwdENBOztFa0JscUNVO0lBeERWO0VsQjh0Q0E7O0VrQnRxQ1U7SUF4RFY7RWxCa3VDQTs7RWtCMXFDVTtJQXhEVjtFbEJzdUNBOztFa0I5cUNVO0lBeERWO0VsQjB1Q0E7O0VrQmxyQ1U7SUF4RFY7RWxCOHVDQTs7RWtCdHJDVTtJQXhEVjtFbEJrdkNBOztFa0IxckNVO0lBeERWO0VsQnN2Q0E7O0VrQm5yQ007O0lBRUU7RWxCc3JDUjs7RWtCbnJDTTs7SUFFRTtFbEJzckNSOztFa0I3ckNNOztJQUVFO0VsQmdzQ1I7O0VrQjdyQ007O0lBRUU7RWxCZ3NDUjs7RWtCdnNDTTs7SUFFRTtFbEIwc0NSOztFa0J2c0NNOztJQUVFO0VsQjBzQ1I7O0VrQmp0Q007O0lBRUU7RWxCb3RDUjs7RWtCanRDTTs7SUFFRTtFbEJvdENSOztFa0IzdENNOztJQUVFO0VsQjh0Q1I7O0VrQjN0Q007O0lBRUU7RWxCOHRDUjs7RWtCcnVDTTs7SUFFRTtFbEJ3dUNSOztFa0JydUNNOztJQUVFO0VsQnd1Q1I7QUFDRjtBZ0JueUNJO0VFVUU7SUFDRTtFbEI0eENOOztFa0J6eENJO0lBcENKO0lBQ0E7RWxCaTBDQTs7RWtCbnpDQTtJQUNFO0lBQ0E7RWxCc3pDRjs7RWtCeHpDQTtJQUNFO0lBQ0E7RWxCMnpDRjs7RWtCN3pDQTtJQUNFO0lBQ0E7RWxCZzBDRjs7RWtCbDBDQTtJQUNFO0lBQ0E7RWxCcTBDRjs7RWtCdjBDQTtJQUNFO0lBQ0E7RWxCMDBDRjs7RWtCNTBDQTtJQUNFO0lBQ0E7RWxCKzBDRjs7RWtCaHpDSTtJQWhESjtJQUNBO0VsQm8yQ0E7O0VrQi95Q1E7SUFoRU47SUFDQTtFbEJtM0NGOztFa0JwekNRO0lBaEVOO0lBQ0E7RWxCdzNDRjs7RWtCenpDUTtJQWhFTjtJQUNBO0VsQjYzQ0Y7O0VrQjl6Q1E7SUFoRU47SUFDQTtFbEJrNENGOztFa0JuMENRO0lBaEVOO0lBQ0E7RWxCdTRDRjs7RWtCeDBDUTtJQWhFTjtJQUNBO0VsQjQ0Q0Y7O0VrQjcwQ1E7SUFoRU47SUFDQTtFbEJpNUNGOztFa0JsMUNRO0lBaEVOO0lBQ0E7RWxCczVDRjs7RWtCdjFDUTtJQWhFTjtJQUNBO0VsQjI1Q0Y7O0VrQjUxQ1E7SUFoRU47SUFDQTtFbEJnNkNGOztFa0JqMkNRO0lBaEVOO0lBQ0E7RWxCcTZDRjs7RWtCdDJDUTtJQWhFTjtJQUNBO0VsQjA2Q0Y7O0VrQm4yQ1U7SUF4RFY7RWxCKzVDQTs7RWtCdjJDVTtJQXhEVjtFbEJtNkNBOztFa0IzMkNVO0lBeERWO0VsQnU2Q0E7O0VrQi8yQ1U7SUF4RFY7RWxCMjZDQTs7RWtCbjNDVTtJQXhEVjtFbEIrNkNBOztFa0J2M0NVO0lBeERWO0VsQm03Q0E7O0VrQjMzQ1U7SUF4RFY7RWxCdTdDQTs7RWtCLzNDVTtJQXhEVjtFbEIyN0NBOztFa0JuNENVO0lBeERWO0VsQis3Q0E7O0VrQnY0Q1U7SUF4RFY7RWxCbThDQTs7RWtCMzRDVTtJQXhEVjtFbEJ1OENBOztFa0IvNENVO0lBeERWO0VsQjI4Q0E7O0VrQng0Q007O0lBRUU7RWxCMjRDUjs7RWtCeDRDTTs7SUFFRTtFbEIyNENSOztFa0JsNUNNOztJQUVFO0VsQnE1Q1I7O0VrQmw1Q007O0lBRUU7RWxCcTVDUjs7RWtCNTVDTTs7SUFFRTtFbEIrNUNSOztFa0I1NUNNOztJQUVFO0VsQis1Q1I7O0VrQnQ2Q007O0lBRUU7RWxCeTZDUjs7RWtCdDZDTTs7SUFFRTtFbEJ5NkNSOztFa0JoN0NNOztJQUVFO0VsQm03Q1I7O0VrQmg3Q007O0lBRUU7RWxCbTdDUjs7RWtCMTdDTTs7SUFFRTtFbEI2N0NSOztFa0IxN0NNOztJQUVFO0VsQjY3Q1I7QUFDRjtBZ0J4L0NJO0VFVUU7SUFDRTtFbEJpL0NOOztFa0I5K0NJO0lBcENKO0lBQ0E7RWxCc2hEQTs7RWtCeGdEQTtJQUNFO0lBQ0E7RWxCMmdERjs7RWtCN2dEQTtJQUNFO0lBQ0E7RWxCZ2hERjs7RWtCbGhEQTtJQUNFO0lBQ0E7RWxCcWhERjs7RWtCdmhEQTtJQUNFO0lBQ0E7RWxCMGhERjs7RWtCNWhEQTtJQUNFO0lBQ0E7RWxCK2hERjs7RWtCamlEQTtJQUNFO0lBQ0E7RWxCb2lERjs7RWtCcmdESTtJQWhESjtJQUNBO0VsQnlqREE7O0VrQnBnRFE7SUFoRU47SUFDQTtFbEJ3a0RGOztFa0J6Z0RRO0lBaEVOO0lBQ0E7RWxCNmtERjs7RWtCOWdEUTtJQWhFTjtJQUNBO0VsQmtsREY7O0VrQm5oRFE7SUFoRU47SUFDQTtFbEJ1bERGOztFa0J4aERRO0lBaEVOO0lBQ0E7RWxCNGxERjs7RWtCN2hEUTtJQWhFTjtJQUNBO0VsQmltREY7O0VrQmxpRFE7SUFoRU47SUFDQTtFbEJzbURGOztFa0J2aURRO0lBaEVOO0lBQ0E7RWxCMm1ERjs7RWtCNWlEUTtJQWhFTjtJQUNBO0VsQmduREY7O0VrQmpqRFE7SUFoRU47SUFDQTtFbEJxbkRGOztFa0J0akRRO0lBaEVOO0lBQ0E7RWxCMG5ERjs7RWtCM2pEUTtJQWhFTjtJQUNBO0VsQituREY7O0VrQnhqRFU7SUF4RFY7RWxCb25EQTs7RWtCNWpEVTtJQXhEVjtFbEJ3bkRBOztFa0Joa0RVO0lBeERWO0VsQjRuREE7O0VrQnBrRFU7SUF4RFY7RWxCZ29EQTs7RWtCeGtEVTtJQXhEVjtFbEJvb0RBOztFa0I1a0RVO0lBeERWO0VsQndvREE7O0VrQmhsRFU7SUF4RFY7RWxCNG9EQTs7RWtCcGxEVTtJQXhEVjtFbEJncERBOztFa0J4bERVO0lBeERWO0VsQm9wREE7O0VrQjVsRFU7SUF4RFY7RWxCd3BEQTs7RWtCaG1EVTtJQXhEVjtFbEI0cERBOztFa0JwbURVO0lBeERWO0VsQmdxREE7O0VrQjdsRE07O0lBRUU7RWxCZ21EUjs7RWtCN2xETTs7SUFFRTtFbEJnbURSOztFa0J2bURNOztJQUVFO0VsQjBtRFI7O0VrQnZtRE07O0lBRUU7RWxCMG1EUjs7RWtCam5ETTs7SUFFRTtFbEJvbkRSOztFa0JqbkRNOztJQUVFO0VsQm9uRFI7O0VrQjNuRE07O0lBRUU7RWxCOG5EUjs7RWtCM25ETTs7SUFFRTtFbEI4bkRSOztFa0Jyb0RNOztJQUVFO0VsQndvRFI7O0VrQnJvRE07O0lBRUU7RWxCd29EUjs7RWtCL29ETTs7SUFFRTtFbEJrcERSOztFa0Ivb0RNOztJQUVFO0VsQmtwRFI7QUFDRjtBZ0I3c0RJO0VFVUU7SUFDRTtFbEJzc0ROOztFa0Juc0RJO0lBcENKO0lBQ0E7RWxCMnVEQTs7RWtCN3REQTtJQUNFO0lBQ0E7RWxCZ3VERjs7RWtCbHVEQTtJQUNFO0lBQ0E7RWxCcXVERjs7RWtCdnVEQTtJQUNFO0lBQ0E7RWxCMHVERjs7RWtCNXVEQTtJQUNFO0lBQ0E7RWxCK3VERjs7RWtCanZEQTtJQUNFO0lBQ0E7RWxCb3ZERjs7RWtCdHZEQTtJQUNFO0lBQ0E7RWxCeXZERjs7RWtCMXRESTtJQWhESjtJQUNBO0VsQjh3REE7O0VrQnp0RFE7SUFoRU47SUFDQTtFbEI2eERGOztFa0I5dERRO0lBaEVOO0lBQ0E7RWxCa3lERjs7RWtCbnVEUTtJQWhFTjtJQUNBO0VsQnV5REY7O0VrQnh1RFE7SUFoRU47SUFDQTtFbEI0eURGOztFa0I3dURRO0lBaEVOO0lBQ0E7RWxCaXpERjs7RWtCbHZEUTtJQWhFTjtJQUNBO0VsQnN6REY7O0VrQnZ2RFE7SUFoRU47SUFDQTtFbEIyekRGOztFa0I1dkRRO0lBaEVOO0lBQ0E7RWxCZzBERjs7RWtCandEUTtJQWhFTjtJQUNBO0VsQnEwREY7O0VrQnR3RFE7SUFoRU47SUFDQTtFbEIwMERGOztFa0Izd0RRO0lBaEVOO0lBQ0E7RWxCKzBERjs7RWtCaHhEUTtJQWhFTjtJQUNBO0VsQm8xREY7O0VrQjd3RFU7SUF4RFY7RWxCeTBEQTs7RWtCanhEVTtJQXhEVjtFbEI2MERBOztFa0JyeERVO0lBeERWO0VsQmkxREE7O0VrQnp4RFU7SUF4RFY7RWxCcTFEQTs7RWtCN3hEVTtJQXhEVjtFbEJ5MURBOztFa0JqeURVO0lBeERWO0VsQjYxREE7O0VrQnJ5RFU7SUF4RFY7RWxCaTJEQTs7RWtCenlEVTtJQXhEVjtFbEJxMkRBOztFa0I3eURVO0lBeERWO0VsQnkyREE7O0VrQmp6RFU7SUF4RFY7RWxCNjJEQTs7RWtCcnpEVTtJQXhEVjtFbEJpM0RBOztFa0J6ekRVO0lBeERWO0VsQnEzREE7O0VrQmx6RE07O0lBRUU7RWxCcXpEUjs7RWtCbHpETTs7SUFFRTtFbEJxekRSOztFa0I1ekRNOztJQUVFO0VsQit6RFI7O0VrQjV6RE07O0lBRUU7RWxCK3pEUjs7RWtCdDBETTs7SUFFRTtFbEJ5MERSOztFa0J0MERNOztJQUVFO0VsQnkwRFI7O0VrQmgxRE07O0lBRUU7RWxCbTFEUjs7RWtCaDFETTs7SUFFRTtFbEJtMURSOztFa0IxMURNOztJQUVFO0VsQjYxRFI7O0VrQjExRE07O0lBRUU7RWxCNjFEUjs7RWtCcDJETTs7SUFFRTtFbEJ1MkRSOztFa0JwMkRNOztJQUVFO0VsQnUyRFI7QUFDRjtBbUI3OURBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0EsbUJYdVdPO0VXdFdQLGNYQ1M7RVdBVCxtQlhrcUI0QjtFV2pxQjVCLHFCWFBTO0FScStEWDtBbUJ2OURFO0VBQ0U7RUFDQTtFQUNBLHdCWHllMEI7RVd4ZTFCO0FuQnk5REo7QW1CdDlERTtFQUNFO0FuQnc5REo7QW1CcjlERTtFQUNFO0FuQnU5REo7QW1CbjlERTtFQUNFO0FuQnE5REo7O0FtQjU4REE7RUFDRTtBbkIrOERGOztBbUJyOERFO0VBQ0U7QW5CdzhESjs7QW1CejdERTtFQUNFO0FuQjQ3REo7QW1CejdESTtFQUNFO0FuQjI3RE47O0FtQnA3REU7RUFDRTtBbkJ1N0RKO0FtQnA3REU7RUFDRTtBbkJzN0RKOztBbUI3NkRFO0VBQ0U7RUFDQTtBbkJnN0RKOztBbUJ4NkRBO0VBQ0U7RUFDQTtBbkIyNkRGOztBbUJuNkRFO0VBQ0U7RUFDQTtBbkJzNkRKOztBb0JsaUVFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxtQkFiUTtFQWNSO0FwQitoRUo7O0FvQjlpRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLG1CQWJRO0VBY1I7QXBCMmlFSjs7QW9CMWpFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsbUJBYlE7RUFjUjtBcEJ1akVKOztBb0J0a0VFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxtQkFiUTtFQWNSO0FwQm1rRUo7O0FvQmxsRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLG1CQWJRO0VBY1I7QXBCK2tFSjs7QW9COWxFRTtFQU1FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsbUJBYlE7RUFjUjtBcEIybEVKOztBb0IxbUVFO0VBTUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxtQkFiUTtFQWNSO0FwQnVtRUo7O0FvQnRuRUU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLHlCQWJRO0VBY1I7QXBCbW5FSjs7QW1CLytESTtFQUNFO0VBQ0E7QW5Cay9ETjs7QWdCN2pFSTtFR3lFQTtJQUNFO0lBQ0E7RW5Cdy9ESjtBQUNGO0FnQnBrRUk7RUd5RUE7SUFDRTtJQUNBO0VuQjgvREo7QUFDRjtBZ0Ixa0VJO0VHeUVBO0lBQ0U7SUFDQTtFbkJvZ0VKO0FBQ0Y7QWdCaGxFSTtFR3lFQTtJQUNFO0lBQ0E7RW5CMGdFSjtBQUNGO0FnQnRsRUk7RUd5RUE7SUFDRTtJQUNBO0VuQmdoRUo7QUFDRjtBcUJwcUVBO0VBQ0UscUJid3pCc0M7QVI4MkN4Qzs7QXFCN3BFQTtFQUNFO0VBQ0E7RUFDQTtFZG9SSSxrQkFMSTtFYzNRUixnQmJna0I0QjtBUjhsRDlCOztBcUIxcEVBO0VBQ0U7RUFDQTtFZDBRSSxrQkFMSTtBUHk1RFY7O0FxQjFwRUE7RUFDRTtFQUNBO0Vkb1FJLG1CQUxJO0FQKzVEVjs7QXNCM3JFQTtFQUNFLG1CZGd6QnNDO0VEaGhCbEMsa0JBTEk7RWV2UlIsY2RLUztBUnVyRVg7O0F1QmpzRUE7RUFDRTtFQUNBO0VBQ0E7RWhCOFJJLGVBTEk7RWdCdFJSLGdCZnFrQjRCO0VlcGtCNUIsZ0JmMGtCNEI7RWV6a0I1QixjZktTO0VlSlQsb0N0QkhNO0VzQklOO0VBQ0E7RUFDQTtFZEdFO0VlSEUsd0VETUo7QXZCK3JFRjtBd0Jqc0VNO0VEaEJOO0lDaUJRO0V4Qm9zRU47QUFDRjtBdUJsc0VFO0VBQ0U7QXZCb3NFSjtBdUJsc0VJO0VBQ0U7QXZCb3NFTjtBdUIvckVFO0VBQ0UsY2ZqQk87RWVrQlAsb0N0QnpCSTtFc0IwQkoscUJmOHpCb0M7RWU3ekJwQztFQUtFLGtEZnVzQjBCO0FScy9DaEM7QXVCdHJFRTtFQUVFO0F2QnVyRUo7QXVCbnJFRTtFQUNFLGNmMUNPO0VlNENQO0F2Qm9yRUo7QXVCNXFFRTtFQUVFLHlCZjFETztFZTZEUDtBdkIycUVKO0F1QnZxRUU7RUFDRTtFQUNBO0VBQ0EsMEJmMHBCMEI7RWV6cEIxQixjZjlETztFaUJiVCx5QmpCTVM7RWV1RVA7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QmZnYjBCO0VlL2ExQjtFQ3RFRSxxSUR1RUY7QXZCeXFFSjtBd0I1dUVNO0VEdURKO0lDdERNO0V4Qit1RU47QUFDRjtBdUIzcUVFO0VBQ0UseUJmKzVCOEI7QVI4d0NsQztBdUIxcUVFO0VBQ0U7RUFDQTtFQUNBLDBCZnVvQjBCO0VldG9CMUIsY2ZqRk87RWlCYlQseUJqQk1TO0VlMEZQO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNEJmNlowQjtFZTVaMUI7RUN6RkUscUlEMEZGO0F2QjRxRUo7QXdCbHdFTTtFRDBFSjtJQ3pFTTtFeEJxd0VOO0FBQ0Y7QXVCOXFFRTtFQUNFLHlCZjQ0QjhCO0FSb3lDbEM7O0F1QnZxRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCZnlkNEI7RWV4ZDVCLGNmNUdTO0VlNkdUO0VBQ0E7RUFDQTtBdkIwcUVGO0F1QnhxRUU7RUFFRTtFQUNBO0F2QnlxRUo7O0F1QjlwRUE7RUFDRSxzQ2ZndUJzQztFZS90QnRDO0VoQm1KSSxtQkFMSTtFRTdRTjtBVGt5RUo7QXVCL3BFRTtFQUNFO0VBQ0E7RUFDQSx5QmYybEIwQjtBUnNrRDlCO0F1QjlwRUU7RUFDRTtFQUNBO0VBQ0EseUJmcWxCMEI7QVIya0Q5Qjs7QXVCNXBFQTtFQUNFLG9DZjhzQnNDO0VlN3NCdEM7RWhCZ0lJLGtCQUxJO0VFN1FOO0FUbXpFSjtBdUI3cEVFO0VBQ0U7RUFDQTtFQUNBLHVCZjRrQjBCO0FSbWxEOUI7QXVCNXBFRTtFQUNFO0VBQ0E7RUFDQSx1QmZza0IwQjtBUndsRDlCOztBdUJ0cEVFO0VBQ0UsdUNmcXJCb0M7QVJvK0N4QztBdUJ0cEVFO0VBQ0Usc0Nma3JCb0M7QVJzK0N4QztBdUJycEVFO0VBQ0Usb0NmK3FCb0M7QVJ3K0N4Qzs7QXVCbHBFQTtFQUNFLFdmNnFCc0M7RWU1cUJ0QztFQUNBLGlCZjRoQjRCO0FSeW5EOUI7QXVCbnBFRTtFQUNFO0F2QnFwRUo7QXVCbHBFRTtFQUNFO0VkL0xBO0FUbzFFSjtBdUJqcEVFO0VBQ0U7RWRwTUE7QVR3MUVKOztBMEJ0MkVBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RW5CMlJJLGVBTEk7RW1CblJSLGdCbEJra0I0QjtFa0Jqa0I1QixnQmxCdWtCNEI7RWtCdGtCNUIsY2xCRVM7RWtCRFQsb0N6Qk5NO0V5Qk9OO0VBQ0E7RUFDQSx5Q2xCZzdCa0M7RWtCLzZCbEMsMEJsQmc3QmtDO0VrQi82QmxDO0VqQkZFO0VlSEUsd0VFUUo7RUFDQTtBMUJzMkVGO0F3QjMyRU07RUVmTjtJRmdCUTtFeEI4MkVOO0FBQ0Y7QTBCejJFRTtFQUNFLHFCbEJzMEJvQztFa0JyMEJwQztFQUtFLGtEbEJpN0I0QjtBUnM3Q2xDO0EwQm4yRUU7RUFFRSxzQmxCZ3NCMEI7RWtCL3JCMUI7QTFCbzJFSjtBMEJqMkVFO0VBRUUseUJsQnBDTztBUnM0RVg7QTBCNzFFRTtFQUNFO0VBQ0E7QTFCKzFFSjs7QTBCMzFFQTtFQUNFLG9CbEJ5ckI0QjtFa0J4ckI1Qix1QmxCd3JCNEI7RWtCdnJCNUIsb0JsQndyQjRCO0VEL2N4QixtQkFMSTtFRTdRTjtBVHk0RUo7O0EwQjMxRUE7RUFDRSxtQmxCcXJCNEI7RWtCcHJCNUIsc0JsQm9yQjRCO0VrQm5yQjVCLGtCbEJvckI0QjtFRG5keEIsa0JBTEk7RUU3UU47QVRpNUVKOztBMkJoNkVBO0VBQ0U7RUFDQSxrQm5CcTNCd0M7RW1CcDNCeEMsbUJuQnEzQndDO0VtQnAzQnhDLHVCbkJxM0J3QztBUjhpRDFDO0EyQmo2RUU7RUFDRTtFQUNBO0EzQm02RUo7O0EyQi81RUE7RUFDRSxVbkJ5MkJ3QztFbUJ4MkJ4QyxXbkJ3MkJ3QztFbUJ2MkJ4QztFQUNBO0VBQ0Esb0MxQlhNO0UwQllOO0VBQ0E7RUFDQTtFQUNBLHFDbkI0MkJ3QztFbUIzMkJ4QztFQUNBO0EzQms2RUY7QTJCLzVFRTtFbEJYRTtBVDY2RUo7QTJCOTVFRTtFQUVFLGtCbkJtMkJzQztBUjRqRDFDO0EyQjU1RUU7RUFDRSx1Qm5CMDFCc0M7QVJva0QxQztBMkIzNUVFO0VBQ0UscUJuQnN6Qm9DO0VtQnJ6QnBDO0VBQ0Esa0RuQm1zQjRCO0FSMHREaEM7QTJCMTVFRTtFQUNFLHlCbkJaTTtFbUJhTixxQm5CYk07QVJ5NkVWO0EyQjE1RUk7RUFJSTtBM0J5NUVSO0EyQnI1RUk7RUFJSTtBM0JvNUVSO0EyQi80RUU7RUFDRSx5Qm5CakNNO0VtQmtDTixxQm5CbENNO0VtQnVDSjtBM0I2NEVOO0EyQno0RUU7RUFDRTtFQUNBO0VBQ0EsWW5CazBCdUM7QVJ5a0QzQztBMkJwNEVJO0VBQ0UsWW5CMHpCcUM7QVI0a0QzQzs7QTJCeDNFQTtFQUNFLG1CbkJxekJnQztBUnNrRGxDO0EyQnozRUU7RUFDRSxVbkJpekI4QjtFbUJoekI5QjtFQUNBO0VBQ0E7RWxCOUZBO0VlSEUsaURHbUdGO0EzQjIzRUo7QXdCMTlFTTtFR3lGSjtJSHhGTTtFeEI2OUVOO0FBQ0Y7QTJCOTNFSTtFQUNFO0EzQmc0RU47QTJCNzNFSTtFQUNFLGlDbkJnekI0QjtFbUIzeUIxQjtBM0IyM0VSOztBMkJyM0VBO0VBQ0U7RUFDQSxrQm5CbXhCZ0M7QVJxbURsQzs7QTJCcjNFQTtFQUNFO0VBQ0E7RUFDQTtBM0J3M0VGO0EyQnAzRUk7RUFDRTtFQUNBO0VBQ0EsYW5CcW9Cd0I7QVJpdkQ5Qjs7QTRCcGdGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCdWdGRjtBNEJyZ0ZFO0VBQ0U7QTVCdWdGSjtBNEJuZ0ZJO0VBQTBCLGdGcEI4OUJhO0FSd2lEM0M7QTRCcmdGSTtFQUEwQixnRnBCNjlCYTtBUjJpRDNDO0E0QnJnRkU7RUFDRTtBNUJ1Z0ZKO0E0QnBnRkU7RUFDRSxXcEIrOEJ1QztFb0I5OEJ2QyxZcEI4OEJ1QztFb0I3OEJ2QztFSHpCRix5QmpCa0NRO0VvQlBOLFNwQjg4QnVDO0VDMTlCdkM7RWVIRSw0R0lrQkY7RUFDQTtBNUJxZ0ZKO0F3QnBoRk07RUlNSjtJSkxNO0V4QnVoRk47QUFDRjtBNEJ4Z0ZJO0VIakNGLHlCakI4K0J5QztBUjhqRDNDO0E0QnRnRkU7RUFDRSxXcEJ3N0I4QjtFb0J2N0I5QixjcEJ3N0I4QjtFb0J2N0I5QjtFQUNBLGVwQnU3QjhCO0VvQnQ3QjlCLHlCcEJwQ087RW9CcUNQO0VuQjdCQTtBVHNpRko7QTRCcGdGRTtFQUNFLFdwQm83QnVDO0VvQm43QnZDLFlwQm03QnVDO0VpQnQrQnpDLHlCakJrQ1E7RW9CbUJOLFNwQm83QnVDO0VDMTlCdkM7RWVIRSw0R0k0Q0Y7RUFDQTtBNUJxZ0ZKO0F3QjlpRk07RUlpQ0o7SUpoQ007RXhCaWpGTjtBQUNGO0E0QnhnRkk7RUgzREYseUJqQjgrQnlDO0FSd2xEM0M7QTRCdGdGRTtFQUNFLFdwQjg1QjhCO0VvQjc1QjlCLGNwQjg1QjhCO0VvQjc1QjlCO0VBQ0EsZXBCNjVCOEI7RW9CNTVCOUIseUJwQjlETztFb0IrRFA7RW5CdkRBO0FUZ2tGSjtBNEJwZ0ZFO0VBQ0U7QTVCc2dGSjtBNEJwZ0ZJO0VBQ0UseUJwQnRFSztBUjRrRlg7QTRCbmdGSTtFQUNFLHlCcEIxRUs7QVIra0ZYOztBNkI1bEZBO0VBQ0U7QTdCK2xGRjtBNkI3bEZFOztFQUVFLDBCckJ5L0I4QjtFcUJ4L0I5QixpQnJCeS9COEI7QVJzbURsQztBNkI1bEZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFTERFLGdFS0VGO0E3QjhsRko7QXdCNWxGTTtFS1hKO0lMWU07RXhCK2xGTjtBQUNGO0E2Qi9sRkU7RUFDRTtBN0JpbUZKO0E2Qi9sRkk7RUFDRTtBN0JpbUZOO0E2QjlsRkk7RUFFRSxxQnJCbStCNEI7RXFCbCtCNUIsd0JyQm0rQjRCO0FSNG5EbEM7QTZCNWxGSTtFQUNFLHFCckI4OUI0QjtFcUI3OUI1Qix3QnJCODlCNEI7QVJnb0RsQztBNkIxbEZFO0VBQ0UscUJyQnc5QjhCO0VxQnY5QjlCLHdCckJ3OUI4QjtBUm9vRGxDO0E2QnRsRkk7OztFQUNFLGFyQms5QjRCO0VxQmo5QjVCLDhEckJrOUI0QjtBUndvRGxDO0E2QnJsRkk7RUFDRSxhckIyOEI0QjtFcUIxOEI1Qiw4RHJCMjhCNEI7QVI0b0RsQzs7QThCN29GQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlCZ3BGRjtBOEI5b0ZFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0E5QmdwRko7QThCNW9GRTs7RUFFRTtBOUI4b0ZKO0E4QnhvRkU7RUFDRTtFQUNBO0E5QjBvRko7QThCeG9GSTtFQUNFO0E5QjBvRk47O0E4Qi9uRkE7RUFDRTtFQUNBO0VBQ0E7RXZCc1BJLGVBTEk7RXVCL09SLGdCdEI4aEI0QjtFc0I3aEI1QixnQnRCbWlCNEI7RXNCbGlCNUIsY3RCbENTO0VzQm1DVDtFQUNBO0VBQ0EseUJ0QjVDUztFc0I2Q1Q7RXJCcENFO0FUdXFGSjs7QThCem5GQTs7OztFQUlFO0V2QmdPSSxrQkFMSTtFRTdRTjtBVGdyRko7O0E4QnpuRkE7Ozs7RUFJRTtFdkJ1TkksbUJBTEk7RUU3UU47QVR5ckZKOztBOEJ6bkZBOztFQUVFO0E5QjRuRkY7O0E4Qi9tRkk7O0VyQi9EQTtFQUNBO0FUbXJGSjtBOEI5bUZJOztFckJ0RUE7RUFDQTtBVHdyRko7QThCeG1GRTtFQUNFO0VyQnBFQTtFQUNBO0FUK3FGSjs7QStCeHNGRTtFQUNFO0VBQ0E7RUFDQSxtQnZCeXhCb0M7RURoaEJsQyxrQkFMSTtFd0JqUU4sY3ZCMC9CcUI7QVJndER6Qjs7QStCdnNGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V4QjRQRSxtQkFMSTtFd0JwUE4sbUJBdkJjO0VBd0JkLHlDQXZCaUI7RXRCSGpCO0FUb3VGSjs7QStCcnNGSTs7OztFQUVFO0EvQjBzRk47O0ErQnh2Rkk7RUFvREUscUJ2Qis5Qm1CO0V1QjU5QmpCLG9DdkIreUJnQztFdUI5eUJoQztFQUNBO0VBQ0E7RUFDQTtBL0Jzc0ZSO0ErQm5zRk07RUFDRSxxQnZCbzlCaUI7RXVCbjlCakIsa0RBL0NhO0EvQm92RnJCOztBK0Jyd0ZJO0VBeUVJLG9DdkI2eEJnQztFdUI1eEJoQztBL0Jnc0ZSOztBK0Ixd0ZJO0VBaUZFLHFCdkJrOEJtQjtBUjJ2RHpCO0ErQjFyRlE7RUFFRSx1QnZCNDJCOEI7RXVCMzJCOUI7RUFDQTtFQUNBO0EvQjJyRlY7QStCdnJGTTtFQUNFLHFCdkJxN0JpQjtFdUJwN0JqQixrREE5RWE7QS9CdXdGckI7O0ErQnh4Rkk7RUFzR0UscUJ2QjY2Qm1CO0FSeXdEekI7QStCcHJGTTtFQUNFLHlCdkIwNkJpQjtBUjR3RHpCO0ErQm5yRk07RUFDRSxrREE1RmE7QS9CaXhGckI7QStCbHJGTTtFQUNFLGN2Qms2QmlCO0FSa3hEekI7O0ErQi9xRkk7RUFDRTtBL0JrckZOOztBK0J6eUZJOzs7RUErSEk7QS9CZ3JGUjtBK0I1cUZNOzs7RUFDRTtBL0JnckZSOztBK0JqeUZFO0VBQ0U7RUFDQTtFQUNBLG1CdkJ5eEJvQztFRGhoQmxDLGtCQUxJO0V3QmpRTixjdkIwL0JxQjtBUnl5RHpCOztBK0JoeUZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhCNFBFLG1CQUxJO0V3QnBQTix5QkF2QmM7RUF3QmQsd0NBdkJpQjtFdEJIakI7QVQ2ekZKOztBK0I5eEZJOzs7O0VBRUU7QS9CbXlGTjs7QStCajFGSTtFQW9ERSxxQnZCKzlCbUI7RXVCNTlCakIsb0N2Qit5QmdDO0V1Qjl5QmhDO0VBQ0E7RUFDQTtFQUNBO0EvQit4RlI7QStCNXhGTTtFQUNFLHFCdkJvOUJpQjtFdUJuOUJqQixpREEvQ2E7QS9CNjBGckI7O0ErQjkxRkk7RUF5RUksb0N2QjZ4QmdDO0V1QjV4QmhDO0EvQnl4RlI7O0ErQm4yRkk7RUFpRkUscUJ2Qms4Qm1CO0FSbzFEekI7QStCbnhGUTtFQUVFLHVCdkI0MkI4QjtFdUIzMkI5QjtFQUNBO0VBQ0E7QS9Cb3hGVjtBK0JoeEZNO0VBQ0UscUJ2QnE3QmlCO0V1QnA3QmpCLGlEQTlFYTtBL0JnMkZyQjs7QStCajNGSTtFQXNHRSxxQnZCNjZCbUI7QVJrMkR6QjtBK0I3d0ZNO0VBQ0UseUJ2QjA2QmlCO0FScTJEekI7QStCNXdGTTtFQUNFLGlEQTVGYTtBL0IwMkZyQjtBK0Izd0ZNO0VBQ0UsY3ZCazZCaUI7QVIyMkR6Qjs7QStCeHdGSTtFQUNFO0EvQjJ3Rk47O0ErQmw0Rkk7OztFQWlJSTtBL0J1d0ZSO0ErQnJ3Rk07OztFQUNFO0EvQnl3RlI7O0FnQy80RkE7RUFDRTtFQUVBLGdCeEJ3a0I0QjtFd0J2a0I1QixnQnhCNmtCNEI7RXdCNWtCNUIsY3hCUVM7RXdCUFQ7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUM4R0E7RTFCc0tJLGVBTEk7RUU3UU47RWVIRSxxSVFHSjtBaENrNUZGO0F3Qmo1Rk07RVFoQk47SVJpQlE7RXhCbzVGTjtBQUNGO0FnQ3I1RkU7RUFDRSxjeEJMTztBUjQ1Rlg7QWdDbjVGRTtFQUVFO0VBQ0Esa0R4Qm90QjRCO0FSZ3NFaEM7QWdDdDRGRTtFQUdFO0VBQ0EsYXhCMHVCMEI7QVI0cEU5Qjs7QWdDMTNGRTtFQ3ZDQSx5QkFYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QVIyMkZmO0FpQ2w2RkU7RUFDRSx5QkFkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0FqQ3E3RmpCO0FpQ2o2RkU7RUFFRSx5QkFyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBakM4NUZOO0FpQzE1RkU7RUFLRSx5QkFsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0FqQzY3RmxCO0FpQ3A1Rkk7RUFLSTtBakNrNUZSO0FpQzc0RkU7RUFFRSx5QkFqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBUm00RmY7O0FnQ3g1RkU7RUN2Q0EseUJBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FSeTRGZjtBaUNoOEZFO0VBQ0UseUJBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBakNtOUZqQjtBaUMvN0ZFO0VBRUUseUJBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QWpDNDdGTjtBaUN4N0ZFO0VBS0UseUJBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBakMyOUZsQjtBaUNsN0ZJO0VBS0k7QWpDZzdGUjtBaUMzNkZFO0VBRUUseUJBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QVJpNkZmOztBZ0N0N0ZFO0VDdkNBLG1CQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBUnU2RmY7QWlDOTlGRTtFQUNFLG1CQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QWpDaS9GakI7QWlDNzlGRTtFQUVFLG1CQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0FqQzA5Rk47QWlDdDlGRTtFQUtFLG1CQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QWpDeS9GbEI7QWlDaDlGSTtFQUtJO0FqQzg4RlI7QWlDejhGRTtFQUVFLG1CQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FSKzdGZjs7QWdDcDlGRTtFQ3ZDQSxtQkFYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QVJxOEZmO0FpQzUvRkU7RUFDRSxtQkFkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0FqQytnR2pCO0FpQzMvRkU7RUFFRSxtQkFyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBakN3L0ZOO0FpQ3AvRkU7RUFLRSxtQkFsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0FqQ3VoR2xCO0FpQzkrRkk7RUFLSTtBakM0K0ZSO0FpQ3YrRkU7RUFFRSxtQkFqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBUjY5RmY7O0FnQ2wvRkU7RUN2Q0EsbUJBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FSbStGZjtBaUMxaEdFO0VBQ0UsbUJBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBakM2aUdqQjtBaUN6aEdFO0VBRUUsbUJBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QWpDc2hHTjtBaUNsaEdFO0VBS0UsbUJBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBakNxakdsQjtBaUM1Z0dJO0VBS0k7QWpDMGdHUjtBaUNyZ0dFO0VBRUUsbUJBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QVIyL0ZmOztBZ0NoaEdFO0VDdkNBLHlCQVhRO0VSTFIseUJqQjRFYTtFeUIxRGIscUJ6QjBEYTtBUmlnR2Y7QWlDeGpHRTtFQUNFLHlCQWRZO0VSUmQseUJRTW1CO0VBa0JqQixxQkFqQmE7QWpDMmtHakI7QWlDdmpHRTtFQUVFLHlCQXJCWTtFUlJkLHlCUU1tQjtFQXlCakIscUJBeEJhO0VBNkJYO0FqQ29qR047QWlDaGpHRTtFQUtFLHlCQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QWpDbWxHbEI7QWlDMWlHSTtFQUtJO0FqQ3dpR1I7QWlDbmlHRTtFQUVFLHlCQWpEZTtFQWtEZix5QnpCWVc7RXlCVFgscUJ6QlNXO0FSeWhHZjs7QWdDOWlHRTtFQ3ZDQSxtQkFYUTtFUkxSLHlCakI0RWE7RXlCMURiLHFCekIwRGE7QVIraEdmO0FpQ3RsR0U7RUFDRSxtQkFkWTtFUlJkLHlCUU1tQjtFQWtCakIscUJBakJhO0FqQ3ltR2pCO0FpQ3JsR0U7RUFFRSxtQkFyQlk7RVJSZCx5QlFNbUI7RUF5QmpCLHFCQXhCYTtFQTZCWDtBakNrbEdOO0FpQzlrR0U7RUFLRSxtQkFsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0FqQ2luR2xCO0FpQ3hrR0k7RUFLSTtBakNza0dSO0FpQ2prR0U7RUFFRSxtQkFqRGU7RUFrRGYseUJ6QllXO0V5QlRYLHFCekJTVztBUnVqR2Y7O0FnQzVrR0U7RUN2Q0EseUJBWFE7RVJMUix5QmpCNEVhO0V5QjFEYixxQnpCMERhO0FSNmpHZjtBaUNwbkdFO0VBQ0UseUJBZFk7RVJSZCx5QlFNbUI7RUFrQmpCLHFCQWpCYTtBakN1b0dqQjtBaUNubkdFO0VBRUUseUJBckJZO0VSUmQseUJRTW1CO0VBeUJqQixxQkF4QmE7RUE2Qlg7QWpDZ25HTjtBaUM1bUdFO0VBS0UseUJBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBakMrb0dsQjtBaUN0bUdJO0VBS0k7QWpDb21HUjtBaUMvbEdFO0VBRUUseUJBakRlO0VBa0RmLHlCekJZVztFeUJUWCxxQnpCU1c7QVJxbEdmOztBZ0NwbUdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUjBsR2Y7QWlDbmxHRTtFQUNFLHlCQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUitsR2Y7QWlDbGxHRTtFQUVFO0FqQ21sR0o7QWlDaGxHRTtFQUtFLHlCQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSdW1HZjtBaUM1a0dJO0VBS0k7QWpDMGtHUjtBaUNya0dFO0VBRUUsY3pCdkNXO0V5QndDWDtBakNza0dKOztBZ0M3bkdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUm1uR2Y7QWlDNW1HRTtFQUNFLHlCQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUnduR2Y7QWlDM21HRTtFQUVFO0FqQzRtR0o7QWlDem1HRTtFQUtFLHlCQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSZ29HZjtBaUNybUdJO0VBS0k7QWpDbW1HUjtBaUM5bEdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakMrbEdKOztBZ0N0cEdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUjRvR2Y7QWlDcm9HRTtFQUNFLG1CQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUmlwR2Y7QWlDcG9HRTtFQUVFO0FqQ3FvR0o7QWlDbG9HRTtFQUtFLG1CQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSeXBHZjtBaUM5bkdJO0VBS0k7QWpDNG5HUjtBaUN2bkdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakN3bkdKOztBZ0MvcUdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUnFxR2Y7QWlDOXBHRTtFQUNFLG1CQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUjBxR2Y7QWlDN3BHRTtFQUVFO0FqQzhwR0o7QWlDM3BHRTtFQUtFLG1CQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSa3JHZjtBaUN2cEdJO0VBS0k7QWpDcXBHUjtBaUNocEdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakNpcEdKOztBZ0N4c0dFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUjhyR2Y7QWlDdnJHRTtFQUNFLG1CQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUm1zR2Y7QWlDdHJHRTtFQUVFO0FqQ3VyR0o7QWlDcHJHRTtFQUtFLG1CQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSMnNHZjtBaUNockdJO0VBS0k7QWpDOHFHUjtBaUN6cUdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakMwcUdKOztBZ0NqdUdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUnV0R2Y7QWlDaHRHRTtFQUNFLHlCQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUjR0R2Y7QWlDL3NHRTtFQUVFO0FqQ2d0R0o7QWlDN3NHRTtFQUtFLHlCQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSb3VHZjtBaUN6c0dJO0VBS0k7QWpDdXNHUjtBaUNsc0dFO0VBRUUsY3pCdkNXO0V5QndDWDtBakNtc0dKOztBZ0MxdkdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUmd2R2Y7QWlDenVHRTtFQUNFLG1CQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUnF2R2Y7QWlDeHVHRTtFQUVFO0FqQ3l1R0o7QWlDdHVHRTtFQUtFLG1CQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSNnZHZjtBaUNsdUdJO0VBS0k7QWpDZ3VHUjtBaUMzdEdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakM0dEdKOztBZ0NueEdFO0VDbUJBLGN6QkphO0V5QktiLHFCekJMYTtBUnl3R2Y7QWlDbHdHRTtFQUNFLHlCQVRZO0VBVVoseUJ6QlRXO0V5QlVYLHFCekJWVztBUjh3R2Y7QWlDandHRTtFQUVFO0FqQ2t3R0o7QWlDL3ZHRTtFQUtFLHlCQXJCYTtFQXNCYix5QnpCeEJXO0V5QnlCWCxxQnpCekJXO0FSc3hHZjtBaUMzdkdJO0VBS0k7QWpDeXZHUjtBaUNwdkdFO0VBRUUsY3pCdkNXO0V5QndDWDtBakNxdkdKOztBZ0NoeUdBO0VBQ0UsZ0J4QmlnQjRCO0V3QmhnQjVCLGN4QnpDUTtFd0IwQ1IsMEJ4QjZXd0M7QVJzN0YxQztBZ0NqeUdFO0VBQ0UsY3hCNFdzQztBUnU3RjFDO0FnQzN4R0U7RUFFRSxjeEIvRU87QVIyMkdYOztBZ0NqeEdBO0VDdUJFO0UxQnNLSSxrQkFMSTtFRTdRTjtBVDQyR0o7O0FnQ254R0E7RUNtQkU7RTFCc0tJLG1CQUxJO0VFN1FOO0FUazNHSjs7QWtDcjRHQTtFVmdCTSxnQ1VmSjtBbEN3NEdGO0F3QnIzR007RVVwQk47SVZxQlE7RXhCdzNHTjtBQUNGO0FrQzM0R0U7RUFDRTtBbEM2NEdKOztBa0N2NEdFO0VBQ0U7QWxDMDRHSjs7QWtDdDRHQTtFQUNFO0VBQ0E7RVZESSw2QlVFSjtBbEN5NEdGO0F3QnY0R007RVVMTjtJVk1RO0V4QjA0R047QUFDRjtBa0M1NEdFO0VBQ0U7RUFDQTtFVk5FLDRCVU9GO0FsQzg0R0o7QXdCajVHTTtFVUFKO0lWQ007RXhCbzVHTjtBQUNGOztBbUN6NkdBOzs7O0VBSUU7QW5DNDZHRjs7QW1DejZHQTtFQUNFO0FuQzQ2R0Y7QW9DdjVHSTtFQUNFO0VBQ0Esb0I1QnFnQndCO0U0QnBnQnhCLHVCNUJtZ0J3QjtFNEJsZ0J4QjtFQWhDSjtFQUNBO0VBQ0E7RUFDQTtBcEMwN0dGO0FvQ3I0R0k7RUFDRTtBcEN1NEdOOztBbUNsN0dBO0VBQ0U7RUFDQSxhM0J5aENrQztFMkJ4aENsQztFQUNBLGdCM0IrbUNrQztFMkI5bUNsQztFQUNBO0U1QitRSSxlQUxJO0U0QnhRUixjM0JQUztFMkJRVDtFQUNBO0VBQ0Esb0NsQ2pCTTtFa0NrQk47RUFDQTtFMUJWRTtBVGc4R0o7QW1DbDdHRTtFQUNFO0VBQ0E7RUFDQSxvQjNCa21DZ0M7QVJrMUVwQzs7QW1DeDZHSTtFQUNFO0FuQzI2R047QW1DejZHTTtFQUNFO0VBQ0E7QW5DMjZHUjs7QW1DdjZHSTtFQUNFO0FuQzA2R047QW1DeDZHTTtFQUNFO0VBQ0E7QW5DMDZHUjs7QWdCejZHSTtFbUJmQTtJQUNFO0VuQzQ3R0o7RW1DMTdHSTtJQUNFO0lBQ0E7RW5DNDdHTjs7RW1DeDdHRTtJQUNFO0VuQzI3R0o7RW1DejdHSTtJQUNFO0lBQ0E7RW5DMjdHTjtBQUNGO0FnQjM3R0k7RW1CZkE7SUFDRTtFbkM2OEdKO0VtQzM4R0k7SUFDRTtJQUNBO0VuQzY4R047O0VtQ3o4R0U7SUFDRTtFbkM0OEdKO0VtQzE4R0k7SUFDRTtJQUNBO0VuQzQ4R047QUFDRjtBZ0I1OEdJO0VtQmZBO0lBQ0U7RW5DODlHSjtFbUM1OUdJO0lBQ0U7SUFDQTtFbkM4OUdOOztFbUMxOUdFO0lBQ0U7RW5DNjlHSjtFbUMzOUdJO0lBQ0U7SUFDQTtFbkM2OUdOO0FBQ0Y7QWdCNzlHSTtFbUJmQTtJQUNFO0VuQysrR0o7RW1DNytHSTtJQUNFO0lBQ0E7RW5DKytHTjs7RW1DMytHRTtJQUNFO0VuQzgrR0o7RW1DNStHSTtJQUNFO0lBQ0E7RW5DOCtHTjtBQUNGO0FnQjkrR0k7RW1CZkE7SUFDRTtFbkNnZ0hKO0VtQzkvR0k7SUFDRTtJQUNBO0VuQ2dnSE47O0VtQzUvR0U7SUFDRTtFbkMrL0dKO0VtQzcvR0k7SUFDRTtJQUNBO0VuQysvR047QUFDRjtBbUN0L0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsdUIzQjBqQ2dDO0FSODdFcEM7QW9DdGlISTtFQUNFO0VBQ0Esb0I1QnFnQndCO0U0QnBnQnhCLHVCNUJtZ0J3QjtFNEJsZ0J4QjtFQXpCSjtFQUNBO0VBQ0E7RUFDQTtBcENra0hGO0FvQ3BoSEk7RUFDRTtBcENzaEhOOztBbUM1L0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxxQjNCNGlDZ0M7QVJtOUVwQztBb0MzakhJO0VBQ0U7RUFDQSxvQjVCcWdCd0I7RTRCcGdCeEIsdUI1Qm1nQndCO0U0QmxnQnhCO0VBbEJKO0VBQ0E7RUFDQTtFQUNBO0FwQ2dsSEY7QW9DemlISTtFQUNFO0FwQzJpSE47QW1DdmdISTtFQUNFO0FuQ3lnSE47O0FtQ25nSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCM0IyaENnQztBUjIrRXBDO0FvQ25sSEk7RUFDRTtFQUNBLG9CNUJxZ0J3QjtFNEJwZ0J4Qix1QjVCbWdCd0I7RTRCbGdCeEI7QXBDcWxITjtBb0Mxa0hNO0VBQ0U7QXBDNGtIUjtBb0N6a0hNO0VBQ0U7RUFDQSxxQjVCa2ZzQjtFNEJqZnRCLHVCNUJnZnNCO0U0Qi9ldEI7RUE5Qk47RUFDQTtFQUNBO0FwQzBtSEY7QW9DemtISTtFQUNFO0FwQzJrSE47QW1DdGhISTtFQUNFO0FuQ3doSE47O0FtQ2poSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkNvaEhGOztBbUM5Z0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjNCd2M0QjtFMkJ2YzVCLGMzQnZIUztFMkJ3SFQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkNpaEhGO0FtQ25nSEU7RUFFRSxjM0JzL0JnQztFaUIvb0NsQyx5QmpCTVM7QVJ3cEhYO0FtQ2hnSEU7RUFFRSx5QmxDMUpJO0VrQzJKSjtFVmpLRix5QmpCa0NRO0FSaW9IVjtBbUM5L0dFO0VBRUUsYzNCOUpPO0UyQitKUDtFQUNBO0FuQysvR0o7O0FtQ3ovR0E7RUFDRTtBbkM0L0dGOztBbUN4L0dBO0VBQ0U7RUFDQSxvQjNCcStCa0M7RTJCcCtCbEM7RTVCMEdJLG1CQUxJO0U0Qm5HUixjM0IvS1M7RTJCZ0xUO0FuQzIvR0Y7O0FtQ3YvR0E7RUFDRTtFQUNBO0VBQ0EsYzNCcExTO0FSOHFIWDs7QW1DdC9HQTtFQUNFLGMzQi9MUztFMkJnTVQseUIzQjNMUztFMkI0TFQsaUMzQjg3QmtDO0FSMmpGcEM7QW1DdC9HRTtFQUNFLGMzQnJNTztBUjZySFg7QW1DdC9HSTtFQUVFLHlCbEMxTUU7RXdCTk4sMkNqQnNxQ2tDO0FSa2lGcEM7QW1DcC9HSTtFQUVFLHlCbENoTkU7RXdCTk4seUJqQmtDUTtBUjBxSFY7QW1DbC9HSTtFQUVFLGMzQm5OSztBUnNzSFg7QW1DLytHRTtFQUNFLGlDM0JxNkJnQztBUjRrRnBDO0FtQzkrR0U7RUFDRSxjM0I5Tk87QVI4c0hYO0FtQzcrR0U7RUFDRSxjM0JoT087QVIrc0hYOztBcUMzdEhBOztFQUVFO0VBQ0E7RUFDQTtBckM4dEhGO0FxQzV0SEU7O0VBQ0U7RUFDQTtBckMrdEhKO0FxQzF0SEU7Ozs7Ozs7Ozs7OztFQU1FO0FyQ2t1SEo7O0FxQzd0SEE7RUFDRTtFQUNBO0VBQ0E7QXJDZ3VIRjtBcUM5dEhFO0VBQ0U7QXJDZ3VISjs7QXFDMXRIRTs7RUFFRTtBckM2dEhKO0FxQ3p0SEU7O0U1QlJFO0VBQ0E7QVRxdUhKO0FxQ3J0SEU7OztFNUJIRTtFQUNBO0FUNnRISjs7QXFDeHNIQTtFQUNFO0VBQ0E7QXJDMnNIRjtBcUN6c0hFO0VBR0U7QXJDeXNISjtBcUN0c0hFO0VBQ0U7QXJDd3NISjs7QXFDcHNIQTtFQUNFO0VBQ0E7QXJDdXNIRjs7QXFDcHNIQTtFQUNFO0VBQ0E7QXJDdXNIRjs7QXFDbnJIQTtFQUNFO0VBQ0E7RUFDQTtBckNzckhGO0FxQ3BySEU7O0VBRUU7QXJDc3JISjtBcUNuckhFOztFQUVFO0FyQ3FySEo7QXFDanJIRTs7RTVCdkZFO0VBQ0E7QVQ0d0hKO0FxQ2pySEU7O0U1QjFHRTtFQUNBO0FUK3hISjs7QXNDdnpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRDMHpIRjs7QXNDdnpIQTtFQUNFO0VBQ0E7RUFHQSxjOUJvQlE7RThCbkJSO0VkSEksdUdjSUo7QXRDd3pIRjtBd0J4ekhNO0VjUE47SWRRUTtFeEIyekhOO0FBQ0Y7QXNDM3pIRTtFQUVFLGM5QnVhc0M7QVJxNUcxQztBc0N2ekhFO0VBQ0UsYzlCaEJPO0U4QmlCUDtFQUNBO0F0Q3l6SEo7O0FzQ2p6SEE7RUFDRTtBdENvekhGO0FzQ2x6SEU7RUFDRTtFQUNBO0VBQ0E7RTdCbEJBO0VBQ0E7QVR1MEhKO0FzQ256SEk7RUFFRSxxQzlCbWhDOEI7RThCamhDOUI7QXRDbXpITjtBc0NoekhJO0VBQ0UsYzlCM0NLO0U4QjRDTDtFQUNBO0F0Q2t6SE47QXNDOXlIRTs7RUFFRSxjOUJsRE87RThCbURQLG9DckN4REk7RXFDeURKLGdEOUJzZ0NnQztBUjB5RnBDO0FzQzd5SEU7RUFFRTtFN0I1Q0E7RUFDQTtBVDIxSEo7O0FzQ3B5SEU7RUFDRTtFQUNBO0U3Qm5FQTtBVDIySEo7QXNDcHlIRTs7RUFFRSx5QnJDbEZJO0V3Qk5OLHlCakJrQ1E7QVI2MUhWOztBc0M1eEhFOztFQUVFO0VBQ0E7QXRDK3hISjs7QXNDMXhIRTs7RUFFRTtFQUNBO0VBQ0E7QXRDNnhISjs7QXNDdnhIRTs7RUFDRTtBdEMyeEhKOztBc0NqeEhFO0VBQ0U7QXRDb3hISjtBc0NseEhFO0VBQ0U7QXRDb3hISjs7QXVDNTRIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQi9COGpDa0M7RStCNWpDbEMsc0IvQjRqQ2tDO0FSazFGcEM7QXVDdjRIRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0F2Qys0SEo7QXVDMzNIQTtFQUNFLHNCL0JxaUNrQztFK0JwaUNsQyx5Qi9Cb2lDa0M7RStCbmlDbEMsa0IvQm9pQ2tDO0VEenpCOUIsa0JBTEk7RWdDcE9SO0VBQ0E7QXZDNjNIRjtBdUNoM0hBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNrM0hGO0F1Q2gzSEU7RUFDRTtFQUNBO0F2Q2szSEo7QXVDLzJIRTtFQUNFO0F2Q2kzSEo7O0F1Q3gySEE7RUFDRSxtQi9CeTlCa0M7RStCeDlCbEMsc0IvQnc5QmtDO0FSbTVGcEM7O0F1Qy8xSEE7RUFDRTtFQUNBO0VBR0E7QXZDZzJIRjs7QXVDNTFIQTtFQUNFO0VoQzZLSSxrQkFMSTtFZ0N0S1I7RUFDQTtFQUNBO0U5QnpHRTtFZUhFLHdDZThHSjtBdkMrMUhGO0F3Qno4SE07RWVtR047SWZsR1E7RXhCNDhITjtBQUNGO0F1Q2wySEU7RUFDRTtBdkNvMkhKO0F1Q2oySEU7RUFDRTtFQUNBO0VBQ0E7QXZDbTJISjs7QXVDNzFIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Q2cySEY7O0F1QzcxSEE7RUFDRTtFQUNBO0F2Q2cySEY7O0FnQjE3SEk7RXVCc0dBO0lBRUk7SUFDQTtFdkN1MUhOO0V1Q3IxSE07SUFDRTtFdkN1MUhSO0V1Q3IxSFE7SUFDRTtFdkN1MUhWO0V1Q3AxSFE7SUFDRSxxQi9CcTZCd0I7SStCcDZCeEIsb0IvQm82QndCO0VSazdGbEM7RXVDbDFITTtJQUNFO0V2Q28xSFI7RXVDajFITTtJQUNFO0lBQ0E7RXZDbTFIUjtFdUNoMUhNO0lBQ0U7RXZDazFIUjtFdUMvMEhNO0lBQ0U7RXZDaTFIUjtFdUM5MEhNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZmhNSixnQmVpTUk7SUFDQTtFdkNnMUhSO0V1QzkwSE07O0lBRUU7SUFDQTtJQUNBO0V2Q2cxSFI7RXVDNzBITTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V2QyswSFI7QUFDRjtBZ0JoL0hJO0V1QnNHQTtJQUVJO0lBQ0E7RXZDNDRITjtFdUMxNEhNO0lBQ0U7RXZDNDRIUjtFdUMxNEhRO0lBQ0U7RXZDNDRIVjtFdUN6NEhRO0lBQ0UscUIvQnE2QndCO0krQnA2QnhCLG9CL0JvNkJ3QjtFUnUrRmxDO0V1Q3Y0SE07SUFDRTtFdkN5NEhSO0V1Q3Q0SE07SUFDRTtJQUNBO0V2Q3c0SFI7RXVDcjRITTtJQUNFO0V2Q3U0SFI7RXVDcDRITTtJQUNFO0V2Q3M0SFI7RXVDbjRITTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWZoTUosZ0JlaU1JO0lBQ0E7RXZDcTRIUjtFdUNuNEhNOztJQUVFO0lBQ0E7SUFDQTtFdkNxNEhSO0V1Q2w0SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtFdkNvNEhSO0FBQ0Y7QWdCcmlJSTtFdUJzR0E7SUFFSTtJQUNBO0V2Q2k4SE47RXVDLzdITTtJQUNFO0V2Q2k4SFI7RXVDLzdIUTtJQUNFO0V2Q2k4SFY7RXVDOTdIUTtJQUNFLHFCL0JxNkJ3QjtJK0JwNkJ4QixvQi9CbzZCd0I7RVI0aEdsQztFdUM1N0hNO0lBQ0U7RXZDODdIUjtFdUMzN0hNO0lBQ0U7SUFDQTtFdkM2N0hSO0V1QzE3SE07SUFDRTtFdkM0N0hSO0V1Q3o3SE07SUFDRTtFdkMyN0hSO0V1Q3g3SE07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmaE1KLGdCZWlNSTtJQUNBO0V2QzA3SFI7RXVDeDdITTs7SUFFRTtJQUNBO0lBQ0E7RXZDMDdIUjtFdUN2N0hNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXZDeTdIUjtBQUNGO0FnQjFsSUk7RXVCc0dBO0lBRUk7SUFDQTtFdkNzL0hOO0V1Q3AvSE07SUFDRTtFdkNzL0hSO0V1Q3AvSFE7SUFDRTtFdkNzL0hWO0V1Q24vSFE7SUFDRSxxQi9CcTZCd0I7SStCcDZCeEIsb0IvQm82QndCO0VSaWxHbEM7RXVDai9ITTtJQUNFO0V2Q20vSFI7RXVDaC9ITTtJQUNFO0lBQ0E7RXZDay9IUjtFdUMvK0hNO0lBQ0U7RXZDaS9IUjtFdUM5K0hNO0lBQ0U7RXZDZy9IUjtFdUM3K0hNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZmhNSixnQmVpTUk7SUFDQTtFdkMrK0hSO0V1QzcrSE07O0lBRUU7SUFDQTtJQUNBO0V2QysrSFI7RXVDNStITTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V2QzgrSFI7QUFDRjtBZ0Ivb0lJO0V1QnNHQTtJQUVJO0lBQ0E7RXZDMmlJTjtFdUN6aUlNO0lBQ0U7RXZDMmlJUjtFdUN6aUlRO0lBQ0U7RXZDMmlJVjtFdUN4aUlRO0lBQ0UscUIvQnE2QndCO0krQnA2QnhCLG9CL0JvNkJ3QjtFUnNvR2xDO0V1Q3RpSU07SUFDRTtFdkN3aUlSO0V1Q3JpSU07SUFDRTtJQUNBO0V2Q3VpSVI7RXVDcGlJTTtJQUNFO0V2Q3NpSVI7RXVDbmlJTTtJQUNFO0V2Q3FpSVI7RXVDbGlJTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWZoTUosZ0JlaU1JO0lBQ0E7RXZDb2lJUjtFdUNsaUlNOztJQUVFO0lBQ0E7SUFDQTtFdkNvaUlSO0V1Q2ppSU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtFdkNtaUlSO0FBQ0Y7QXVDOWxJSTtFQUVJO0VBQ0E7QXZDK2xJUjtBdUM3bElRO0VBQ0U7QXZDK2xJVjtBdUM3bElVO0VBQ0U7QXZDK2xJWjtBdUM1bElVO0VBQ0UscUIvQnE2QndCO0UrQnA2QnhCLG9CL0JvNkJ3QjtBUjByR3BDO0F1QzFsSVE7RUFDRTtBdkM0bElWO0F1Q3psSVE7RUFDRTtFQUNBO0F2QzJsSVY7QXVDeGxJUTtFQUNFO0F2QzBsSVY7QXVDdmxJUTtFQUNFO0F2Q3lsSVY7QXVDdGxJUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWZoTUosZ0JlaU1JO0VBQ0E7QXZDd2xJVjtBdUN0bElROztFQUVFO0VBQ0E7RUFDQTtBdkN3bElWO0F1Q3JsSVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkN1bElWOztBdUN6a0lFO0VBQ0UseUIvQm80QmdDO0FSd3NHcEM7QXVDMWtJSTtFQUVFLHlCL0JnNEI4QjtBUjJzR3BDO0F1Q3RrSUk7RUFDRSwwQi9CdzNCOEI7QVJndEdwQztBdUN0a0lNO0VBRUUseUIvQnEzQjRCO0FSa3RHcEM7QXVDcGtJTTtFQUNFLHlCL0JtM0I0QjtBUm10R3BDO0F1Q2xrSUk7O0VBRUUseUIvQjQyQjhCO0FSd3RHcEM7QXVDaGtJRTtFQUNFLDBCL0JxMkJnQztFK0JwMkJoQyxnQy9CeTJCZ0M7QVJ5dEdwQztBdUMvaklFO0VBQ0U7QXZDaWtJSjtBdUM5aklFO0VBQ0UsMEIvQjQxQmdDO0FSb3VHcEM7QXVDOWpJSTs7O0VBR0UseUIvQnkxQjhCO0FSdXVHcEM7O0F1Q3pqSUU7RUFDRSx5QnRDdlJJO0FEbTFJUjtBdUMxaklJO0VBRUUseUJ0QzNSRTtBRHMxSVI7QXVDdGpJSTtFQUNFLGdDL0I4ekI4QjtBUjB2R3BDO0F1Q3RqSU07RUFFRSxnQy9CMnpCNEI7QVI0dkdwQztBdUNwaklNO0VBQ0UsZ0MvQnl6QjRCO0FSNnZHcEM7QXVDbGpJSTs7RUFFRSx5QnRDL1NFO0FEbTJJUjtBdUNoaklFO0VBQ0UsZ0MvQjJ5QmdDO0UrQjF5QmhDLHNDL0IreUJnQztBUm13R3BDO0F1Qy9pSUU7RUFDRTtBdkNpaklKO0F1QzlpSUU7RUFDRSxnQy9Ca3lCZ0M7QVI4d0dwQztBdUMvaUlJOzs7RUFHRSx5QnRDalVFO0FEazNJUjs7QXdDeDNJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxvQ3ZDRE07RXVDRU47RUFDQTtFL0JNRTtBVHEzSUo7QXdDdjNJRTtFQUNFO0VBQ0E7QXhDeTNJSjtBd0N0M0lFO0VBQ0U7RUFDQTtBeEN3M0lKO0F3Q3QzSUk7RUFDRTtFL0JDRjtFQUNBO0FUdzNJSjtBd0N0M0lJO0VBQ0U7RS9CVUY7RUFDQTtBVCsySUo7QXdDbjNJRTs7RUFFRTtBeENxM0lKOztBd0NqM0lBO0VBR0U7RUFDQTtBeENrM0lGOztBd0M5MklBO0VBQ0UscUJoQ2lyQ2tDO0FSZ3NHcEM7O0F3QzkySUE7RUFDRTtFQUNBO0F4Q2kzSUY7O0F3QzkySUE7RUFDRTtBeENpM0lGOztBd0N6MklFO0VBQ0UsaUJoQzhTSztBUjhqSVQ7O0F3Q3AySUE7RUFDRTtFQUNBO0VBRUEscUNoQzJwQ2tDO0VnQzFwQ2xDO0F4Q3MySUY7QXdDcDJJRTtFL0JwRUU7QVQyNklKOztBd0NsMklBO0VBQ0U7RUFFQSxxQ2hDZ3BDa0M7RWdDL29DbEM7QXhDbzJJRjtBd0NsMklFO0UvQi9FRTtBVG83SUo7O0F3QzMxSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeEM4MUlGOztBd0NwMUlBO0VBQ0U7RUFDQTtBeEN1MUlGOztBd0NuMUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFoQ2dQTztFQ25XTDtBVDA4SUo7O0F3Q24xSUE7OztFQUdFO0F4Q3MxSUY7O0F3Q24xSUE7O0UvQnBISTtFQUNBO0FUNDhJSjs7QXdDcDFJQTs7RS9CM0dJO0VBQ0E7QVRvOElKOztBd0M3MElFO0VBQ0Usc0JoQ2tsQ2dDO0FSOHZHcEM7QWdCcDdJSTtFd0JnR0o7SUFRSTtJQUNBO0V4Q2cxSUY7RXdDNzBJRTtJQUVFO0lBQ0E7RXhDODBJSjtFd0M1MElJO0lBQ0U7SUFDQTtFeEM4MElOO0V3Q3owSU07SS9CcEpKO0lBQ0E7RVRnK0lGO0V3QzEwSVE7O0lBR0U7RXhDMjBJVjtFd0N6MElROztJQUdFO0V4QzAwSVY7RXdDdDBJTTtJL0JySko7SUFDQTtFVDg5SUY7RXdDdjBJUTs7SUFHRTtFeEN3MElWO0V3Q3QwSVE7O0lBR0U7RXhDdTBJVjtBQUNGOztBeUNyaEpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbEM0UkksZUFMSTtFa0NyUlIsY2pDTVM7RWlDTFQ7RUFDQSxvQ3hDSE07RXdDSU47RWhDS0U7RWdDSEY7RWpCQUksK0ppQkNKO0F6Q3doSkY7QXdCcmhKTTtFaUJoQk47SWpCaUJRO0V4QndoSk47QUFDRjtBeUMzaEpFO0VBQ0UsY2pDeXZDc0M7RWlDeHZDdEMseUJqQ3V2Q3NDO0VpQ3R2Q3RDO0F6QzZoSko7QXlDM2hKSTtFQUNFO0VBQ0EsMEJqQzR2Q29DO0FSaXlHMUM7QXlDeGhKRTtFQUNFO0VBQ0EsY2pDaXZDc0M7RWlDaHZDdEMsZWpDZ3ZDc0M7RWlDL3VDdEM7RUFDQTtFQUNBO0VBQ0E7RUFDQSx3QmpDMnVDc0M7RWdCbHdDcEMsc0NpQndCRjtBekMwaEpKO0F3QjlpSk07RWlCV0o7SWpCVk07RXhCaWpKTjtBQUNGO0F5QzVoSkU7RUFDRTtBekM4aEpKO0F5QzNoSkU7RUFDRTtFQUNBLHFCakNpekJvQztFaUNoekJwQztFQUNBLGtEakM4ckI0QjtBUisxSGhDOztBeUN6aEpBO0VBQ0U7QXpDNGhKRjs7QXlDemhKQTtFQUNFLG9DeENsRE07RXdDbUROO0F6QzRoSkY7QXlDMWhKRTtFaENuQ0U7RUFDQTtBVGdrSko7QXlDM2hKSTtFaEN0Q0E7RUFDQTtBVG9rSko7QXlDMWhKRTtFQUNFO0F6QzRoSko7QXlDeGhKRTtFaENsQ0U7RUFDQTtBVDZqSko7QXlDeGhKTTtFaEN0Q0Y7RUFDQTtBVGlrSko7QXlDdmhKSTtFaEMzQ0E7RUFDQTtBVHFrSko7O0F5Q3JoSkE7RUFDRTtBekN3aEpGOztBeUMvZ0pFO0VBQ0U7QXpDa2hKSjtBeUMvZ0pFO0VBQ0U7RUFDQTtFaEN4RkE7QVQwbUpKO0F5Qy9nSkk7RUFBZ0I7QXpDa2hKcEI7QXlDamhKSTtFQUFlO0F6Q29oSm5CO0F5Q2xoSkk7RWhDOUZBO0FUbW5KSjs7QTBDdG9KQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG1CbEN3L0NrQztFa0N0L0NsQztBMUN3b0pGOztBMENqb0pFO0VBQ0Usb0JsQzYrQ2dDO0FSdXBHcEM7QTBDbG9KSTtFQUNFO0VBQ0EscUJsQ3krQzhCO0VrQ3grQzlCLGNsQ0xLO0VrQ01MO0ExQ29vSk47QTBDaG9KRTtFQUNFLGNsQ1hPO0FSNm9KWDs7QTJDM3BKQTtFQUNFO0VoQ0dBO0VBQ0E7QVg0cEpGOztBMkM1cEpBO0VBQ0U7RUFDQTtFQUNBLGNuQzhCUTtFbUM3QlI7RUFDQTtFQUNBO0VuQktJLHFJbUJKSjtBM0MrcEpGO0F3QnZwSk07RW1CZk47SW5CZ0JRO0V4QjBwSk47QUFDRjtBMkNscUpFO0VBQ0U7RUFDQSxjbkMrYXNDO0VtQzdhdEMseUJuQ1JPO0VtQ1NQLHFCbkNSTztBUjJxSlg7QTJDaHFKRTtFQUNFO0VBQ0EsY25DdWFzQztFbUN0YXRDLHlCbkNmTztFbUNnQlAsVW5DNHFDZ0M7RW1DM3FDaEMsa0RuQ3N0QjRCO0FSNDhIaEM7O0EyQzdwSkU7RUFDRSxpQm5DK3BDZ0M7QVJpZ0hwQztBMkM3cEpFO0VBQ0U7RUFDQSx5QjFDNUJJO0V3Qk5OLHlCakJrQ1E7RW1DRU4scUJuQ0ZNO0FSaXFKVjtBMkM1cEpFO0VBQ0UsY25DOUJPO0VtQytCUDtFQUNBLG9DMUNwQ0k7RTBDcUNKLHFCbkNwQ087QVJrc0pYOztBNEN6c0pFO0VBQ0U7QTVDNHNKSjs7QTRDcnNKUTtFbkNxQ0o7RUFDQTtBVG9xSko7QTRDcHNKUTtFbkNpQko7RUFDQTtBVHNySko7O0E0Q3R0SkU7RUFDRTtFckNnU0Usa0JBTEk7QVArN0lWO0E0Q250SlE7RW5DcUNKO0VBQ0E7QVRpckpKO0E0Q2p0SlE7RW5DaUJKO0VBQ0E7QVRtc0pKOztBNENudUpFO0VBQ0U7RXJDZ1NFLG1CQUxJO0FQNDhJVjtBNENodUpRO0VuQ3FDSjtFQUNBO0FUOHJKSjtBNEM5dEpRO0VuQ2lCSjtFQUNBO0FUZ3RKSjs7QTZDL3VKQTtFQUNFO0VBQ0E7RXRDOFJJLGlCQUxJO0VzQ3ZSUixnQnJDdWtCNEI7RXFDdGtCNUI7RUFDQSx5QjVDRE07RTRDRU47RUFDQTtFQUNBO0VwQ0tFO0FUOHVKSjtBNkM5dUpFO0VBQ0U7QTdDZ3ZKSjs7QTZDM3VKQTtFQUNFO0VBQ0E7QTdDOHVKRjs7QThDcndKQTtFQUNFO0VBQ0E7RUFDQSxtQnRDazZDOEI7RXNDajZDOUI7RXJDV0U7QVQ4dkpKOztBOENwd0pBO0VBRUU7QTlDc3dKRjs7QThDbHdKQTtFQUNFLGdCdEM0akI0QjtBUnlzSTlCOztBOEM3dkpBO0VBQ0UsbUJ0Q201QzhCO0FSNjJHaEM7QThDN3ZKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDK3ZKSjs7QThDaHZKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBOUMydkpqQjtBK0NweUpFO0VBQ0U7QS9Dc3lKSjs7QThDenZKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBOUNvd0pqQjtBK0M3eUpFO0VBQ0U7QS9DK3lKSjs7QThDbHdKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBOUM2d0pqQjtBK0N0ekpFO0VBQ0U7QS9Dd3pKSjs7QThDM3dKRTtFQ2xEQSxjRGdEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzFDbkIscUJEMkNlO0E5Q3N4SmpCO0ErQy96SkU7RUFDRTtBL0NpMEpKOztBOENweEpFO0VDbERBLGNEZ0RnQjtFckI5Q2hCLHlCcUIwQ21CO0VDMUNuQixxQkQyQ2U7QTlDK3hKakI7QStDeDBKRTtFQUNFO0EvQzAwSko7O0E4Qzd4SkU7RUNsREEsY0Q4Q2M7RXJCNUNkLHlCcUIwQ21CO0VDMUNuQixxQkQyQ2U7QTlDd3lKakI7QStDajFKRTtFQUNFO0EvQ20xSko7O0E4Q3R5SkU7RUNsREEsY0RnRGdCO0VyQjlDaEIseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBOUNpekpqQjtBK0MxMUpFO0VBQ0U7QS9DNDFKSjs7QThDL3lKRTtFQ2xEQSxjRDhDYztFckI1Q2QseUJxQjBDbUI7RUMxQ25CLHFCRDJDZTtBOUMwekpqQjtBK0NuMkpFO0VBQ0U7QS9DcTJKSjs7QWdEeDJKRTtFQUNFO0lBQUssMkJ4Q2s3QzJCO0VSMDdHbEM7QUFDRjtBZ0R4MkpBO0VBQ0U7RUFDQSxZeEMyNkNrQztFd0MxNkNsQztFekN3Ukksa0JBTEk7RXlDalJSLHlCeENMUztFQ1NQO0FUdTJKSjs7QWdEdDJKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUIvQ2ZNO0UrQ2dCTjtFQUNBO0VBQ0EseUJ4Q1VRO0VnQnRCSiwyQndCYUo7QWhEeTJKRjtBd0JsM0pNO0V3QkFOO0l4QkNRO0V4QnEzSk47QUFDRjs7QWdEMzJKQTtFdkJZRTtFdUJWQTtBaEQ4MkpGOztBZ0QxMkpFO0VBQ0U7QWhENjJKSjtBZ0QxMkpNO0VBSko7SUFLTTtFaEQ2MkpOO0FBQ0Y7O0FpRHI1SkE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFeENTRTtBVDg0Sko7O0FpRG41SkE7RUFDRTtFQUNBO0FqRHM1SkY7QWlEcDVKRTtFQUVFO0VBQ0E7QWpEcTVKSjs7QWlEMzRKQTtFQUNFO0VBQ0EsY3pDbEJTO0V5Q21CVDtBakQ4NEpGO0FpRDM0SkU7RUFFRTtFQUNBLGN6Q3pCTztFeUMwQlA7RUFDQSx5QnpDakNPO0FSNjZKWDtBaUR6NEpFO0VBQ0UsY3pDN0JPO0V5QzhCUCx5QnpDckNPO0FSZzdKWDs7QWlEbDRKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGN6QzNDUztFeUM0Q1Q7RUFDQSxvQ2hEcERNO0VnRHFETjtBakRxNEpGO0FpRG40SkU7RXhDckNFO0VBQ0E7QVQyNkpKO0FpRG40SkU7RXhDM0JFO0VBQ0E7QVRpNkpKO0FpRG40SkU7RUFFRSxjekM3RE87RXlDOERQO0VBQ0Esb0NoRG5FSTtBRHU4SlI7QWlEaDRKRTtFQUNFO0VBQ0EseUJoRHpFSTtFZ0QwRUoseUJ6QzlDTTtFeUMrQ04scUJ6Qy9DTTtBUmk3SlY7QWlELzNKRTtFQUNFO0FqRGk0Sko7QWlELzNKSTtFQUNFO0VBQ0EscUJ6Q3dhd0I7QVJ5OUk5Qjs7QWlEbjNKSTtFQUNFO0FqRHMzSk47QWlEbjNKUTtFeENyQ0o7RUFaQTtBVHc2Sko7QWlEbDNKUTtFeEN0REo7RUFZQTtBVGc2Sko7QWlEajNKUTtFQUNFO0FqRG0zSlY7QWlEaDNKUTtFQUNFLHFCekN1WW9CO0V5Q3RZcEI7QWpEazNKVjtBaURoM0pVO0VBQ0U7RUFDQSxzQnpDa1lrQjtBUmcvSTlCOztBZ0J0N0pJO0VpQzRDQTtJQUNFO0VqRDg0Sko7RWlEMzRKTTtJeENyQ0o7SUFaQTtFVGc4SkY7RWlEMTRKTTtJeEN0REo7SUFZQTtFVHc3SkY7RWlEejRKTTtJQUNFO0VqRDI0SlI7RWlEeDRKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RWpEMDRKUjtFaUR4NEpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFUndnSjVCO0FBQ0Y7QWdCLzhKSTtFaUM0Q0E7SUFDRTtFakRzNkpKO0VpRG42Sk07SXhDckNKO0lBWkE7RVR3OUpGO0VpRGw2Sk07SXhDdERKO0lBWUE7RVRnOUpGO0VpRGo2Sk07SUFDRTtFakRtNkpSO0VpRGg2Sk07SUFDRSxxQnpDdVlvQjtJeUN0WXBCO0VqRGs2SlI7RWlEaDZKUTtJQUNFO0lBQ0Esc0J6Q2tZa0I7RVJnaUo1QjtBQUNGO0FnQnYrSkk7RWlDNENBO0lBQ0U7RWpEODdKSjtFaUQzN0pNO0l4Q3JDSjtJQVpBO0VUZy9KRjtFaUQxN0pNO0l4Q3RESjtJQVlBO0VUdytKRjtFaUR6N0pNO0lBQ0U7RWpEMjdKUjtFaUR4N0pNO0lBQ0UscUJ6Q3VZb0I7SXlDdFlwQjtFakQwN0pSO0VpRHg3SlE7SUFDRTtJQUNBLHNCekNrWWtCO0VSd2pKNUI7QUFDRjtBZ0IvL0pJO0VpQzRDQTtJQUNFO0VqRHM5Sko7RWlEbjlKTTtJeENyQ0o7SUFaQTtFVHdnS0Y7RWlEbDlKTTtJeEN0REo7SUFZQTtFVGdnS0Y7RWlEajlKTTtJQUNFO0VqRG05SlI7RWlEaDlKTTtJQUNFLHFCekN1WW9CO0l5Q3RZcEI7RWpEazlKUjtFaURoOUpRO0lBQ0U7SUFDQSxzQnpDa1lrQjtFUmdsSjVCO0FBQ0Y7QWdCdmhLSTtFaUM0Q0E7SUFDRTtFakQ4K0pKO0VpRDMrSk07SXhDckNKO0lBWkE7RVRnaUtGO0VpRDErSk07SXhDdERKO0lBWUE7RVR3aEtGO0VpRHorSk07SUFDRTtFakQyK0pSO0VpRHgrSk07SUFDRSxxQnpDdVlvQjtJeUN0WXBCO0VqRDArSlI7RWlEeCtKUTtJQUNFO0lBQ0Esc0J6Q2tZa0I7RVJ3bUo1QjtBQUNGO0FpRDc5SkE7RXhDOUhJO0FUOGxLSjtBaUQ3OUpFO0VBQ0U7QWpEKzlKSjtBaUQ3OUpJO0VBQ0U7QWpEKzlKTjs7QWtEbm5LRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBakR1OUoxQjtBa0RubktNO0VBRUUsY0QySnFCO0VDMUpyQjtBbERvbktSO0FrRGpuS007RUFDRSx5QmpETkE7RWlET0EseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBakQrOUo3Qjs7QWtEam9LRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBakRxK0oxQjtBa0Rqb0tNO0VBRUUsY0QySnFCO0VDMUpyQjtBbERrb0tSO0FrRC9uS007RUFDRSx5QmpETkE7RWlET0EseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBakQ2K0o3Qjs7QWtEL29LRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBakRtL0oxQjtBa0Qvb0tNO0VBRUUsY0QySnFCO0VDMUpyQjtBbERncEtSO0FrRDdvS007RUFDRSx5QmpETkE7RWlET0EseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBakQyL0o3Qjs7QWtEN3BLRTtFQUNFLGNEbUsyQjtFQ2xLM0IseUJEK0pzQjtBakRpZ0sxQjtBa0Q3cEtNO0VBRUUsY0Q2SnVCO0VDNUp2QjtBbEQ4cEtSO0FrRDNwS007RUFDRSx5QmpETkE7RWlET0EseUJEdUp1QjtFQ3RKdkIscUJEc0p1QjtBakR1Z0svQjs7QWtEM3FLRTtFQUNFLGNEbUsyQjtFQ2xLM0IseUJEK0pzQjtBakQrZ0sxQjtBa0QzcUtNO0VBRUUsY0Q2SnVCO0VDNUp2QjtBbEQ0cUtSO0FrRHpxS007RUFDRSx5QmpETkE7RWlET0EseUJEdUp1QjtFQ3RKdkIscUJEc0p1QjtBakRxaEsvQjs7QWtEenJLRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBakQ2aEsxQjtBa0R6cktNO0VBRUUsY0QySnFCO0VDMUpyQjtBbEQwcktSO0FrRHZyS007RUFDRSx5QmpETkE7RWlET0EseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBakRxaUs3Qjs7QWtEdnNLRTtFQUNFLGNEbUsyQjtFQ2xLM0IseUJEK0pzQjtBakQyaUsxQjtBa0R2c0tNO0VBRUUsY0Q2SnVCO0VDNUp2QjtBbER3c0tSO0FrRHJzS007RUFDRSx5QmpETkE7RWlET0EseUJEdUp1QjtFQ3RKdkIscUJEc0p1QjtBakRpaksvQjs7QWtEcnRLRTtFQUNFLGNEaUt5QjtFQ2hLekIseUJEK0pzQjtBakR5aksxQjtBa0RydEtNO0VBRUUsY0QySnFCO0VDMUpyQjtBbERzdEtSO0FrRG50S007RUFDRSx5QmpETkE7RWlET0EseUJEcUpxQjtFQ3BKckIscUJEb0pxQjtBakRpa0s3Qjs7QW1EbHVLQTtFQUNFO0VBQ0EsVTNDcWpEMkI7RTJDcGpEM0IsVzNDb2pEMkI7RTJDbmpEM0I7RUFDQSxtQmxEQ007RWtEQU47RUFDQTtFMUNPRTtFMENMRixZM0NxakQyQjtBUmdySDdCO0FtRGx1S0U7RUFDRSxtQmxEUEk7RWtEUUo7RUFDQSxhM0NnakR5QjtBUm9ySDdCO0FtRGp1S0U7RUFDRTtFQUNBLGtEM0N3dEI0QjtFMkN2dEI1QixVM0MyaUR5QjtBUndySDdCO0FtRGh1S0U7RUFFRTtFQUNBO0VBQ0EsYTNDcWlEeUI7QVI0ckg3Qjs7QW1EN3RLQTtFQUNFLGtEM0NpaUQyQjtBUitySDdCOztBb0R0d0tBO0VBQ0UsWTVDdzFDa0M7RTRDdjFDbEM7RTdDbVNJLG1CQUxJO0U2QzNSUjtFQUNBLDJDNUN3MUNrQztFNEN2MUNsQztFQUNBO0VBQ0EsNkM1Q2doQjRCO0VDdGdCMUI7QVQrdktKO0FvRHR3S0U7RUFDRTtBcER3d0tKO0FvRHJ3S0U7RUFDRTtBcER1d0tKOztBb0Rud0tBO0VBQ0U7RUFDQTtFQUNBO0FwRHN3S0Y7QW9EcHdLRTtFQUNFLHNCNUNrZWtCO0FSb3lKdEI7O0FvRGx3S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjNUNyQlM7RTRDc0JULDJDNUNrMENrQztFNENqMENsQztFQUNBO0UzQ1ZFO0VBQ0E7QVRneEtKO0FvRHB3S0U7RUFDRTtFQUNBLG9CNUMreUNnQztBUnU5SHBDOztBb0Rsd0tBO0VBQ0UsZ0I1QzB5Q2tDO0U0Q3p5Q2xDO0FwRHF3S0Y7O0FxRC95S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhN0NzaUNrQztFNkNyaUNsQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QXJEZ3pLRjs7QXFEenlLQTtFQUNFO0VBQ0E7RUFDQSxjN0NpMkNrQztFNkMvMUNsQztBckQyeUtGO0FxRHh5S0U7RTdCbEJJLG1DNkJtQkY7RUFDQSw4QjdDdTNDZ0M7QVJtN0hwQztBd0IxektNO0U2QmNKO0k3QmJNO0V4QjZ6S047QUFDRjtBcUQ3eUtFO0VBQ0UsZTdDcTNDZ0M7QVIwN0hwQztBcUQzeUtFO0VBQ0Usc0I3Q2szQ2dDO0FSMjdIcEM7O0FxRHp5S0E7RUFDRTtBckQ0eUtGO0FxRDF5S0U7RUFDRTtFQUNBO0FyRDR5S0o7QXFEenlLRTtFQUNFO0FyRDJ5S0o7O0FxRHZ5S0E7RUFDRTtFQUNBO0VBQ0E7QXJEMHlLRjs7QXFEdHlLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxvQ3BEbEVNO0VvRG1FTjtFQUNBO0U1QzNERTtFNEMrREY7QXJEcXlLRjs7QXFEanlLQTtFQ3BGRTtFQUNBO0VBQ0E7RUFDQSxhOUMyaUNrQztFOEMxaUNsQztFQUNBO0VBQ0EsOEJyREdNO0FEczNLUjtBc0R0M0tFO0VBQVM7QXREeTNLWDtBc0R4M0tFO0VBQVMsWTlDaTRDeUI7QVIwL0hwQzs7QXFEM3lLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0I3Q216Q2tDO0U2Q2x6Q2xDO0U1Q3RFRTtFQUNBO0FUcTNLSjtBcUQ3eUtFO0VBQ0U7RUFDQTtBckQreUtKOztBcUQxeUtBO0VBQ0U7RUFDQSxnQjdDdWU0QjtBUnMwSjlCOztBcUR4eUtBO0VBQ0U7RUFHQTtFQUNBLGE3QzhQTztBUjJpS1Q7O0FxRHJ5S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUN6RkU7RUFDQTtBVGs0S0o7QXFEcHlLRTtFQUNFO0FyRHN5S0o7O0FnQmozS0k7RXFDa0ZGO0lBQ0UsZ0I3Q3F3Q2dDO0k2Q3B3Q2hDO0VyRG15S0Y7O0VxRGh5S0E7SUFDRTtFckRteUtGOztFcURoeUtBO0lBQ0U7RXJEbXlLRjs7RXFENXhLQTtJQUFZLGdCN0NvdkNzQjtFUjRpSWxDO0FBQ0Y7QWdCcDRLSTtFcUN1R0Y7O0lBRUUsZ0I3Q2d2Q2dDO0VSZ2pJbEM7QUFDRjtBZ0IxNEtJO0VxQzhHRjtJQUFZLGlCN0M0dUNzQjtFUm9qSWxDO0FBQ0Y7QXFEeHhLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRDB4S047QXFEeHhLTTtFQUNFO0VBQ0E7RTVDM0tKO0FUczhLSjtBcUR2eEtNO0U1Qy9LRjtBVHk4S0o7QXFEdHhLTTtFQUNFO0FyRHd4S1I7QXFEcnhLTTtFNUN2TEY7QVQrOEtKOztBZ0J0NUtJO0VxQzBHQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRGd6S0o7RXFEOXlLSTtJQUNFO0lBQ0E7STVDM0tKO0VUNDlLRjtFcUQ3eUtJO0k1Qy9LRjtFVCs5S0Y7RXFENXlLSTtJQUNFO0VyRDh5S047RXFEM3lLSTtJNUN2TEY7RVRxK0tGO0FBQ0Y7QWdCNzZLSTtFcUMwR0E7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckRzMEtKO0VxRHAwS0k7SUFDRTtJQUNBO0k1QzNLSjtFVGsvS0Y7RXFEbjBLSTtJNUMvS0Y7RVRxL0tGO0VxRGwwS0k7SUFDRTtFckRvMEtOO0VxRGowS0k7STVDdkxGO0VUMi9LRjtBQUNGO0FnQm44S0k7RXFDMEdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJENDFLSjtFcUQxMUtJO0lBQ0U7SUFDQTtJNUMzS0o7RVR3Z0xGO0VxRHoxS0k7STVDL0tGO0VUMmdMRjtFcUR4MUtJO0lBQ0U7RXJEMDFLTjtFcUR2MUtJO0k1Q3ZMRjtFVGloTEY7QUFDRjtBZ0J6OUtJO0VxQzBHQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyRGszS0o7RXFEaDNLSTtJQUNFO0lBQ0E7STVDM0tKO0VUOGhMRjtFcUQvMktJO0k1Qy9LRjtFVGlpTEY7RXFEOTJLSTtJQUNFO0VyRGczS047RXFENzJLSTtJNUN2TEY7RVR1aUxGO0FBQ0Y7QWdCLytLSTtFcUMwR0E7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckR3NEtKO0VxRHQ0S0k7SUFDRTtJQUNBO0k1QzNLSjtFVG9qTEY7RXFEcjRLSTtJNUMvS0Y7RVR1akxGO0VxRHA0S0k7SUFDRTtFckRzNEtOO0VxRG40S0k7STVDdkxGO0VUNmpMRjtBQUNGO0F1RGhsTEE7RUFDRTtFQUNBLGEvQ2dqQ2tDO0UrQy9pQ2xDO0VBQ0EsUy9Da3lDa0M7RWdEdHlDbEMsc0NoRGtrQjRCO0VnRGhrQjVCO0VBQ0EsZ0JoRDJrQjRCO0VnRDFrQjVCLGdCaERnbEI0QjtFZ0Qva0I1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakRzUkksbUJBTEk7RWdEclJSO0VBQ0E7QXZENGxMRjtBdUQxbExFO0VBQVMsWS9Dc3hDeUI7QVJ1MElwQztBdUQzbExFO0VBQ0U7RUFDQTtFQUNBLGEvQ3N4Q2dDO0UrQ3J4Q2hDLGMvQ3N4Q2dDO0FSdTBJcEM7QXVEM2xMSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F2RDZsTE47O0F1RHhsTEE7RUFDRTtBdkQybExGO0F1RHpsTEU7RUFDRTtBdkQybExKO0F1RHpsTEk7RUFDRTtFQUNBO0VBQ0EsOEJ0RDdCRTtBRHduTFI7O0F1RHRsTEE7RUFDRTtBdkR5bExGO0F1RHZsTEU7RUFDRTtFQUNBLGEvQ3d2Q2dDO0UrQ3Z2Q2hDLGMvQ3N2Q2dDO0FSbTJJcEM7QXVEdmxMSTtFQUNFO0VBQ0E7RUFDQSxnQ3REN0NFO0FEc29MUjs7QXVEcGxMQTtFQUNFO0F2RHVsTEY7QXVEcmxMRTtFQUNFO0F2RHVsTEo7QXVEcmxMSTtFQUNFO0VBQ0E7RUFDQSxpQ3REM0RFO0FEa3BMUjs7QXVEbGxMQTtFQUNFO0F2RHFsTEY7QXVEbmxMRTtFQUNFO0VBQ0EsYS9DMHRDZ0M7RStDenRDaEMsYy9Dd3RDZ0M7QVI2M0lwQztBdURubExJO0VBQ0U7RUFDQTtFQUNBLCtCdEQzRUU7QURncUxSOztBdURoa0xBO0VBQ0UsZ0IvQ29yQ2tDO0UrQ25yQ2xDO0VBQ0EseUJ0RHBHTTtFc0RxR047RUFDQSw4QnREckdNO0VRUUo7QVRpcUxKOztBeURwckxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYWpEOGlDa0M7RWlEN2lDbEM7RUFDQSxnQmpEd3pDa0M7RWdEN3pDbEMsc0NoRGtrQjRCO0VnRGhrQjVCO0VBQ0EsZ0JoRDJrQjRCO0VnRDFrQjVCLGdCaERnbEI0QjtFZ0Qva0I1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakRzUkksbUJBTEk7RWtEcFJSO0VBQ0Esb0N4REhNO0V3RElOO0VBQ0E7RWhESUU7QVQ4ckxKO0F5RDlyTEU7RUFDRTtFQUNBO0VBQ0EsV2pEd3pDZ0M7RWlEdnpDaEMsY2pEd3pDZ0M7QVJ3NElwQztBeUQ5ckxJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekQrckxOOztBeUR6ckxFO0VBQ0U7QXpENHJMSjtBeUQxckxJO0VBQ0U7RUFDQTtFQUNBLHFDakR1eUM4QjtBUnE1SXBDO0F5RHpyTEk7RUFDRSxXakRzZHdCO0VpRHJkeEI7RUFDQSxvQ3hEdkNFO0FEa3VMUjs7QXlEcnJMRTtFQUNFO0VBQ0EsYWpEc3hDZ0M7RWlEcnhDaEMsWWpEb3hDZ0M7QVJvNklwQztBeUR0ckxJO0VBQ0U7RUFDQTtFQUNBLHVDakRteEM4QjtBUnE2SXBDO0F5RHJyTEk7RUFDRSxTakRrY3dCO0VpRGpjeEI7RUFDQSxzQ3hEM0RFO0FEa3ZMUjs7QXlEanJMRTtFQUNFO0F6RG9yTEo7QXlEbHJMSTtFQUNFO0VBQ0E7RUFDQSx3Q2pEaXdDOEI7QVJtN0lwQztBeURqckxJO0VBQ0UsUWpEZ2J3QjtFaUQvYXhCO0VBQ0EsdUN4RDdFRTtBRGd3TFI7QXlEOXFMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV2pENnVDZ0M7RWlENXVDaEM7RUFDQTtFQUNBO0F6RGdyTEo7O0F5RDNxTEU7RUFDRTtFQUNBLGFqRG91Q2dDO0VpRG51Q2hDLFlqRGt1Q2dDO0FSNDhJcEM7QXlENXFMSTtFQUNFO0VBQ0E7RUFDQSxzQ2pEaXVDOEI7QVI2OElwQztBeUQzcUxJO0VBQ0UsVWpEZ1p3QjtFaUQvWXhCO0VBQ0EscUN4RDdHRTtBRDB4TFI7O0F5RHhwTEE7RUFDRTtFQUNBO0VsRHVKSSxlQUxJO0VrRC9JUix5QmpEb3JDa0M7RWlEbnJDbEM7RWhEdEhFO0VBQ0E7QVRpeExKO0F5RHpwTEU7RUFDRTtBekQycExKOztBeUR2cExBO0VBQ0U7RUFDQSxjakQzSVM7QVJxeUxYOztBMER6eUxBO0VBQ0U7QTFENHlMRjs7QTBEenlMQTtFQUNFO0ExRDR5TEY7O0EwRHp5TEE7RUFDRTtFQUNBO0VBQ0E7QTFENHlMRjtBMkRsMExFO0VBQ0U7RUFDQTtFQUNBO0EzRG8wTEo7O0EwRDd5TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxDbEJJLHNDa0NtQko7QTFEZ3pMRjtBd0IvekxNO0VrQ1FOO0lsQ1BRO0V4QmswTE47QUFDRjs7QTBEbHpMQTs7O0VBR0U7QTFEcXpMRjs7QTBEbHpMQTtBQUNBOztFQUVFO0ExRHF6TEY7O0EwRGx6TEE7O0VBRUU7QTFEcXpMRjs7QTBEbHpMQTtBQVFFO0VBQ0U7RUFDQTtFQUNBO0ExRDh5TEo7QTBEM3lMRTs7O0VBR0U7RUFDQTtBMUQ2eUxKO0EwRDF5TEU7O0VBRUU7RUFDQTtFbEMvREUsMkJrQ2dFRjtBMUQ0eUxKO0F3QngyTE07RWtDd0RKOztJbEN2RE07RXhCNDJMTjtBQUNGOztBMER6eUxBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWxEczZDbUM7RWtEcjZDbkM7RUFDQSx5QnpEM0ZNO0V5RDRGTjtFQUNBO0VBQ0E7RUFDQSxZbERpNkNtQztFZ0IxL0MvQiw4QmtDMEZKO0ExRDJ5TEY7QXdCajRMTTtFa0NxRU47O0lsQ3BFUTtFeEJxNExOO0FBQ0Y7QTBEOXlMRTs7O0VBRUUseUJ6RHJHSTtFeURzR0o7RUFDQTtFQUNBLFlsRHk1Q2lDO0FSdzVJckM7O0EwRDl5TEE7RUFDRTtBMURpekxGOztBMEQ5eUxBO0VBQ0U7QTFEaXpMRjs7QTBENXlMQTs7RUFFRTtFQUNBLFdsRDA1Q21DO0VrRHo1Q25DLFlsRHk1Q21DO0VrRHg1Q25DO0VBQ0E7RUFDQTtBMUQreUxGOztBMEQ1eUxBOzs7Ozs7O0dBQUE7QUFRQTtFQUNFO0ExRCt5TEY7O0EwRDd5TEE7RUFDRTtBMURnekxGOztBMER4eUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCbERrMkNtQztFa0RqMkNuQztFQUNBLGdCbERnMkNtQztFa0QvMUNuQztBMUQweUxGO0EwRHh5TEU7RUFDRTtFQUNBO0VBQ0EsV2xEKzFDaUM7RWtEOTFDakMsV2xEKzFDaUM7RWtEOTFDakM7RUFDQSxpQmxEKzFDaUM7RWtEOTFDakMsZ0JsRDgxQ2lDO0VrRDcxQ2pDO0VBQ0E7RUFDQSxvQ3pENUtJO0V5RDZLSjtFQUNBO0VBRUE7RUFDQTtFQUNBLFlsRHMxQ2lDO0VnQmxnRC9CLDZCa0M2S0Y7QTFEeXlMSjtBd0JsOUxNO0VrQ3dKSjtJbEN2Sk07RXhCcTlMTjtBQUNGO0EwRDN5TEU7RUFDRSxVbERtMUNpQztBUjA5SXJDOztBMERweUxBO0VBQ0U7RUFDQTtFQUNBLGVsRDYwQ21DO0VrRDUwQ25DO0VBQ0Esb0JsRDAwQ21DO0VrRHowQ25DLHVCbER5MENtQztFa0R4MENuQyx5QnpEdk1NO0V5RHdNTjtBMUR1eUxGOztBMERqeUxFOztFQUVFLGdDbEQ0MENpQztBUnc5SXJDO0EwRGp5TEU7RUFDRSw4QnpEbk5JO0FEcy9MUjtBMERoeUxFO0VBQ0UsbUJ6RHZOSTtBRHkvTFI7O0E0RC8vTEE7RUFDRTtJQUFLO0U1RG1nTUw7QUFDRjtBNERoZ01BO0VBQ0U7RUFDQSxXcERpaUR3QjtFb0RoaUR4QixZcERnaUR3QjtFb0QvaER4Qix3QnBEaWlEd0I7RW9EaGlEeEI7RUFDQTtFQUVBO0VBQ0E7QTVEaWdNRjs7QTREOS9MQTtFQUNFLFdwRDRoRHdCO0VvRDNoRHhCLFlwRDJoRHdCO0VvRDFoRHhCLG1CcEQ0aER3QjtBUnErSTFCOztBNER6L0xBO0VBQ0U7SUFDRTtFNUQ0L0xGO0U0RDEvTEE7SUFDRTtJQUNBO0U1RDQvTEY7QUFDRjtBNER4L0xBO0VBQ0U7RUFDQSxXcEQrL0N3QjtFb0Q5L0N4QixZcEQ4L0N3QjtFb0Q3L0N4Qix3QnBEKy9Dd0I7RW9EOS9DeEI7RUFFQTtFQUNBO0VBQ0E7QTVEeS9MRjs7QTREdC9MQTtFQUNFLFdwRDAvQ3dCO0VvRHovQ3hCLFlwRHkvQ3dCO0FSZ2dKMUI7O0E0RHIvTEU7RUFDRTs7SUFFRTtFNUR3L0xKO0FBQ0Y7QTZEMWpNQTtFQUNFO0VBQ0E7RUFDQSxhckQ0aUNrQztFcUQzaUNsQztFQUNBO0VBQ0E7RUFFQTtFQUNBLG9DNURDTTtFNERBTjtFQUNBO0VyQ0tJLHNDcUNISjtBN0Qwak1GO0F3Qm5qTU07RXFDcEJOO0lyQ3FCUTtFeEJzak1OO0FBQ0Y7O0E2RDVqTUE7RVBkRTtFQUNBO0VBQ0E7RUFDQSxhOUN5aUNrQztFOEN4aUNsQztFQUNBO0VBQ0EsOEJyREdNO0FEMmtNUjtBc0Qza01FO0VBQVM7QXREOGtNWDtBc0Q3a01FO0VBQVMsWTlDaTRDeUI7QVIrc0pwQzs7QTZEeGtNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RDJrTUY7QTZEemtNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E3RDJrTUo7O0E2RHZrTUE7RUFDRTtFQUNBLGdCckRpakI0QjtBUnloTDlCOztBNkR2a01BO0VBQ0U7RUFDQTtFQUNBO0E3RDBrTUY7O0E2RHZrTUE7RUFDRTtFQUNBO0VBQ0EsWXJEZ2lEa0M7RXFEL2hEbEM7RUFDQTtBN0Qwa01GOztBNkR2a01BO0VBQ0U7RUFDQTtFQUNBLFlyRHdoRGtDO0VxRHZoRGxDO0VBQ0E7QTdEMGtNRjs7QTZEdmtNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLFlyRGdoRGtDO0VxRC9nRGxDO0VBQ0E7RUFDQTtBN0Qwa01GOztBNkR2a01BO0VBQ0U7RUFDQTtFQUNBLFlyRHVnRGtDO0VxRHRnRGxDO0VBQ0E7RUFDQTtBN0Qwa01GOztBNkR2a01BO0VBQ0U7QTdEMGtNRjs7QThEM3BNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZdER3dENrQztBUnM4SnBDO0E4RDVwTUU7RUFDRTtFQUNBO0E5RDhwTUo7O0E4RHpwTUE7RUFDRTtBOUQ0cE1GOztBOER6cE1BO0VBQ0U7QTlENHBNRjs7QThEenBNQTtFQUNFO0E5RDRwTUY7O0E4RHZwTUU7RUFDRTtBOUQwcE1KOztBOER0cE1BO0VBQ0U7SUFDRSxZdEQyckNnQztFUjg5SmxDO0FBQ0Y7QThEdHBNQTtFQUNFO0VBQ0E7RUFDQTtBOUR3cE1GOztBOERycE1BO0VBQ0U7SUFDRTtFOUR3cE1GO0FBQ0Y7QTJEdnNNRTtFQUNFO0VBQ0E7RUFDQTtBM0R5c01KOztBK0Q3c01FO0VBQ0UsY3ZEOEVXO0FSa29NZjtBK0Q3c01NO0VBRUU7QS9EOHNNUjs7QStEcHRNRTtFQUNFLGN2RDhFVztBUnlvTWY7QStEcHRNTTtFQUVFO0EvRHF0TVI7O0ErRDN0TUU7RUFDRSxjdkQ4RVc7QVJncE1mO0ErRDN0TU07RUFFRTtBL0Q0dE1SOztBK0RsdU1FO0VBQ0UsY3ZEOEVXO0FSdXBNZjtBK0RsdU1NO0VBRUU7QS9EbXVNUjs7QStEenVNRTtFQUNFLGN2RDhFVztBUjhwTWY7QStEenVNTTtFQUVFO0EvRDB1TVI7O0ErRGh2TUU7RUFDRSxjdkQ4RVc7QVJxcU1mO0ErRGh2TU07RUFFRTtBL0Rpdk1SOztBK0R2dk1FO0VBQ0UsY3ZEOEVXO0FSNHFNZjtBK0R2dk1NO0VBRUU7QS9Ed3ZNUjs7QStEOXZNRTtFQUNFLGN2RDhFVztBUm1yTWY7QStEOXZNTTtFQUVFO0EvRCt2TVI7O0FnRXB3TUE7RUFDRTtFQUNBO0FoRXV3TUY7QWdFcndNRTtFQUNFO0VBQ0E7RUFDQTtBaEV1d01KO0FnRXB3TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRXN3TUo7O0FnRWp3TUU7RUFDRTtBaEVvd01KOztBZ0Vyd01FO0VBQ0U7QWhFd3dNSjs7QWdFendNRTtFQUNFO0FoRTR3TUo7O0FnRTd3TUU7RUFDRTtBaEVneE1KOztBaUVyeU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhekRzaUNrQztBUmt3S3BDOztBaUVyeU1BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhekQ4aENrQztBUjB3S3BDOztBaUVoeU1JO0VBQ0U7RUFDQTtFQUNBLGF6RGtoQzhCO0FSaXhLcEM7O0FnQjl2TUk7RWlEeENBO0lBQ0U7SUFDQTtJQUNBLGF6RGtoQzhCO0VSd3hLbEM7QUFDRjtBZ0J0d01JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFUit4S2xDO0FBQ0Y7QWdCN3dNSTtFaUR4Q0E7SUFDRTtJQUNBO0lBQ0EsYXpEa2hDOEI7RVJzeUtsQztBQUNGO0FnQnB4TUk7RWlEeENBO0lBQ0U7SUFDQTtJQUNBLGF6RGtoQzhCO0VSNnlLbEM7QUFDRjtBZ0IzeE1JO0VpRHhDQTtJQUNFO0lBQ0E7SUFDQSxhekRraEM4QjtFUm96S2xDO0FBQ0Y7QWtFaDJNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRWsyTUY7O0FrRS8xTUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEVrMk1GOztBbUUxMk1BOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEUyMk1GOztBcUV0M01FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFU3RHdic0M7RTZEdmJ0QztBckV5M01KOztBc0VqNE1BO0VDQUU7RUFDQTtFQUNBO0F2RXE0TUY7O0F3RTM0TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYWhFaXBCNEI7QVI2dkw5Qjs7QXlFcjFNUTtFQU9JO0F6RWsxTVo7O0F5RXoxTVE7RUFPSTtBekVzMU1aOztBeUU3MU1RO0VBT0k7QXpFMDFNWjs7QXlFajJNUTtFQU9JO0F6RTgxTVo7O0F5RXIyTVE7RUFPSTtBekVrMk1aOztBeUV6Mk1RO0VBT0k7QXpFczJNWjs7QXlFNzJNUTtFQU9JO0F6RTAyTVo7O0F5RWozTVE7RUFPSTtBekU4Mk1aOztBeUVyM01RO0VBT0k7QXpFazNNWjs7QXlFejNNUTtFQU9JO0F6RXMzTVo7O0F5RTczTVE7RUFPSTtBekUwM01aOztBeUVqNE1RO0VBT0k7QXpFODNNWjs7QXlFcjRNUTtFQU9JO0F6RWs0TVo7O0F5RXo0TVE7RUFPSTtBekVzNE1aOztBeUU3NE1RO0VBT0k7QXpFMDRNWjs7QXlFajVNUTtFQU9JO0F6RTg0TVo7O0F5RXI1TVE7RUFPSTtBekVrNU1aOztBeUV6NU1RO0VBT0k7QXpFczVNWjs7QXlFNzVNUTtFQU9JO0F6RTA1TVo7O0F5RWo2TVE7RUFPSTtBekU4NU1aOztBeUVyNk1RO0VBT0k7QXpFazZNWjs7QXlFejZNUTtFQU9JO0F6RXM2TVo7O0F5RTc2TVE7RUFPSTtBekUwNk1aOztBeUVqN01RO0VBT0k7QXpFODZNWjs7QXlFcjdNUTtFQU9JO0F6RWs3TVo7O0F5RXo3TVE7RUFPSTtBekVzN01aOztBeUU3N01RO0VBT0k7QXpFMDdNWjs7QXlFajhNUTtFQU9JO0F6RTg3TVo7O0F5RXI4TVE7RUFPSTtBekVrOE1aOztBeUV6OE1RO0VBT0k7QXpFczhNWjs7QXlFNzhNUTtFQU9JO0F6RTA4TVo7O0F5RWo5TVE7RUFPSTtBekU4OE1aOztBeUVyOU1RO0VBT0k7QXpFazlNWjs7QXlFejlNUTtFQU9JO0F6RXM5TVo7O0F5RTc5TVE7RUFPSTtBekUwOU1aOztBeUVqK01RO0VBT0k7QXpFODlNWjs7QXlFcitNUTtFQU9JO0F6RWsrTVo7O0F5RXorTVE7RUFPSTtBekVzK01aOztBeUU3K01RO0VBT0k7QXpFMCtNWjs7QXlFai9NUTtFQU9JO0F6RTgrTVo7O0F5RXIvTVE7RUFPSTtBekVrL01aOztBeUV6L01RO0VBT0k7QXpFcy9NWjs7QXlFNy9NUTtFQU9JO0F6RTAvTVo7O0F5RWpnTlE7RUFPSTtBekU4L01aOztBeUVyZ05RO0VBT0k7QXpFa2dOWjs7QXlFemdOUTtFQU9JO0F6RXNnTlo7O0F5RTdnTlE7RUFPSTtBekUwZ05aOztBeUVqaE5RO0VBT0k7QXpFOGdOWjs7QXlFcmhOUTtFQU9JO0F6RWtoTlo7O0F5RXpoTlE7RUFPSTtBekVzaE5aOztBeUU3aE5RO0VBT0k7QXpFMGhOWjs7QXlFamlOUTtFQU9JO0F6RThoTlo7O0F5RXJpTlE7RUFPSTtBekVraU5aOztBeUV6aU5RO0VBT0k7QXpFc2lOWjs7QXlFN2lOUTtFQU9JO0F6RTBpTlo7O0F5RWpqTlE7RUFPSTtBekU4aU5aOztBeUVyak5RO0VBT0k7QXpFa2pOWjs7QXlFempOUTtFQU9JO0F6RXNqTlo7O0F5RTdqTlE7RUFPSTtBekUwak5aOztBeUVqa05RO0VBT0k7QXpFOGpOWjs7QXlFcmtOUTtFQU9JO0F6RWtrTlo7O0F5RXprTlE7RUFPSTtBekVza05aOztBeUU3a05RO0VBT0k7QXpFMGtOWjs7QXlFamxOUTtFQU9JO0F6RThrTlo7O0F5RXJsTlE7RUFPSTtBekVrbE5aOztBeUV6bE5RO0VBT0k7QXpFc2xOWjs7QXlFN2xOUTtFQU9JO0F6RTBsTlo7O0F5RWptTlE7RUFPSTtBekU4bE5aOztBeUVybU5RO0VBT0k7QXpFa21OWjs7QXlFem1OUTtFQU9JO0F6RXNtTlo7O0F5RTdtTlE7RUFPSTtBekUwbU5aOztBeUVqbk5RO0VBT0k7QXpFOG1OWjs7QXlFcm5OUTtFQU9JO0F6RWtuTlo7O0F5RXpuTlE7RUFPSTtBekVzbk5aOztBeUU3bk5RO0VBT0k7QXpFMG5OWjs7QXlFam9OUTtFQU9JO0F6RThuTlo7O0F5RXJvTlE7RUFPSTtBekVrb05aOztBeUV6b05RO0VBT0k7QXpFc29OWjs7QXlFN29OUTtFQU9JO0F6RTBvTlo7O0F5RWpwTlE7RUFPSTtBekU4b05aOztBeUVycE5RO0VBT0k7QXpFa3BOWjs7QXlFenBOUTtFQU9JO0F6RXNwTlo7O0F5RTdwTlE7RUFPSTtBekUwcE5aOztBeUVqcU5RO0VBT0k7QXpFOHBOWjs7QXlFcnFOUTtFQU9JO0F6RWtxTlo7O0F5RXpxTlE7RUFPSTtBekVzcU5aOztBeUU3cU5RO0VBT0k7QXpFMHFOWjs7QXlFanJOUTtFQU9JO0F6RThxTlo7O0F5RXJyTlE7RUFPSTtBekVrck5aOztBeUV6ck5RO0VBT0k7QXpFc3JOWjs7QXlFN3JOUTtFQU9JO0F6RTByTlo7O0F5RWpzTlE7RUFPSTtBekU4ck5aOztBeUVyc05RO0VBT0k7QXpFa3NOWjs7QXlFenNOUTtFQU9JO0F6RXNzTlo7O0F5RTdzTlE7RUFPSTtBekUwc05aOztBeUVqdE5RO0VBT0k7QXpFOHNOWjs7QXlFcnROUTtFQU9JO0F6RWt0Tlo7O0F5RXp0TlE7RUFPSTtBekVzdE5aOztBeUU3dE5RO0VBT0k7QXpFMHROWjs7QXlFanVOUTtFQU9JO0F6RTh0Tlo7O0F5RXJ1TlE7RUFPSTtBekVrdU5aOztBeUV6dU5RO0VBT0k7QXpFc3VOWjs7QXlFN3VOUTtFQU9JO0F6RTB1Tlo7O0F5RWp2TlE7RUFPSTtBekU4dU5aOztBeUVydk5RO0VBT0k7QXpFa3ZOWjs7QXlFenZOUTtFQU9JO0F6RXN2Tlo7O0F5RTd2TlE7RUFPSTtBekUwdk5aOztBeUVqd05RO0VBT0k7QXpFOHZOWjs7QXlFcndOUTtFQU9JO0F6RWt3Tlo7O0F5RXp3TlE7RUFPSTtBekVzd05aOztBeUU3d05RO0VBT0k7QXpFMHdOWjs7QXlFanhOUTtFQU9JO0F6RTh3Tlo7O0F5RXJ4TlE7RUFPSTtBekVreE5aOztBeUV6eE5RO0VBT0k7QXpFc3hOWjs7QXlFN3hOUTtFQU9JO0F6RTB4Tlo7O0F5RWp5TlE7RUFPSTtBekU4eE5aOztBeUVyeU5RO0VBT0k7QXpFa3lOWjs7QXlFenlOUTtFQU9JO0F6RXN5Tlo7O0F5RTd5TlE7RUFPSTtBekUweU5aOztBeUVqek5RO0VBT0k7QXpFOHlOWjs7QXlFcnpOUTtFQU9JO0F6RWt6Tlo7O0F5RXp6TlE7RUFPSTtBekVzek5aOztBeUU3ek5RO0VBT0k7QXpFMHpOWjs7QXlFajBOUTtFQU9JO0F6RTh6Tlo7O0F5RXIwTlE7RUFPSTtBekVrME5aOztBeUV6ME5RO0VBT0k7QXpFczBOWjs7QXlFNzBOUTtFQU9JO0F6RTAwTlo7O0F5RWoxTlE7RUFPSTtBekU4ME5aOztBeUVyMU5RO0VBT0k7QXpFazFOWjs7QXlFejFOUTtFQU9JO0F6RXMxTlo7O0F5RTcxTlE7RUFPSTtBekUwMU5aOztBeUVqMk5RO0VBT0k7QXpFODFOWjs7QXlFcjJOUTtFQU9JO0F6RWsyTlo7O0F5RXoyTlE7RUFPSTtBekVzMk5aOztBeUU3Mk5RO0VBT0k7QXpFMDJOWjs7QXlFajNOUTtFQU9JO0F6RTgyTlo7O0F5RXIzTlE7RUFPSTtBekVrM05aOztBeUV6M05RO0VBT0k7QXpFczNOWjs7QXlFNzNOUTtFQU9JO0F6RTAzTlo7O0F5RWo0TlE7RUFPSTtBekU4M05aOztBeUVyNE5RO0VBT0k7QXpFazROWjs7QXlFejROUTtFQU9JO0F6RXM0Tlo7O0F5RTc0TlE7RUFPSTtBekUwNE5aOztBeUVqNU5RO0VBT0k7QXpFODROWjs7QXlFcjVOUTtFQU9JO0F6RWs1Tlo7O0F5RXo1TlE7RUFPSTtBekVzNU5aOztBeUU3NU5RO0VBT0k7QXpFMDVOWjs7QXlFajZOUTtFQU9JO0F6RTg1Tlo7O0F5RXI2TlE7RUFPSTtFQUFBO0F6RW02Tlo7O0F5RTE2TlE7RUFPSTtFQUFBO0F6RXc2Tlo7O0F5RS82TlE7RUFPSTtFQUFBO0F6RTY2Tlo7O0F5RXA3TlE7RUFPSTtFQUFBO0F6RWs3Tlo7O0F5RXo3TlE7RUFPSTtFQUFBO0F6RXU3Tlo7O0F5RTk3TlE7RUFPSTtFQUFBO0F6RTQ3Tlo7O0F5RW44TlE7RUFPSTtFQUFBO0F6RWk4Tlo7O0F5RXg4TlE7RUFPSTtFQUFBO0F6RXM4Tlo7O0F5RTc4TlE7RUFPSTtFQUFBO0F6RTI4Tlo7O0F5RWw5TlE7RUFPSTtFQUFBO0F6RWc5Tlo7O0F5RXY5TlE7RUFPSTtFQUFBO0F6RXE5Tlo7O0F5RTU5TlE7RUFPSTtFQUFBO0F6RTA5Tlo7O0F5RWorTlE7RUFPSTtFQUFBO0F6RSs5Tlo7O0F5RXQrTlE7RUFPSTtFQUFBO0F6RW8rTlo7O0F5RTMrTlE7RUFPSTtBekV3K05aOztBeUUvK05RO0VBT0k7QXpFNCtOWjs7QXlFbi9OUTtFQU9JO0F6RWcvTlo7O0F5RXYvTlE7RUFPSTtBekVvL05aOztBeUUzL05RO0VBT0k7QXpFdy9OWjs7QXlFLy9OUTtFQU9JO0F6RTQvTlo7O0F5RW5nT1E7RUFPSTtBekVnZ09aOztBeUV2Z09RO0VBT0k7QXpFb2dPWjs7QXlFM2dPUTtFQU9JO0F6RXdnT1o7O0F5RS9nT1E7RUFPSTtBekU0Z09aOztBeUVuaE9RO0VBT0k7QXpFZ2hPWjs7QXlFdmhPUTtFQU9JO0F6RW9oT1o7O0F5RTNoT1E7RUFPSTtBekV3aE9aOztBeUUvaE9RO0VBT0k7QXpFNGhPWjs7QXlFbmlPUTtFQU9JO0F6RWdpT1o7O0F5RXZpT1E7RUFPSTtBekVvaU9aOztBeUUzaU9RO0VBT0k7QXpFd2lPWjs7QXlFL2lPUTtFQU9JO0F6RTRpT1o7O0F5RW5qT1E7RUFPSTtBekVnak9aOztBeUV2ak9RO0VBT0k7QXpFb2pPWjs7QXlFM2pPUTtFQU9JO0F6RXdqT1o7O0F5RS9qT1E7RUFPSTtBekU0ak9aOztBeUVua09RO0VBT0k7QXpFZ2tPWjs7QXlFdmtPUTtFQU9JO0F6RW9rT1o7O0F5RTNrT1E7RUFPSTtBekV3a09aOztBeUUva09RO0VBT0k7QXpFNGtPWjs7QXlFbmxPUTtFQU9JO0F6RWdsT1o7O0F5RXZsT1E7RUFPSTtBekVvbE9aOztBeUUzbE9RO0VBT0k7QXpFd2xPWjs7QXlFL2xPUTtFQU9JO0F6RTRsT1o7O0F5RW5tT1E7RUFPSTtBekVnbU9aOztBeUV2bU9RO0VBT0k7QXpFb21PWjs7QXlFM21PUTtFQU9JO0F6RXdtT1o7O0F5RS9tT1E7RUFPSTtBekU0bU9aOztBeUVubk9RO0VBT0k7RUFBQTtBekVpbk9aOztBeUV4bk9RO0VBT0k7RUFBQTtBekVzbk9aOztBeUU3bk9RO0VBT0k7RUFBQTtBekUybk9aOztBeUVsb09RO0VBT0k7RUFBQTtBekVnb09aOztBeUV2b09RO0VBT0k7RUFBQTtBekVxb09aOztBeUU1b09RO0VBT0k7RUFBQTtBekUwb09aOztBeUVqcE9RO0VBT0k7RUFBQTtBekUrb09aOztBeUV0cE9RO0VBT0k7RUFBQTtBekVvcE9aOztBeUUzcE9RO0VBT0k7RUFBQTtBekV5cE9aOztBeUVocU9RO0VBT0k7RUFBQTtBekU4cE9aOztBeUVycU9RO0VBT0k7RUFBQTtBekVtcU9aOztBeUUxcU9RO0VBT0k7RUFBQTtBekV3cU9aOztBeUUvcU9RO0VBT0k7QXpFNHFPWjs7QXlFbnJPUTtFQU9JO0F6RWdyT1o7O0F5RXZyT1E7RUFPSTtBekVvck9aOztBeUUzck9RO0VBT0k7QXpFd3JPWjs7QXlFL3JPUTtFQU9JO0F6RTRyT1o7O0F5RW5zT1E7RUFPSTtBekVnc09aOztBeUV2c09RO0VBT0k7QXpFb3NPWjs7QXlFM3NPUTtFQU9JO0F6RXdzT1o7O0F5RS9zT1E7RUFPSTtBekU0c09aOztBeUVudE9RO0VBT0k7QXpFZ3RPWjs7QXlFdnRPUTtFQU9JO0F6RW90T1o7O0F5RTN0T1E7RUFPSTtBekV3dE9aOztBeUUvdE9RO0VBT0k7QXpFNHRPWjs7QXlFbnVPUTtFQU9JO0F6RWd1T1o7O0F5RXZ1T1E7RUFPSTtBekVvdU9aOztBeUUzdU9RO0VBT0k7QXpFd3VPWjs7QXlFL3VPUTtFQU9JO0F6RTR1T1o7O0F5RW52T1E7RUFPSTtBekVndk9aOztBeUV2dk9RO0VBT0k7QXpFb3ZPWjs7QXlFM3ZPUTtFQU9JO0F6RXd2T1o7O0F5RS92T1E7RUFPSTtBekU0dk9aOztBeUVud09RO0VBT0k7QXpFZ3dPWjs7QXlFdndPUTtFQU9JO0F6RW93T1o7O0F5RTN3T1E7RUFPSTtBekV3d09aOztBeUUvd09RO0VBT0k7QXpFNHdPWjs7QXlFbnhPUTtFQU9JO0F6RWd4T1o7O0F5RXZ4T1E7RUFPSTtBekVveE9aOztBeUUzeE9RO0VBT0k7QXpFd3hPWjs7QXlFL3hPUTtFQU9JO0F6RTR4T1o7O0F5RW55T1E7RUFPSTtBekVneU9aOztBeUV2eU9RO0VBT0k7QXpFb3lPWjs7QXlFM3lPUTtFQU9JO0F6RXd5T1o7O0F5RS95T1E7RUFPSTtBekU0eU9aOztBeUVuek9RO0VBT0k7QXpFZ3pPWjs7QXlFdnpPUTtFQU9JO0F6RW96T1o7O0F5RTN6T1E7RUFPSTtBekV3ek9aOztBeUUvek9RO0VBT0k7QXpFNHpPWjs7QXlFbjBPUTtFQU9JO0F6RWcwT1o7O0F5RXYwT1E7RUFPSTtBekVvME9aOztBeUUzME9RO0VBT0k7QXpFdzBPWjs7QXlFLzBPUTtFQU9JO0F6RTQwT1o7O0F5RW4xT1E7RUFPSTtBekVnMU9aOztBeUV2MU9RO0VBT0k7QXpFbzFPWjs7QXlFMzFPUTtFQU9JO0F6RXcxT1o7O0F5RS8xT1E7RUFPSTtBekU0MU9aOztBeUVuMk9RO0VBT0k7QXpFZzJPWjs7QXlFdjJPUTtFQU9JO0F6RW8yT1o7O0F5RTMyT1E7RUFPSTtBekV3Mk9aOztBeUUvMk9RO0VBT0k7QXpFNDJPWjs7QXlFbjNPUTtFQU9JO0F6RWczT1o7O0F5RXYzT1E7RUFPSTtBekVvM09aOztBeUUzM09RO0VBT0k7QXpFdzNPWjs7QXlFLzNPUTtFQU9JO0F6RTQzT1o7O0F5RWo1T1E7QUFjQTtFQU9JO0VBQUE7QXpFazRPWjs7QXlFcDNPUTtBQXJCQTtFQUlRO0VBR0o7QXpFdzRPWjs7QXlFLzRPUTtFQUlRO0VBR0o7QXpFNjRPWjs7QXlFcDVPUTtFQUlRO0VBR0o7QXpFazVPWjs7QXlFejVPUTtFQUlRO0VBR0o7QXpFdTVPWjs7QXlFOTVPUTtFQUlRO0VBR0o7QXpFNDVPWjs7QXlFbjZPUTtFQUlRO0VBR0o7QXpFaTZPWjs7QXlFeDZPUTtFQUlRO0VBR0o7QXpFczZPWjs7QXlFNzZPUTtFQUlRO0VBR0o7QXpFMjZPWjs7QXlFbDdPUTtFQUlRO0VBR0o7QXpFZzdPWjs7QXlFdjdPUTtFQUlRO0VBR0o7QXpFcTdPWjs7QXlFNTdPUTtFQUlRO0VBR0o7QXpFMDdPWjs7QXlFajhPUTtFQUlRO0VBR0o7QXpFKzdPWjs7QXlFdDhPUTtFQUlRO0VBR0o7QXpFbzhPWjs7QXlFMzhPUTtFQUlRO0VBR0o7QXpFeThPWjs7QXlFaDlPUTtFQUlRO0VBR0o7QXpFODhPWjs7QXlFLzlPUTtFQUNFO0F6RWsrT1Y7O0F5RW4rT1E7RUFDRTtBekVzK09WOztBeUV2K09RO0VBQ0U7QXpFMCtPVjs7QXlFMytPUTtFQUNFO0F6RTgrT1Y7O0F5RXIrT1E7RUFJUTtFQUdKO0F6RW0rT1o7O0F5RTErT1E7RUFJUTtFQUdKO0F6RXcrT1o7O0F5RS8rT1E7RUFJUTtFQUdKO0F6RTYrT1o7O0F5RXAvT1E7RUFJUTtFQUdKO0F6RWsvT1o7O0F5RXovT1E7RUFJUTtFQUdKO0F6RXUvT1o7O0F5RTkvT1E7RUFJUTtFQUdKO0F6RTQvT1o7O0F5RW5nUFE7RUFJUTtFQUdKO0F6RWlnUFo7O0F5RXhnUFE7RUFJUTtFQUdKO0F6RXNnUFo7O0F5RTdnUFE7RUFJUTtFQUdKO0F6RTJnUFo7O0F5RWxoUFE7RUFJUTtFQUdKO0F6RWdoUFo7O0F5RXZoUFE7RUFJUTtFQUdKO0F6RXFoUFo7O0F5RTVoUFE7RUFJUTtFQUdKO0F6RTBoUFo7O0F5RTNpUFE7RUFDRTtBekU4aVBWOztBeUUvaVBRO0VBQ0U7QXpFa2pQVjs7QXlFbmpQUTtFQUNFO0F6RXNqUFY7O0F5RXZqUFE7RUFDRTtBekUwalBWOztBeUUzalBRO0VBQ0U7QXpFOGpQVjs7QXlFcmpQUTtFQU9JO0F6RWtqUFo7O0F5RXpqUFE7RUFPSTtBekVzalBaOztBeUU3alBRO0VBT0k7QXpFMGpQWjs7QXlFamtQUTtFQU9JO0F6RThqUFo7O0F5RXJrUFE7RUFPSTtBekVra1BaOztBeUV6a1BRO0VBT0k7QXpFc2tQWjs7QXlFN2tQUTtFQU9JO0F6RTBrUFo7O0F5RWpsUFE7RUFPSTtBekU4a1BaOztBeUVybFBRO0VBT0k7QXpFa2xQWjs7QXlFemxQUTtFQU9JO0F6RXNsUFo7O0F5RTdsUFE7RUFPSTtBekUwbFBaOztBeUVqbVBRO0VBT0k7QXpFOGxQWjs7QXlFcm1QUTtFQU9JO0F6RWttUFo7O0F5RXptUFE7RUFPSTtFQUFBO0F6RXVtUFo7O0F5RTltUFE7RUFPSTtFQUFBO0F6RTRtUFo7O0F5RW5uUFE7RUFPSTtFQUFBO0F6RWluUFo7O0F5RXhuUFE7RUFPSTtFQUFBO0F6RXNuUFo7O0F5RTduUFE7RUFPSTtBekUwblBaOztBeUVqb1BRO0VBT0k7QXpFOG5QWjs7QWdCcm9QSTtFeURBSTtJQU9JO0V6RW1vUFY7O0V5RTFvUE07SUFPSTtFekV1b1BWOztFeUU5b1BNO0lBT0k7RXpFMm9QVjs7RXlFbHBQTTtJQU9JO0V6RStvUFY7O0V5RXRwUE07SUFPSTtFekVtcFBWOztFeUUxcFBNO0lBT0k7RXpFdXBQVjs7RXlFOXBQTTtJQU9JO0V6RTJwUFY7O0V5RWxxUE07SUFPSTtFekUrcFBWOztFeUV0cVBNO0lBT0k7RXpFbXFQVjs7RXlFMXFQTTtJQU9JO0V6RXVxUFY7O0V5RTlxUE07SUFPSTtFekUycVBWOztFeUVsclBNO0lBT0k7RXpFK3FQVjs7RXlFdHJQTTtJQU9JO0V6RW1yUFY7O0V5RTFyUE07SUFPSTtFekV1clBWOztFeUU5clBNO0lBT0k7RXpFMnJQVjs7RXlFbHNQTTtJQU9JO0V6RStyUFY7O0V5RXRzUE07SUFPSTtFekVtc1BWOztFeUUxc1BNO0lBT0k7RXpFdXNQVjs7RXlFOXNQTTtJQU9JO0V6RTJzUFY7O0V5RWx0UE07SUFPSTtFekUrc1BWOztFeUV0dFBNO0lBT0k7RXpFbXRQVjs7RXlFMXRQTTtJQU9JO0V6RXV0UFY7O0V5RTl0UE07SUFPSTtFekUydFBWOztFeUVsdVBNO0lBT0k7RXpFK3RQVjs7RXlFdHVQTTtJQU9JO0V6RW11UFY7O0V5RTF1UE07SUFPSTtFekV1dVBWOztFeUU5dVBNO0lBT0k7RXpFMnVQVjs7RXlFbHZQTTtJQU9JO0V6RSt1UFY7O0V5RXR2UE07SUFPSTtFekVtdlBWOztFeUUxdlBNO0lBT0k7RXpFdXZQVjs7RXlFOXZQTTtJQU9JO0V6RTJ2UFY7O0V5RWx3UE07SUFPSTtFekUrdlBWOztFeUV0d1BNO0lBT0k7RXpFbXdQVjs7RXlFMXdQTTtJQU9JO0V6RXV3UFY7O0V5RTl3UE07SUFPSTtFekUyd1BWOztFeUVseFBNO0lBT0k7RXpFK3dQVjs7RXlFdHhQTTtJQU9JO0V6RW14UFY7O0V5RTF4UE07SUFPSTtFekV1eFBWOztFeUU5eFBNO0lBT0k7RXpFMnhQVjs7RXlFbHlQTTtJQU9JO0V6RSt4UFY7O0V5RXR5UE07SUFPSTtFekVteVBWOztFeUUxeVBNO0lBT0k7RXpFdXlQVjs7RXlFOXlQTTtJQU9JO0V6RTJ5UFY7O0V5RWx6UE07SUFPSTtFekUreVBWOztFeUV0elBNO0lBT0k7RXpFbXpQVjs7RXlFMXpQTTtJQU9JO0V6RXV6UFY7O0V5RTl6UE07SUFPSTtFekUyelBWOztFeUVsMFBNO0lBT0k7RXpFK3pQVjs7RXlFdDBQTTtJQU9JO0V6RW0wUFY7O0V5RTEwUE07SUFPSTtFekV1MFBWOztFeUU5MFBNO0lBT0k7RXpFMjBQVjs7RXlFbDFQTTtJQU9JO0V6RSswUFY7O0V5RXQxUE07SUFPSTtFekVtMVBWOztFeUUxMVBNO0lBT0k7RXpFdTFQVjs7RXlFOTFQTTtJQU9JO0V6RTIxUFY7O0V5RWwyUE07SUFPSTtFekUrMVBWOztFeUV0MlBNO0lBT0k7RXpFbTJQVjs7RXlFMTJQTTtJQU9JO0V6RXUyUFY7O0V5RTkyUE07SUFPSTtFekUyMlBWOztFeUVsM1BNO0lBT0k7RXpFKzJQVjs7RXlFdDNQTTtJQU9JO0V6RW0zUFY7O0V5RTEzUE07SUFPSTtFekV1M1BWOztFeUU5M1BNO0lBT0k7RXpFMjNQVjs7RXlFbDRQTTtJQU9JO0V6RSszUFY7O0V5RXQ0UE07SUFPSTtFekVtNFBWOztFeUUxNFBNO0lBT0k7RXpFdTRQVjs7RXlFOTRQTTtJQU9JO0V6RTI0UFY7O0V5RWw1UE07SUFPSTtFekUrNFBWOztFeUV0NVBNO0lBT0k7RXpFbTVQVjs7RXlFMTVQTTtJQU9JO0lBQUE7RXpFdzVQVjs7RXlFLzVQTTtJQU9JO0lBQUE7RXpFNjVQVjs7RXlFcDZQTTtJQU9JO0lBQUE7RXpFazZQVjs7RXlFejZQTTtJQU9JO0lBQUE7RXpFdTZQVjs7RXlFOTZQTTtJQU9JO0lBQUE7RXpFNDZQVjs7RXlFbjdQTTtJQU9JO0lBQUE7RXpFaTdQVjs7RXlFeDdQTTtJQU9JO0lBQUE7RXpFczdQVjs7RXlFNzdQTTtJQU9JO0lBQUE7RXpFMjdQVjs7RXlFbDhQTTtJQU9JO0lBQUE7RXpFZzhQVjs7RXlFdjhQTTtJQU9JO0lBQUE7RXpFcThQVjs7RXlFNThQTTtJQU9JO0lBQUE7RXpFMDhQVjs7RXlFajlQTTtJQU9JO0lBQUE7RXpFKzhQVjs7RXlFdDlQTTtJQU9JO0lBQUE7RXpFbzlQVjs7RXlFMzlQTTtJQU9JO0lBQUE7RXpFeTlQVjs7RXlFaCtQTTtJQU9JO0V6RTY5UFY7O0V5RXArUE07SUFPSTtFekVpK1BWOztFeUV4K1BNO0lBT0k7RXpFcStQVjs7RXlFNStQTTtJQU9JO0V6RXkrUFY7O0V5RWgvUE07SUFPSTtFekU2K1BWOztFeUVwL1BNO0lBT0k7RXpFaS9QVjs7RXlFeC9QTTtJQU9JO0V6RXEvUFY7O0V5RTUvUE07SUFPSTtFekV5L1BWOztFeUVoZ1FNO0lBT0k7RXpFNi9QVjs7RXlFcGdRTTtJQU9JO0V6RWlnUVY7O0V5RXhnUU07SUFPSTtFekVxZ1FWOztFeUU1Z1FNO0lBT0k7RXpFeWdRVjs7RXlFaGhRTTtJQU9JO0V6RTZnUVY7O0V5RXBoUU07SUFPSTtFekVpaFFWOztFeUV4aFFNO0lBT0k7RXpFcWhRVjs7RXlFNWhRTTtJQU9JO0V6RXloUVY7O0V5RWhpUU07SUFPSTtFekU2aFFWOztFeUVwaVFNO0lBT0k7RXpFaWlRVjs7RXlFeGlRTTtJQU9JO0V6RXFpUVY7O0V5RTVpUU07SUFPSTtFekV5aVFWOztFeUVoalFNO0lBT0k7RXpFNmlRVjs7RXlFcGpRTTtJQU9JO0V6RWlqUVY7O0V5RXhqUU07SUFPSTtFekVxalFWOztFeUU1alFNO0lBT0k7RXpFeWpRVjs7RXlFaGtRTTtJQU9JO0V6RTZqUVY7O0V5RXBrUU07SUFPSTtFekVpa1FWOztFeUV4a1FNO0lBT0k7RXpFcWtRVjs7RXlFNWtRTTtJQU9JO0V6RXlrUVY7O0V5RWhsUU07SUFPSTtFekU2a1FWOztFeUVwbFFNO0lBT0k7RXpFaWxRVjs7RXlFeGxRTTtJQU9JO0V6RXFsUVY7O0V5RTVsUU07SUFPSTtFekV5bFFWOztFeUVobVFNO0lBT0k7RXpFNmxRVjs7RXlFcG1RTTtJQU9JO0V6RWltUVY7O0V5RXhtUU07SUFPSTtJQUFBO0V6RXNtUVY7O0V5RTdtUU07SUFPSTtJQUFBO0V6RTJtUVY7O0V5RWxuUU07SUFPSTtJQUFBO0V6RWduUVY7O0V5RXZuUU07SUFPSTtJQUFBO0V6RXFuUVY7O0V5RTVuUU07SUFPSTtJQUFBO0V6RTBuUVY7O0V5RWpvUU07SUFPSTtJQUFBO0V6RStuUVY7O0V5RXRvUU07SUFPSTtJQUFBO0V6RW9vUVY7O0V5RTNvUU07SUFPSTtJQUFBO0V6RXlvUVY7O0V5RWhwUU07SUFPSTtJQUFBO0V6RThvUVY7O0V5RXJwUU07SUFPSTtJQUFBO0V6RW1wUVY7O0V5RTFwUU07SUFPSTtJQUFBO0V6RXdwUVY7O0V5RS9wUU07SUFPSTtJQUFBO0V6RTZwUVY7O0V5RXBxUU07SUFPSTtFekVpcVFWOztFeUV4cVFNO0lBT0k7RXpFcXFRVjs7RXlFNXFRTTtJQU9JO0V6RXlxUVY7O0V5RWhyUU07SUFPSTtFekU2cVFWOztFeUVwclFNO0lBT0k7RXpFaXJRVjs7RXlFeHJRTTtJQU9JO0V6RXFyUVY7O0V5RTVyUU07SUFPSTtFekV5clFWOztFeUVoc1FNO0lBT0k7RXpFNnJRVjs7RXlFcHNRTTtJQU9JO0V6RWlzUVY7O0V5RXhzUU07SUFPSTtFekVxc1FWOztFeUU1c1FNO0lBT0k7RXpFeXNRVjs7RXlFaHRRTTtJQU9JO0V6RTZzUVY7O0V5RXB0UU07SUFPSTtFekVpdFFWOztFeUV4dFFNO0lBT0k7RXpFcXRRVjs7RXlFNXRRTTtJQU9JO0V6RXl0UVY7O0V5RWh1UU07SUFPSTtFekU2dFFWOztFeUVwdVFNO0lBT0k7RXpFaXVRVjs7RXlFeHVRTTtJQU9JO0V6RXF1UVY7O0V5RTV1UU07SUFPSTtFekV5dVFWOztFeUVodlFNO0lBT0k7RXpFNnVRVjs7RXlFcHZRTTtJQU9JO0V6RWl2UVY7O0V5RXh2UU07SUFPSTtFekVxdlFWOztFeUU1dlFNO0lBT0k7RXpFeXZRVjs7RXlFaHdRTTtJQU9JO0V6RTZ2UVY7O0V5RXB3UU07SUFPSTtFekVpd1FWOztFeUV4d1FNO0lBT0k7RXpFcXdRVjs7RXlFNXdRTTtJQU9JO0V6RXl3UVY7QUFDRjtBZ0JqeFFJO0V5REFJO0lBT0k7RXpFOHdRVjs7RXlFcnhRTTtJQU9JO0V6RWt4UVY7O0V5RXp4UU07SUFPSTtFekVzeFFWOztFeUU3eFFNO0lBT0k7RXpFMHhRVjs7RXlFanlRTTtJQU9JO0V6RTh4UVY7O0V5RXJ5UU07SUFPSTtFekVreVFWOztFeUV6eVFNO0lBT0k7RXpFc3lRVjs7RXlFN3lRTTtJQU9JO0V6RTB5UVY7O0V5RWp6UU07SUFPSTtFekU4eVFWOztFeUVyelFNO0lBT0k7RXpFa3pRVjs7RXlFenpRTTtJQU9JO0V6RXN6UVY7O0V5RTd6UU07SUFPSTtFekUwelFWOztFeUVqMFFNO0lBT0k7RXpFOHpRVjs7RXlFcjBRTTtJQU9JO0V6RWswUVY7O0V5RXowUU07SUFPSTtFekVzMFFWOztFeUU3MFFNO0lBT0k7RXpFMDBRVjs7RXlFajFRTTtJQU9JO0V6RTgwUVY7O0V5RXIxUU07SUFPSTtFekVrMVFWOztFeUV6MVFNO0lBT0k7RXpFczFRVjs7RXlFNzFRTTtJQU9JO0V6RTAxUVY7O0V5RWoyUU07SUFPSTtFekU4MVFWOztFeUVyMlFNO0lBT0k7RXpFazJRVjs7RXlFejJRTTtJQU9JO0V6RXMyUVY7O0V5RTcyUU07SUFPSTtFekUwMlFWOztFeUVqM1FNO0lBT0k7RXpFODJRVjs7RXlFcjNRTTtJQU9JO0V6RWszUVY7O0V5RXozUU07SUFPSTtFekVzM1FWOztFeUU3M1FNO0lBT0k7RXpFMDNRVjs7RXlFajRRTTtJQU9JO0V6RTgzUVY7O0V5RXI0UU07SUFPSTtFekVrNFFWOztFeUV6NFFNO0lBT0k7RXpFczRRVjs7RXlFNzRRTTtJQU9JO0V6RTA0UVY7O0V5RWo1UU07SUFPSTtFekU4NFFWOztFeUVyNVFNO0lBT0k7RXpFazVRVjs7RXlFejVRTTtJQU9JO0V6RXM1UVY7O0V5RTc1UU07SUFPSTtFekUwNVFWOztFeUVqNlFNO0lBT0k7RXpFODVRVjs7RXlFcjZRTTtJQU9JO0V6RWs2UVY7O0V5RXo2UU07SUFPSTtFekVzNlFWOztFeUU3NlFNO0lBT0k7RXpFMDZRVjs7RXlFajdRTTtJQU9JO0V6RTg2UVY7O0V5RXI3UU07SUFPSTtFekVrN1FWOztFeUV6N1FNO0lBT0k7RXpFczdRVjs7RXlFNzdRTTtJQU9JO0V6RTA3UVY7O0V5RWo4UU07SUFPSTtFekU4N1FWOztFeUVyOFFNO0lBT0k7RXpFazhRVjs7RXlFejhRTTtJQU9JO0V6RXM4UVY7O0V5RTc4UU07SUFPSTtFekUwOFFWOztFeUVqOVFNO0lBT0k7RXpFODhRVjs7RXlFcjlRTTtJQU9JO0V6RWs5UVY7O0V5RXo5UU07SUFPSTtFekVzOVFWOztFeUU3OVFNO0lBT0k7RXpFMDlRVjs7RXlFaitRTTtJQU9JO0V6RTg5UVY7O0V5RXIrUU07SUFPSTtFekVrK1FWOztFeUV6K1FNO0lBT0k7RXpFcytRVjs7RXlFNytRTTtJQU9JO0V6RTArUVY7O0V5RWovUU07SUFPSTtFekU4K1FWOztFeUVyL1FNO0lBT0k7RXpFay9RVjs7RXlFei9RTTtJQU9JO0V6RXMvUVY7O0V5RTcvUU07SUFPSTtFekUwL1FWOztFeUVqZ1JNO0lBT0k7RXpFOC9RVjs7RXlFcmdSTTtJQU9JO0V6RWtnUlY7O0V5RXpnUk07SUFPSTtFekVzZ1JWOztFeUU3Z1JNO0lBT0k7RXpFMGdSVjs7RXlFamhSTTtJQU9JO0V6RThnUlY7O0V5RXJoUk07SUFPSTtFekVraFJWOztFeUV6aFJNO0lBT0k7RXpFc2hSVjs7RXlFN2hSTTtJQU9JO0V6RTBoUlY7O0V5RWppUk07SUFPSTtFekU4aFJWOztFeUVyaVJNO0lBT0k7SUFBQTtFekVtaVJWOztFeUUxaVJNO0lBT0k7SUFBQTtFekV3aVJWOztFeUUvaVJNO0lBT0k7SUFBQTtFekU2aVJWOztFeUVwalJNO0lBT0k7SUFBQTtFekVralJWOztFeUV6alJNO0lBT0k7SUFBQTtFekV1alJWOztFeUU5alJNO0lBT0k7SUFBQTtFekU0alJWOztFeUVua1JNO0lBT0k7SUFBQTtFekVpa1JWOztFeUV4a1JNO0lBT0k7SUFBQTtFekVza1JWOztFeUU3a1JNO0lBT0k7SUFBQTtFekUya1JWOztFeUVsbFJNO0lBT0k7SUFBQTtFekVnbFJWOztFeUV2bFJNO0lBT0k7SUFBQTtFekVxbFJWOztFeUU1bFJNO0lBT0k7SUFBQTtFekUwbFJWOztFeUVqbVJNO0lBT0k7SUFBQTtFekUrbFJWOztFeUV0bVJNO0lBT0k7SUFBQTtFekVvbVJWOztFeUUzbVJNO0lBT0k7RXpFd21SVjs7RXlFL21STTtJQU9JO0V6RTRtUlY7O0V5RW5uUk07SUFPSTtFekVnblJWOztFeUV2blJNO0lBT0k7RXpFb25SVjs7RXlFM25STTtJQU9JO0V6RXduUlY7O0V5RS9uUk07SUFPSTtFekU0blJWOztFeUVub1JNO0lBT0k7RXpFZ29SVjs7RXlFdm9STTtJQU9JO0V6RW9vUlY7O0V5RTNvUk07SUFPSTtFekV3b1JWOztFeUUvb1JNO0lBT0k7RXpFNG9SVjs7RXlFbnBSTTtJQU9JO0V6RWdwUlY7O0V5RXZwUk07SUFPSTtFekVvcFJWOztFeUUzcFJNO0lBT0k7RXpFd3BSVjs7RXlFL3BSTTtJQU9JO0V6RTRwUlY7O0V5RW5xUk07SUFPSTtFekVncVJWOztFeUV2cVJNO0lBT0k7RXpFb3FSVjs7RXlFM3FSTTtJQU9JO0V6RXdxUlY7O0V5RS9xUk07SUFPSTtFekU0cVJWOztFeUVuclJNO0lBT0k7RXpFZ3JSVjs7RXlFdnJSTTtJQU9JO0V6RW9yUlY7O0V5RTNyUk07SUFPSTtFekV3clJWOztFeUUvclJNO0lBT0k7RXpFNHJSVjs7RXlFbnNSTTtJQU9JO0V6RWdzUlY7O0V5RXZzUk07SUFPSTtFekVvc1JWOztFeUUzc1JNO0lBT0k7RXpFd3NSVjs7RXlFL3NSTTtJQU9JO0V6RTRzUlY7O0V5RW50Uk07SUFPSTtFekVndFJWOztFeUV2dFJNO0lBT0k7RXpFb3RSVjs7RXlFM3RSTTtJQU9JO0V6RXd0UlY7O0V5RS90Uk07SUFPSTtFekU0dFJWOztFeUVudVJNO0lBT0k7RXpFZ3VSVjs7RXlFdnVSTTtJQU9JO0V6RW91UlY7O0V5RTN1Uk07SUFPSTtFekV3dVJWOztFeUUvdVJNO0lBT0k7RXpFNHVSVjs7RXlFbnZSTTtJQU9JO0lBQUE7RXpFaXZSVjs7RXlFeHZSTTtJQU9JO0lBQUE7RXpFc3ZSVjs7RXlFN3ZSTTtJQU9JO0lBQUE7RXpFMnZSVjs7RXlFbHdSTTtJQU9JO0lBQUE7RXpFZ3dSVjs7RXlFdndSTTtJQU9JO0lBQUE7RXpFcXdSVjs7RXlFNXdSTTtJQU9JO0lBQUE7RXpFMHdSVjs7RXlFanhSTTtJQU9JO0lBQUE7RXpFK3dSVjs7RXlFdHhSTTtJQU9JO0lBQUE7RXpFb3hSVjs7RXlFM3hSTTtJQU9JO0lBQUE7RXpFeXhSVjs7RXlFaHlSTTtJQU9JO0lBQUE7RXpFOHhSVjs7RXlFcnlSTTtJQU9JO0lBQUE7RXpFbXlSVjs7RXlFMXlSTTtJQU9JO0lBQUE7RXpFd3lSVjs7RXlFL3lSTTtJQU9JO0V6RTR5UlY7O0V5RW56Uk07SUFPSTtFekVnelJWOztFeUV2elJNO0lBT0k7RXpFb3pSVjs7RXlFM3pSTTtJQU9JO0V6RXd6UlY7O0V5RS96Uk07SUFPSTtFekU0elJWOztFeUVuMFJNO0lBT0k7RXpFZzBSVjs7RXlFdjBSTTtJQU9JO0V6RW8wUlY7O0V5RTMwUk07SUFPSTtFekV3MFJWOztFeUUvMFJNO0lBT0k7RXpFNDBSVjs7RXlFbjFSTTtJQU9JO0V6RWcxUlY7O0V5RXYxUk07SUFPSTtFekVvMVJWOztFeUUzMVJNO0lBT0k7RXpFdzFSVjs7RXlFLzFSTTtJQU9JO0V6RTQxUlY7O0V5RW4yUk07SUFPSTtFekVnMlJWOztFeUV2MlJNO0lBT0k7RXpFbzJSVjs7RXlFMzJSTTtJQU9JO0V6RXcyUlY7O0V5RS8yUk07SUFPSTtFekU0MlJWOztFeUVuM1JNO0lBT0k7RXpFZzNSVjs7RXlFdjNSTTtJQU9JO0V6RW8zUlY7O0V5RTMzUk07SUFPSTtFekV3M1JWOztFeUUvM1JNO0lBT0k7RXpFNDNSVjs7RXlFbjRSTTtJQU9JO0V6RWc0UlY7O0V5RXY0Uk07SUFPSTtFekVvNFJWOztFeUUzNFJNO0lBT0k7RXpFdzRSVjs7RXlFLzRSTTtJQU9JO0V6RTQ0UlY7O0V5RW41Uk07SUFPSTtFekVnNVJWOztFeUV2NVJNO0lBT0k7RXpFbzVSVjtBQUNGO0FnQjU1Ukk7RXlEQUk7SUFPSTtFekV5NVJWOztFeUVoNlJNO0lBT0k7RXpFNjVSVjs7RXlFcDZSTTtJQU9JO0V6RWk2UlY7O0V5RXg2Uk07SUFPSTtFekVxNlJWOztFeUU1NlJNO0lBT0k7RXpFeTZSVjs7RXlFaDdSTTtJQU9JO0V6RTY2UlY7O0V5RXA3Uk07SUFPSTtFekVpN1JWOztFeUV4N1JNO0lBT0k7RXpFcTdSVjs7RXlFNTdSTTtJQU9JO0V6RXk3UlY7O0V5RWg4Uk07SUFPSTtFekU2N1JWOztFeUVwOFJNO0lBT0k7RXpFaThSVjs7RXlFeDhSTTtJQU9JO0V6RXE4UlY7O0V5RTU4Uk07SUFPSTtFekV5OFJWOztFeUVoOVJNO0lBT0k7RXpFNjhSVjs7RXlFcDlSTTtJQU9JO0V6RWk5UlY7O0V5RXg5Uk07SUFPSTtFekVxOVJWOztFeUU1OVJNO0lBT0k7RXpFeTlSVjs7RXlFaCtSTTtJQU9JO0V6RTY5UlY7O0V5RXArUk07SUFPSTtFekVpK1JWOztFeUV4K1JNO0lBT0k7RXpFcStSVjs7RXlFNStSTTtJQU9JO0V6RXkrUlY7O0V5RWgvUk07SUFPSTtFekU2K1JWOztFeUVwL1JNO0lBT0k7RXpFaS9SVjs7RXlFeC9STTtJQU9JO0V6RXEvUlY7O0V5RTUvUk07SUFPSTtFekV5L1JWOztFeUVoZ1NNO0lBT0k7RXpFNi9SVjs7RXlFcGdTTTtJQU9JO0V6RWlnU1Y7O0V5RXhnU007SUFPSTtFekVxZ1NWOztFeUU1Z1NNO0lBT0k7RXpFeWdTVjs7RXlFaGhTTTtJQU9JO0V6RTZnU1Y7O0V5RXBoU007SUFPSTtFekVpaFNWOztFeUV4aFNNO0lBT0k7RXpFcWhTVjs7RXlFNWhTTTtJQU9JO0V6RXloU1Y7O0V5RWhpU007SUFPSTtFekU2aFNWOztFeUVwaVNNO0lBT0k7RXpFaWlTVjs7RXlFeGlTTTtJQU9JO0V6RXFpU1Y7O0V5RTVpU007SUFPSTtFekV5aVNWOztFeUVoalNNO0lBT0k7RXpFNmlTVjs7RXlFcGpTTTtJQU9JO0V6RWlqU1Y7O0V5RXhqU007SUFPSTtFekVxalNWOztFeUU1alNNO0lBT0k7RXpFeWpTVjs7RXlFaGtTTTtJQU9JO0V6RTZqU1Y7O0V5RXBrU007SUFPSTtFekVpa1NWOztFeUV4a1NNO0lBT0k7RXpFcWtTVjs7RXlFNWtTTTtJQU9JO0V6RXlrU1Y7O0V5RWhsU007SUFPSTtFekU2a1NWOztFeUVwbFNNO0lBT0k7RXpFaWxTVjs7RXlFeGxTTTtJQU9JO0V6RXFsU1Y7O0V5RTVsU007SUFPSTtFekV5bFNWOztFeUVobVNNO0lBT0k7RXpFNmxTVjs7RXlFcG1TTTtJQU9JO0V6RWltU1Y7O0V5RXhtU007SUFPSTtFekVxbVNWOztFeUU1bVNNO0lBT0k7RXpFeW1TVjs7RXlFaG5TTTtJQU9JO0V6RTZtU1Y7O0V5RXBuU007SUFPSTtFekVpblNWOztFeUV4blNNO0lBT0k7RXpFcW5TVjs7RXlFNW5TTTtJQU9JO0V6RXluU1Y7O0V5RWhvU007SUFPSTtFekU2blNWOztFeUVwb1NNO0lBT0k7RXpFaW9TVjs7RXlFeG9TTTtJQU9JO0V6RXFvU1Y7O0V5RTVvU007SUFPSTtFekV5b1NWOztFeUVocFNNO0lBT0k7RXpFNm9TVjs7RXlFcHBTTTtJQU9JO0V6RWlwU1Y7O0V5RXhwU007SUFPSTtFekVxcFNWOztFeUU1cFNNO0lBT0k7RXpFeXBTVjs7RXlFaHFTTTtJQU9JO0V6RTZwU1Y7O0V5RXBxU007SUFPSTtFekVpcVNWOztFeUV4cVNNO0lBT0k7RXpFcXFTVjs7RXlFNXFTTTtJQU9JO0V6RXlxU1Y7O0V5RWhyU007SUFPSTtJQUFBO0V6RThxU1Y7O0V5RXJyU007SUFPSTtJQUFBO0V6RW1yU1Y7O0V5RTFyU007SUFPSTtJQUFBO0V6RXdyU1Y7O0V5RS9yU007SUFPSTtJQUFBO0V6RTZyU1Y7O0V5RXBzU007SUFPSTtJQUFBO0V6RWtzU1Y7O0V5RXpzU007SUFPSTtJQUFBO0V6RXVzU1Y7O0V5RTlzU007SUFPSTtJQUFBO0V6RTRzU1Y7O0V5RW50U007SUFPSTtJQUFBO0V6RWl0U1Y7O0V5RXh0U007SUFPSTtJQUFBO0V6RXN0U1Y7O0V5RTd0U007SUFPSTtJQUFBO0V6RTJ0U1Y7O0V5RWx1U007SUFPSTtJQUFBO0V6RWd1U1Y7O0V5RXZ1U007SUFPSTtJQUFBO0V6RXF1U1Y7O0V5RTV1U007SUFPSTtJQUFBO0V6RTB1U1Y7O0V5RWp2U007SUFPSTtJQUFBO0V6RSt1U1Y7O0V5RXR2U007SUFPSTtFekVtdlNWOztFeUUxdlNNO0lBT0k7RXpFdXZTVjs7RXlFOXZTTTtJQU9JO0V6RTJ2U1Y7O0V5RWx3U007SUFPSTtFekUrdlNWOztFeUV0d1NNO0lBT0k7RXpFbXdTVjs7RXlFMXdTTTtJQU9JO0V6RXV3U1Y7O0V5RTl3U007SUFPSTtFekUyd1NWOztFeUVseFNNO0lBT0k7RXpFK3dTVjs7RXlFdHhTTTtJQU9JO0V6RW14U1Y7O0V5RTF4U007SUFPSTtFekV1eFNWOztFeUU5eFNNO0lBT0k7RXpFMnhTVjs7RXlFbHlTTTtJQU9JO0V6RSt4U1Y7O0V5RXR5U007SUFPSTtFekVteVNWOztFeUUxeVNNO0lBT0k7RXpFdXlTVjs7RXlFOXlTTTtJQU9JO0V6RTJ5U1Y7O0V5RWx6U007SUFPSTtFekUreVNWOztFeUV0elNNO0lBT0k7RXpFbXpTVjs7RXlFMXpTTTtJQU9JO0V6RXV6U1Y7O0V5RTl6U007SUFPSTtFekUyelNWOztFeUVsMFNNO0lBT0k7RXpFK3pTVjs7RXlFdDBTTTtJQU9JO0V6RW0wU1Y7O0V5RTEwU007SUFPSTtFekV1MFNWOztFeUU5MFNNO0lBT0k7RXpFMjBTVjs7RXlFbDFTTTtJQU9JO0V6RSswU1Y7O0V5RXQxU007SUFPSTtFekVtMVNWOztFeUUxMVNNO0lBT0k7RXpFdTFTVjs7RXlFOTFTTTtJQU9JO0V6RTIxU1Y7O0V5RWwyU007SUFPSTtFekUrMVNWOztFeUV0MlNNO0lBT0k7RXpFbTJTVjs7RXlFMTJTTTtJQU9JO0V6RXUyU1Y7O0V5RTkyU007SUFPSTtFekUyMlNWOztFeUVsM1NNO0lBT0k7RXpFKzJTVjs7RXlFdDNTTTtJQU9JO0V6RW0zU1Y7O0V5RTEzU007SUFPSTtFekV1M1NWOztFeUU5M1NNO0lBT0k7SUFBQTtFekU0M1NWOztFeUVuNFNNO0lBT0k7SUFBQTtFekVpNFNWOztFeUV4NFNNO0lBT0k7SUFBQTtFekVzNFNWOztFeUU3NFNNO0lBT0k7SUFBQTtFekUyNFNWOztFeUVsNVNNO0lBT0k7SUFBQTtFekVnNVNWOztFeUV2NVNNO0lBT0k7SUFBQTtFekVxNVNWOztFeUU1NVNNO0lBT0k7SUFBQTtFekUwNVNWOztFeUVqNlNNO0lBT0k7SUFBQTtFekUrNVNWOztFeUV0NlNNO0lBT0k7SUFBQTtFekVvNlNWOztFeUUzNlNNO0lBT0k7SUFBQTtFekV5NlNWOztFeUVoN1NNO0lBT0k7SUFBQTtFekU4NlNWOztFeUVyN1NNO0lBT0k7SUFBQTtFekVtN1NWOztFeUUxN1NNO0lBT0k7RXpFdTdTVjs7RXlFOTdTTTtJQU9JO0V6RTI3U1Y7O0V5RWw4U007SUFPSTtFekUrN1NWOztFeUV0OFNNO0lBT0k7RXpFbThTVjs7RXlFMThTTTtJQU9JO0V6RXU4U1Y7O0V5RTk4U007SUFPSTtFekUyOFNWOztFeUVsOVNNO0lBT0k7RXpFKzhTVjs7RXlFdDlTTTtJQU9JO0V6RW05U1Y7O0V5RTE5U007SUFPSTtFekV1OVNWOztFeUU5OVNNO0lBT0k7RXpFMjlTVjs7RXlFbCtTTTtJQU9JO0V6RSs5U1Y7O0V5RXQrU007SUFPSTtFekVtK1NWOztFeUUxK1NNO0lBT0k7RXpFdStTVjs7RXlFOStTTTtJQU9JO0V6RTIrU1Y7O0V5RWwvU007SUFPSTtFekUrK1NWOztFeUV0L1NNO0lBT0k7RXpFbS9TVjs7RXlFMS9TTTtJQU9JO0V6RXUvU1Y7O0V5RTkvU007SUFPSTtFekUyL1NWOztFeUVsZ1RNO0lBT0k7RXpFKy9TVjs7RXlFdGdUTTtJQU9JO0V6RW1nVFY7O0V5RTFnVE07SUFPSTtFekV1Z1RWOztFeUU5Z1RNO0lBT0k7RXpFMmdUVjs7RXlFbGhUTTtJQU9JO0V6RStnVFY7O0V5RXRoVE07SUFPSTtFekVtaFRWOztFeUUxaFRNO0lBT0k7RXpFdWhUVjs7RXlFOWhUTTtJQU9JO0V6RTJoVFY7O0V5RWxpVE07SUFPSTtFekUraFRWO0FBQ0Y7QWdCdmlUSTtFeURBSTtJQU9JO0V6RW9pVFY7O0V5RTNpVE07SUFPSTtFekV3aVRWOztFeUUvaVRNO0lBT0k7RXpFNGlUVjs7RXlFbmpUTTtJQU9JO0V6RWdqVFY7O0V5RXZqVE07SUFPSTtFekVvalRWOztFeUUzalRNO0lBT0k7RXpFd2pUVjs7RXlFL2pUTTtJQU9JO0V6RTRqVFY7O0V5RW5rVE07SUFPSTtFekVna1RWOztFeUV2a1RNO0lBT0k7RXpFb2tUVjs7RXlFM2tUTTtJQU9JO0V6RXdrVFY7O0V5RS9rVE07SUFPSTtFekU0a1RWOztFeUVubFRNO0lBT0k7RXpFZ2xUVjs7RXlFdmxUTTtJQU9JO0V6RW9sVFY7O0V5RTNsVE07SUFPSTtFekV3bFRWOztFeUUvbFRNO0lBT0k7RXpFNGxUVjs7RXlFbm1UTTtJQU9JO0V6RWdtVFY7O0V5RXZtVE07SUFPSTtFekVvbVRWOztFeUUzbVRNO0lBT0k7RXpFd21UVjs7RXlFL21UTTtJQU9JO0V6RTRtVFY7O0V5RW5uVE07SUFPSTtFekVnblRWOztFeUV2blRNO0lBT0k7RXpFb25UVjs7RXlFM25UTTtJQU9JO0V6RXduVFY7O0V5RS9uVE07SUFPSTtFekU0blRWOztFeUVub1RNO0lBT0k7RXpFZ29UVjs7RXlFdm9UTTtJQU9JO0V6RW9vVFY7O0V5RTNvVE07SUFPSTtFekV3b1RWOztFeUUvb1RNO0lBT0k7RXpFNG9UVjs7RXlFbnBUTTtJQU9JO0V6RWdwVFY7O0V5RXZwVE07SUFPSTtFekVvcFRWOztFeUUzcFRNO0lBT0k7RXpFd3BUVjs7RXlFL3BUTTtJQU9JO0V6RTRwVFY7O0V5RW5xVE07SUFPSTtFekVncVRWOztFeUV2cVRNO0lBT0k7RXpFb3FUVjs7RXlFM3FUTTtJQU9JO0V6RXdxVFY7O0V5RS9xVE07SUFPSTtFekU0cVRWOztFeUVuclRNO0lBT0k7RXpFZ3JUVjs7RXlFdnJUTTtJQU9JO0V6RW9yVFY7O0V5RTNyVE07SUFPSTtFekV3clRWOztFeUUvclRNO0lBT0k7RXpFNHJUVjs7RXlFbnNUTTtJQU9JO0V6RWdzVFY7O0V5RXZzVE07SUFPSTtFekVvc1RWOztFeUUzc1RNO0lBT0k7RXpFd3NUVjs7RXlFL3NUTTtJQU9JO0V6RTRzVFY7O0V5RW50VE07SUFPSTtFekVndFRWOztFeUV2dFRNO0lBT0k7RXpFb3RUVjs7RXlFM3RUTTtJQU9JO0V6RXd0VFY7O0V5RS90VE07SUFPSTtFekU0dFRWOztFeUVudVRNO0lBT0k7RXpFZ3VUVjs7RXlFdnVUTTtJQU9JO0V6RW91VFY7O0V5RTN1VE07SUFPSTtFekV3dVRWOztFeUUvdVRNO0lBT0k7RXpFNHVUVjs7RXlFbnZUTTtJQU9JO0V6RWd2VFY7O0V5RXZ2VE07SUFPSTtFekVvdlRWOztFeUUzdlRNO0lBT0k7RXpFd3ZUVjs7RXlFL3ZUTTtJQU9JO0V6RTR2VFY7O0V5RW53VE07SUFPSTtFekVnd1RWOztFeUV2d1RNO0lBT0k7RXpFb3dUVjs7RXlFM3dUTTtJQU9JO0V6RXd3VFY7O0V5RS93VE07SUFPSTtFekU0d1RWOztFeUVueFRNO0lBT0k7RXpFZ3hUVjs7RXlFdnhUTTtJQU9JO0V6RW94VFY7O0V5RTN4VE07SUFPSTtFekV3eFRWOztFeUUveFRNO0lBT0k7RXpFNHhUVjs7RXlFbnlUTTtJQU9JO0V6RWd5VFY7O0V5RXZ5VE07SUFPSTtFekVveVRWOztFeUUzeVRNO0lBT0k7RXpFd3lUVjs7RXlFL3lUTTtJQU9JO0V6RTR5VFY7O0V5RW56VE07SUFPSTtFekVnelRWOztFeUV2elRNO0lBT0k7RXpFb3pUVjs7RXlFM3pUTTtJQU9JO0lBQUE7RXpFeXpUVjs7RXlFaDBUTTtJQU9JO0lBQUE7RXpFOHpUVjs7RXlFcjBUTTtJQU9JO0lBQUE7RXpFbTBUVjs7RXlFMTBUTTtJQU9JO0lBQUE7RXpFdzBUVjs7RXlFLzBUTTtJQU9JO0lBQUE7RXpFNjBUVjs7RXlFcDFUTTtJQU9JO0lBQUE7RXpFazFUVjs7RXlFejFUTTtJQU9JO0lBQUE7RXpFdTFUVjs7RXlFOTFUTTtJQU9JO0lBQUE7RXpFNDFUVjs7RXlFbjJUTTtJQU9JO0lBQUE7RXpFaTJUVjs7RXlFeDJUTTtJQU9JO0lBQUE7RXpFczJUVjs7RXlFNzJUTTtJQU9JO0lBQUE7RXpFMjJUVjs7RXlFbDNUTTtJQU9JO0lBQUE7RXpFZzNUVjs7RXlFdjNUTTtJQU9JO0lBQUE7RXpFcTNUVjs7RXlFNTNUTTtJQU9JO0lBQUE7RXpFMDNUVjs7RXlFajRUTTtJQU9JO0V6RTgzVFY7O0V5RXI0VE07SUFPSTtFekVrNFRWOztFeUV6NFRNO0lBT0k7RXpFczRUVjs7RXlFNzRUTTtJQU9JO0V6RTA0VFY7O0V5RWo1VE07SUFPSTtFekU4NFRWOztFeUVyNVRNO0lBT0k7RXpFazVUVjs7RXlFejVUTTtJQU9JO0V6RXM1VFY7O0V5RTc1VE07SUFPSTtFekUwNVRWOztFeUVqNlRNO0lBT0k7RXpFODVUVjs7RXlFcjZUTTtJQU9JO0V6RWs2VFY7O0V5RXo2VE07SUFPSTtFekVzNlRWOztFeUU3NlRNO0lBT0k7RXpFMDZUVjs7RXlFajdUTTtJQU9JO0V6RTg2VFY7O0V5RXI3VE07SUFPSTtFekVrN1RWOztFeUV6N1RNO0lBT0k7RXpFczdUVjs7RXlFNzdUTTtJQU9JO0V6RTA3VFY7O0V5RWo4VE07SUFPSTtFekU4N1RWOztFeUVyOFRNO0lBT0k7RXpFazhUVjs7RXlFejhUTTtJQU9JO0V6RXM4VFY7O0V5RTc4VE07SUFPSTtFekUwOFRWOztFeUVqOVRNO0lBT0k7RXpFODhUVjs7RXlFcjlUTTtJQU9JO0V6RWs5VFY7O0V5RXo5VE07SUFPSTtFekVzOVRWOztFeUU3OVRNO0lBT0k7RXpFMDlUVjs7RXlFaitUTTtJQU9JO0V6RTg5VFY7O0V5RXIrVE07SUFPSTtFekVrK1RWOztFeUV6K1RNO0lBT0k7RXpFcytUVjs7RXlFNytUTTtJQU9JO0V6RTArVFY7O0V5RWovVE07SUFPSTtFekU4K1RWOztFeUVyL1RNO0lBT0k7RXpFay9UVjs7RXlFei9UTTtJQU9JO0V6RXMvVFY7O0V5RTcvVE07SUFPSTtFekUwL1RWOztFeUVqZ1VNO0lBT0k7RXpFOC9UVjs7RXlFcmdVTTtJQU9JO0V6RWtnVVY7O0V5RXpnVU07SUFPSTtJQUFBO0V6RXVnVVY7O0V5RTlnVU07SUFPSTtJQUFBO0V6RTRnVVY7O0V5RW5oVU07SUFPSTtJQUFBO0V6RWloVVY7O0V5RXhoVU07SUFPSTtJQUFBO0V6RXNoVVY7O0V5RTdoVU07SUFPSTtJQUFBO0V6RTJoVVY7O0V5RWxpVU07SUFPSTtJQUFBO0V6RWdpVVY7O0V5RXZpVU07SUFPSTtJQUFBO0V6RXFpVVY7O0V5RTVpVU07SUFPSTtJQUFBO0V6RTBpVVY7O0V5RWpqVU07SUFPSTtJQUFBO0V6RStpVVY7O0V5RXRqVU07SUFPSTtJQUFBO0V6RW9qVVY7O0V5RTNqVU07SUFPSTtJQUFBO0V6RXlqVVY7O0V5RWhrVU07SUFPSTtJQUFBO0V6RThqVVY7O0V5RXJrVU07SUFPSTtFekVra1VWOztFeUV6a1VNO0lBT0k7RXpFc2tVVjs7RXlFN2tVTTtJQU9JO0V6RTBrVVY7O0V5RWpsVU07SUFPSTtFekU4a1VWOztFeUVybFVNO0lBT0k7RXpFa2xVVjs7RXlFemxVTTtJQU9JO0V6RXNsVVY7O0V5RTdsVU07SUFPSTtFekUwbFVWOztFeUVqbVVNO0lBT0k7RXpFOGxVVjs7RXlFcm1VTTtJQU9JO0V6RWttVVY7O0V5RXptVU07SUFPSTtFekVzbVVWOztFeUU3bVVNO0lBT0k7RXpFMG1VVjs7RXlFam5VTTtJQU9JO0V6RThtVVY7O0V5RXJuVU07SUFPSTtFekVrblVWOztFeUV6blVNO0lBT0k7RXpFc25VVjs7RXlFN25VTTtJQU9JO0V6RTBuVVY7O0V5RWpvVU07SUFPSTtFekU4blVWOztFeUVyb1VNO0lBT0k7RXpFa29VVjs7RXlFem9VTTtJQU9JO0V6RXNvVVY7O0V5RTdvVU07SUFPSTtFekUwb1VWOztFeUVqcFVNO0lBT0k7RXpFOG9VVjs7RXlFcnBVTTtJQU9JO0V6RWtwVVY7O0V5RXpwVU07SUFPSTtFekVzcFVWOztFeUU3cFVNO0lBT0k7RXpFMHBVVjs7RXlFanFVTTtJQU9JO0V6RThwVVY7O0V5RXJxVU07SUFPSTtFekVrcVVWOztFeUV6cVVNO0lBT0k7RXpFc3FVVjs7RXlFN3FVTTtJQU9JO0V6RTBxVVY7QUFDRjtBZ0JsclVJO0V5REFJO0lBT0k7RXpFK3FVVjs7RXlFdHJVTTtJQU9JO0V6RW1yVVY7O0V5RTFyVU07SUFPSTtFekV1clVWOztFeUU5clVNO0lBT0k7RXpFMnJVVjs7RXlFbHNVTTtJQU9JO0V6RStyVVY7O0V5RXRzVU07SUFPSTtFekVtc1VWOztFeUUxc1VNO0lBT0k7RXpFdXNVVjs7RXlFOXNVTTtJQU9JO0V6RTJzVVY7O0V5RWx0VU07SUFPSTtFekUrc1VWOztFeUV0dFVNO0lBT0k7RXpFbXRVVjs7RXlFMXRVTTtJQU9JO0V6RXV0VVY7O0V5RTl0VU07SUFPSTtFekUydFVWOztFeUVsdVVNO0lBT0k7RXpFK3RVVjs7RXlFdHVVTTtJQU9JO0V6RW11VVY7O0V5RTF1VU07SUFPSTtFekV1dVVWOztFeUU5dVVNO0lBT0k7RXpFMnVVVjs7RXlFbHZVTTtJQU9JO0V6RSt1VVY7O0V5RXR2VU07SUFPSTtFekVtdlVWOztFeUUxdlVNO0lBT0k7RXpFdXZVVjs7RXlFOXZVTTtJQU9JO0V6RTJ2VVY7O0V5RWx3VU07SUFPSTtFekUrdlVWOztFeUV0d1VNO0lBT0k7RXpFbXdVVjs7RXlFMXdVTTtJQU9JO0V6RXV3VVY7O0V5RTl3VU07SUFPSTtFekUyd1VWOztFeUVseFVNO0lBT0k7RXpFK3dVVjs7RXlFdHhVTTtJQU9JO0V6RW14VVY7O0V5RTF4VU07SUFPSTtFekV1eFVWOztFeUU5eFVNO0lBT0k7RXpFMnhVVjs7RXlFbHlVTTtJQU9JO0V6RSt4VVY7O0V5RXR5VU07SUFPSTtFekVteVVWOztFeUUxeVVNO0lBT0k7RXpFdXlVVjs7RXlFOXlVTTtJQU9JO0V6RTJ5VVY7O0V5RWx6VU07SUFPSTtFekUreVVWOztFeUV0elVNO0lBT0k7RXpFbXpVVjs7RXlFMXpVTTtJQU9JO0V6RXV6VVY7O0V5RTl6VU07SUFPSTtFekUyelVWOztFeUVsMFVNO0lBT0k7RXpFK3pVVjs7RXlFdDBVTTtJQU9JO0V6RW0wVVY7O0V5RTEwVU07SUFPSTtFekV1MFVWOztFeUU5MFVNO0lBT0k7RXpFMjBVVjs7RXlFbDFVTTtJQU9JO0V6RSswVVY7O0V5RXQxVU07SUFPSTtFekVtMVVWOztFeUUxMVVNO0lBT0k7RXpFdTFVVjs7RXlFOTFVTTtJQU9JO0V6RTIxVVY7O0V5RWwyVU07SUFPSTtFekUrMVVWOztFeUV0MlVNO0lBT0k7RXpFbTJVVjs7RXlFMTJVTTtJQU9JO0V6RXUyVVY7O0V5RTkyVU07SUFPSTtFekUyMlVWOztFeUVsM1VNO0lBT0k7RXpFKzJVVjs7RXlFdDNVTTtJQU9JO0V6RW0zVVY7O0V5RTEzVU07SUFPSTtFekV1M1VWOztFeUU5M1VNO0lBT0k7RXpFMjNVVjs7RXlFbDRVTTtJQU9JO0V6RSszVVY7O0V5RXQ0VU07SUFPSTtFekVtNFVWOztFeUUxNFVNO0lBT0k7RXpFdTRVVjs7RXlFOTRVTTtJQU9JO0V6RTI0VVY7O0V5RWw1VU07SUFPSTtFekUrNFVWOztFeUV0NVVNO0lBT0k7RXpFbTVVVjs7RXlFMTVVTTtJQU9JO0V6RXU1VVY7O0V5RTk1VU07SUFPSTtFekUyNVVWOztFeUVsNlVNO0lBT0k7RXpFKzVVVjs7RXlFdDZVTTtJQU9JO0V6RW02VVY7O0V5RTE2VU07SUFPSTtFekV1NlVWOztFeUU5NlVNO0lBT0k7RXpFMjZVVjs7RXlFbDdVTTtJQU9JO0V6RSs2VVY7O0V5RXQ3VU07SUFPSTtFekVtN1VWOztFeUUxN1VNO0lBT0k7RXpFdTdVVjs7RXlFOTdVTTtJQU9JO0V6RTI3VVY7O0V5RWw4VU07SUFPSTtFekUrN1VWOztFeUV0OFVNO0lBT0k7SUFBQTtFekVvOFVWOztFeUUzOFVNO0lBT0k7SUFBQTtFekV5OFVWOztFeUVoOVVNO0lBT0k7SUFBQTtFekU4OFVWOztFeUVyOVVNO0lBT0k7SUFBQTtFekVtOVVWOztFeUUxOVVNO0lBT0k7SUFBQTtFekV3OVVWOztFeUUvOVVNO0lBT0k7SUFBQTtFekU2OVVWOztFeUVwK1VNO0lBT0k7SUFBQTtFekVrK1VWOztFeUV6K1VNO0lBT0k7SUFBQTtFekV1K1VWOztFeUU5K1VNO0lBT0k7SUFBQTtFekU0K1VWOztFeUVuL1VNO0lBT0k7SUFBQTtFekVpL1VWOztFeUV4L1VNO0lBT0k7SUFBQTtFekVzL1VWOztFeUU3L1VNO0lBT0k7SUFBQTtFekUyL1VWOztFeUVsZ1ZNO0lBT0k7SUFBQTtFekVnZ1ZWOztFeUV2Z1ZNO0lBT0k7SUFBQTtFekVxZ1ZWOztFeUU1Z1ZNO0lBT0k7RXpFeWdWVjs7RXlFaGhWTTtJQU9JO0V6RTZnVlY7O0V5RXBoVk07SUFPSTtFekVpaFZWOztFeUV4aFZNO0lBT0k7RXpFcWhWVjs7RXlFNWhWTTtJQU9JO0V6RXloVlY7O0V5RWhpVk07SUFPSTtFekU2aFZWOztFeUVwaVZNO0lBT0k7RXpFaWlWVjs7RXlFeGlWTTtJQU9JO0V6RXFpVlY7O0V5RTVpVk07SUFPSTtFekV5aVZWOztFeUVoalZNO0lBT0k7RXpFNmlWVjs7RXlFcGpWTTtJQU9JO0V6RWlqVlY7O0V5RXhqVk07SUFPSTtFekVxalZWOztFeUU1alZNO0lBT0k7RXpFeWpWVjs7RXlFaGtWTTtJQU9JO0V6RTZqVlY7O0V5RXBrVk07SUFPSTtFekVpa1ZWOztFeUV4a1ZNO0lBT0k7RXpFcWtWVjs7RXlFNWtWTTtJQU9JO0V6RXlrVlY7O0V5RWhsVk07SUFPSTtFekU2a1ZWOztFeUVwbFZNO0lBT0k7RXpFaWxWVjs7RXlFeGxWTTtJQU9JO0V6RXFsVlY7O0V5RTVsVk07SUFPSTtFekV5bFZWOztFeUVobVZNO0lBT0k7RXpFNmxWVjs7RXlFcG1WTTtJQU9JO0V6RWltVlY7O0V5RXhtVk07SUFPSTtFekVxbVZWOztFeUU1bVZNO0lBT0k7RXpFeW1WVjs7RXlFaG5WTTtJQU9JO0V6RTZtVlY7O0V5RXBuVk07SUFPSTtFekVpblZWOztFeUV4blZNO0lBT0k7RXpFcW5WVjs7RXlFNW5WTTtJQU9JO0V6RXluVlY7O0V5RWhvVk07SUFPSTtFekU2blZWOztFeUVwb1ZNO0lBT0k7RXpFaW9WVjs7RXlFeG9WTTtJQU9JO0V6RXFvVlY7O0V5RTVvVk07SUFPSTtFekV5b1ZWOztFeUVocFZNO0lBT0k7RXpFNm9WVjs7RXlFcHBWTTtJQU9JO0lBQUE7RXpFa3BWVjs7RXlFenBWTTtJQU9JO0lBQUE7RXpFdXBWVjs7RXlFOXBWTTtJQU9JO0lBQUE7RXpFNHBWVjs7RXlFbnFWTTtJQU9JO0lBQUE7RXpFaXFWVjs7RXlFeHFWTTtJQU9JO0lBQUE7RXpFc3FWVjs7RXlFN3FWTTtJQU9JO0lBQUE7RXpFMnFWVjs7RXlFbHJWTTtJQU9JO0lBQUE7RXpFZ3JWVjs7RXlFdnJWTTtJQU9JO0lBQUE7RXpFcXJWVjs7RXlFNXJWTTtJQU9JO0lBQUE7RXpFMHJWVjs7RXlFanNWTTtJQU9JO0lBQUE7RXpFK3JWVjs7RXlFdHNWTTtJQU9JO0lBQUE7RXpFb3NWVjs7RXlFM3NWTTtJQU9JO0lBQUE7RXpFeXNWVjs7RXlFaHRWTTtJQU9JO0V6RTZzVlY7O0V5RXB0Vk07SUFPSTtFekVpdFZWOztFeUV4dFZNO0lBT0k7RXpFcXRWVjs7RXlFNXRWTTtJQU9JO0V6RXl0VlY7O0V5RWh1Vk07SUFPSTtFekU2dFZWOztFeUVwdVZNO0lBT0k7RXpFaXVWVjs7RXlFeHVWTTtJQU9JO0V6RXF1VlY7O0V5RTV1Vk07SUFPSTtFekV5dVZWOztFeUVodlZNO0lBT0k7RXpFNnVWVjs7RXlFcHZWTTtJQU9JO0V6RWl2VlY7O0V5RXh2Vk07SUFPSTtFekVxdlZWOztFeUU1dlZNO0lBT0k7RXpFeXZWVjs7RXlFaHdWTTtJQU9JO0V6RTZ2VlY7O0V5RXB3Vk07SUFPSTtFekVpd1ZWOztFeUV4d1ZNO0lBT0k7RXpFcXdWVjs7RXlFNXdWTTtJQU9JO0V6RXl3VlY7O0V5RWh4Vk07SUFPSTtFekU2d1ZWOztFeUVweFZNO0lBT0k7RXpFaXhWVjs7RXlFeHhWTTtJQU9JO0V6RXF4VlY7O0V5RTV4Vk07SUFPSTtFekV5eFZWOztFeUVoeVZNO0lBT0k7RXpFNnhWVjs7RXlFcHlWTTtJQU9JO0V6RWl5VlY7O0V5RXh5Vk07SUFPSTtFekVxeVZWOztFeUU1eVZNO0lBT0k7RXpFeXlWVjs7RXlFaHpWTTtJQU9JO0V6RTZ5VlY7O0V5RXB6Vk07SUFPSTtFekVpelZWOztFeUV4elZNO0lBT0k7RXpFcXpWVjtBQUNGO0EwRXoyVkE7RUQ0Q1E7SUFPSTtFekUwelZWOztFeUVqMFZNO0lBT0k7RXpFOHpWVjs7RXlFcjBWTTtJQU9JO0V6RWswVlY7O0V5RXowVk07SUFPSTtFekVzMFZWO0FBQ0Y7QTBFdjJWQTtFRHlCUTtJQU9JO0V6RTIwVlY7O0V5RWwxVk07SUFPSTtFekUrMFZWOztFeUV0MVZNO0lBT0k7RXpFbTFWVjs7RXlFMTFWTTtJQU9JO0V6RXUxVlY7O0V5RTkxVk07SUFPSTtFekUyMVZWOztFeUVsMlZNO0lBT0k7RXpFKzFWVjs7RXlFdDJWTTtJQU9JO0V6RW0yVlY7O0V5RTEyVk07SUFPSTtFekV1MlZWOztFeUU5MlZNO0lBT0k7RXpFMjJWVjs7RXlFbDNWTTtJQU9JO0V6RSsyVlY7QUFDRjtBMkVwN1ZBO0VBQ0U7QTNFczdWRjs7QTJFaDdWSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjMUVKTTtFMEVLTjtFQUNBO0VBQ0E7RUFDQTtFQ3JCSjtBNUV5OFZGO0EyRWo3Vk07RUFoQkY7SUFpQkk7SUFDQTtFM0VvN1ZOO0FBQ0Y7QTJFbjdWTTtFQXBCRjtJQXFCSTtJQUNBO0UzRXM3Vk47QUFDRjtBMkVyN1ZNO0VBeEJGO0lBeUJJO0lBQ0E7RTNFdzdWTjtBQUNGO0EyRXY3Vk07RUE1QkY7SUE2Qkk7SUFDQTtFM0UwN1ZOO0FBQ0Y7QTJFejdWTTtFQUNFLGMxRTNCRDtFMEU0QkMscUIxRTVCRDtBRHU5VlA7QTJFejdWTTtFQUVFO0EzRTA3VlI7QTJFeDdWUTtFQUpGO0lBS0k7RTNFMjdWUjtBQUNGO0EyRTE3VlE7RUFQRjtJQVFJO0UzRTY3VlI7QUFDRjtBMkU1N1ZRO0VBVkY7SUFXSTtFM0UrN1ZSO0FBQ0Y7QTJFNzdWTTtFQUNFO0EzRSs3VlI7QTJFNzdWUTtFQUhGO0lBSUk7RTNFZzhWUjtBQUNGO0EyRS83VlE7RUFORjtJQU9JO0UzRWs4VlI7QUFDRjtBMkVqOFZRO0VBVEY7SUFVSTtFM0VvOFZSO0FBQ0Y7QTJFbjhWUTtFQUNFO0EzRXE4VlY7QTJFbDhWTTtFQUNFO0EzRW84VlI7QTJFbDhWUTtFQUhGO0lBSUk7RTNFcThWUjtBQUNGO0EyRXA4VlE7RUFORjtJQU9JO0UzRXU4VlI7QUFDRjtBMkV0OFZRO0VBVEY7SUFVSTtFM0V5OFZSO0FBQ0Y7QTJFeDhWUTtFQUNFO0EzRTA4VlY7QTJFcjhWRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0V1OFZKO0EyRXI4Vkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw4QjFFakdFO0UwRWtHRjtBM0V1OFZOO0EyRXI4Vk07RUFDRTtBM0V1OFZSO0EyRXI4Vk07RUFDRTtBM0V1OFZSO0EyRXI4Vk07RUFDRTtFQUNBLGtDMUUvR087QURzaldmOztBMkUvN1ZFO0VBQ0U7QTNFazhWSjtBMkVoOFZJO0VBQ0U7QTNFazhWTjs7QTJFNzdWQTtFQUNFO0VBQ0E7RUFDQTtBM0VnOFZGO0EyRTk3VkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRWc4Vko7QTJFOTdWSTtFQUNFO0VBQ0E7RUFDQTtBM0VnOFZOOztBMkUzN1ZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRTg3VkY7O0E2RW5tV0E7RUFDRTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7QTdFbW1XRjtBNkU1bFdBO0VBQ0U7QTdFOGxXRjs7QTZFNWxXQTtFQUNFO0E3RStsV0Y7O0E2RTdsV0E7RUFDRTtBN0VnbVdGOztBNkU5bFdBO0VBQ0U7QTdFaW1XRjs7QTZFL2xXQTtFQUNFO0E3RWttV0Y7O0E2RWhtV0E7RUFDRTtBN0VtbVdGOztBNkVqbVdBO0VBQ0U7QTdFb21XRjs7QTZFbG1XQTtFQUNFO0E3RXFtV0Y7O0E2RW5tV0E7RUFDRTtBN0VzbVdGOztBNkVwbVdBO0VBQ0U7QTdFdW1XRjs7QTZFcm1XQTtFQUNFO0E3RXdtV0Y7O0E2RXRtV0E7RUFDRTtBN0V5bVdGOztBNkV2bVdBOzs7RUFHRTtBN0UwbVdGOztBNkV4bVdBO0VBQ0U7QTdFMm1XRjs7QTZFem1XQTtFQUNFO0E3RTRtV0Y7O0E2RTFtV0E7RUFDRTtBN0U2bVdGOztBNkUzbVdBO0VBQ0U7QTdFOG1XRjs7QTZFNW1XQTtFQUNFO0E3RSttV0Y7O0E2RTdtV0E7RUFDRTtBN0VnbldGOztBNkU5bVdBO0VBQ0U7QTdFaW5XRjs7QTZFL21XQTtFQUNFO0E3RWtuV0Y7O0E2RWhuV0E7RUFDRTtBN0VtbldGOztBNkVqbldBO0VBQ0U7QTdFb25XRjs7QTZFbG5XQTtFQUNFO0E3RXFuV0Y7O0E2RW5uV0E7RUFDRTtBN0VzbldGOztBNkVwbldBO0VBQ0U7QTdFdW5XRjs7QTZFcm5XQTtFQUNFO0E3RXduV0Y7O0E2RXRuV0E7RUFDRTtBN0V5bldGOztBNkV2bldBO0VBQ0U7QTdFMG5XRjs7QTZFeG5XQTtFQUNFO0E3RTJuV0Y7O0E2RXpuV0E7RUFDRTtBN0U0bldGOztBNkUxbldBOzs7RUFHRTtBN0U2bldGOztBNkUzbldBO0VBQ0U7QTdFOG5XRjs7QTZFNW5XQTtFQUNFO0E3RStuV0Y7O0E2RTduV0E7OztFQUdFO0E3RWdvV0Y7O0E2RTluV0E7RUFDRTtBN0Vpb1dGOztBNkUvbldBOzs7RUFHRTtBN0Vrb1dGOztBNkVob1dBO0VBQ0U7QTdFbW9XRjs7QTZFam9XQTtFQUNFO0E3RW9vV0Y7O0E2RWxvV0E7RUFDRTtBN0Vxb1dGOztBNkVub1dBO0VBQ0U7QTdFc29XRjs7QTZFcG9XQTtFQUNFO0E3RXVvV0Y7O0E2RXJvV0E7RUFDRTtBN0V3b1dGOztBNkV0b1dBO0VBQ0U7QTdFeW9XRjs7QTZFdm9XQTtFQUNFO0E3RTBvV0Y7O0E2RXhvV0E7RUFDRTtBN0Uyb1dGOztBNkV6b1dBO0VBQ0U7QTdFNG9XRjs7QTZFMW9XQTtFQUNFO0E3RTZvV0Y7O0E2RTNvV0E7RUFDRTtBN0U4b1dGOztBNkU1b1dBO0VBQ0U7QTdFK29XRjs7QTZFN29XQTtFQUNFO0E3RWdwV0Y7O0E2RTlvV0E7RUFDRTtBN0VpcFdGOztBNkUvb1dBO0VBQ0U7QTdFa3BXRjs7QTZFaHBXQTtFQUNFO0E3RW1wV0Y7O0E2RWpwV0E7RUFDRTtBN0VvcFdGOztBNkVscFdBO0VBQ0U7QTdFcXBXRjs7QTZFbnBXQTtFQUNFO0E3RXNwV0Y7O0E2RXBwV0E7RUFDRTtBN0V1cFdGOztBQWgxV0E7QUFDQTtFQUNFO0VBQ0E7QUFtMVdGO0FBajFXRTtFQUNFO0VBQ0E7QUFtMVdKO0FBajFXRTtFQVJGO0lBU0k7SUFDQTtFQW8xV0Y7RUFsMVdFO0lBQ0U7SUFDQTtFQW8xV0o7QUFDRjs7QUFqMVdBO0VBQ0U7RUFDQTtBQW8xV0Y7QUFsMVdFO0VBQ0U7RUFDQTtBQW8xV0o7QUFsMVdFO0VBUkY7SUFTSTtJQUNBO0VBcTFXRjtFQW4xV0U7SUFDRTtJQUNBO0VBcTFXSjtBQUNGOztBQWwxV0E7RUFDRTtBQXExV0Y7QUFuMVdFO0VBSEY7SUFJSTtFQXMxV0Y7QUFDRjs7QUFwMVdBO0VBQ0U7QUF1MVdGO0FBcjFXRTtFQUhGO0lBSUk7RUF3MVdGO0FBQ0Y7O0FBdDFXQTtFQUNFO0FBeTFXRjs7QUF2MVdBO0VBQ0U7QUEwMVdGO0FBeDFXRTtFQUhGO0lBSUk7RUEyMVdGO0FBQ0Y7O0FBejFXQTtFQUNFO0FBNDFXRjtBQTExV0U7RUFIRjtJQUlJO0VBNjFXRjtBQUNGO0FBNTFXRTtFQU5GO0lBT0k7RUErMVdGO0FBQ0Y7O0FBNzFXQTtFQUNFO0FBZzJXRjs7QUE5MVdBO0VBQ0U7QUFpMldGO0FBLzFXRTtFQUhGO0lBSUk7RUFrMldGO0FBQ0Y7O0FBaDJXQTtFQUNFO0FBbTJXRjs7QUFqMldBO0VBQ0U7QUFvMldGOztBQWwyV0E7RUFDRTtBQXEyV0Y7O0FBbjJXQTtFQUNFO0FBczJXRjs7QUFwMldBO0VBQ0U7QUF1MldGOztBQXIyV0E7RUFDRTtFQUNBO0FBdzJXRjtBQXQyV0U7RUFKRjtJQUtJO0lBQ0E7RUF5MldGO0FBQ0Y7QUF4MldFO0VBUkY7SUFTSTtJQUNBO0VBMjJXRjtBQUNGOztBQXoyV0E7RUFDRTtBQTQyV0Y7O0FBeDJXRTtFQUZGO0lBR0k7SUFDQTtJQUNBO0VBNDJXRjtBQUNGOztBQXAyV0E7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBQXUyV0Y7O0FBcDJXQTtFQUNFLG9DQzFIYTtFRDJIYixnQkN6SGdCO0VEMEhoQjtFQUNBO0FBdTJXRjtBQXIyV0U7RUFFRTtBQXMyV0o7QUFuMldFO0VBWEY7SUFZSTtJQUNBO0VBczJXRjtBQUNGO0FBcDJXRTtFQWhCRjtJQWlCSTtJQUNBO0VBdTJXRjtBQUNGO0FBcjJXRTtFQUVFO0FBczJXSjs7QUFsMldBO0VBQ0U7RUFDQTtBQXEyV0Y7O0FBbjJXQTtFQUNFO0VBQ0E7QUFzMldGOztBQW4yV0E7O0VBRUU7RUFDQTtBQXMyV0Y7QUFwMldFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBdTJXSjtBQXIyV0U7O0VBQWU7RUFDYjtBQXkyV0o7QUF2MldFOztFQUFrQjtFQUNoQjtBQTIyV0o7QUF6MldJO0VBSEY7O0lBSUk7RUE2MldKO0FBQ0Y7QUEzMldFOztFQUF5QjtFQUN2QjtBQSsyV0o7QUE3MldJO0VBSEY7O0lBSUk7RUFpM1dKO0FBQ0Y7QUFoM1dJO0VBTkY7O0lBT0k7RUFvM1dKO0FBQ0Y7QUFuM1dJO0VBVEY7O0lBVUk7RUF1M1dKO0FBQ0Y7QUFyM1dFOztFQUFrQjtFQUNoQjtBQXkzV0o7QUF2M1dFOztFQUFpQjtFQUNmO0FBMjNXSjtBQXozV0U7O0VBQWU7RUFDYjtBQTYzV0o7QUEzM1dJO0VBSEY7O0lBSUk7RUErM1dKO0FBQ0Y7QUE3M1dFOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWc0V0o7QUE5M1dFOztFQUNFO0VBQ0E7QUFpNFdKO0FBLzNXRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCQzFPSTtBRDRtWFI7QUFoNFdJOzs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQW80V047O0FBLzNXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY0N4UEs7RUR5UEwsb0NDalBhO0VEa1BiO0VBQ0E7RUFDQSxnQkNqUGtCO0FEbW5YcEI7QUFoNFdFO0VBZEY7SUFlSTtJQUNBO0VBbTRXRjtBQUNGO0FBbDRXRTtFQUNFO0VBQ0E7QUFvNFdKO0FBbDRXSTtFQUNFO0FBbzRXTjtBQWw0V0k7RUFQRjtJQVFJO0lBQ0E7RUFxNFdKO0FBQ0Y7QUFuNFdFO0VBQ0U7RUFDQTtBQXE0V0o7QUFuNFdJO0VBSkY7SUFLSTtJQUNBO0VBczRXSjtBQUNGO0FBbjRXRTtFQUNFO0VBQ0EscUJDelJFO0VEMFJGLGNDMVJFO0FEK3BYTjtBQW40V0U7RUFDRSx5QkM3UkU7RUQ4UkYseUJDcFNJO0FEeXFYUjtBQW40V0U7RUFDRSx5QkNqU0U7RURrU0YseUJDeFNJO0VEeVNKLHFCQ25TRTtBRHdxWE47QUFuNFdJO0VBQ0UscUJDdlNDO0VEd1NELHlCQ3hTQztBRDZxWFA7QUFsNFdFO0VBQ0U7RUFDQTtBQW80V0o7QUFsNFdJO0VBQ0U7QUFvNFdOO0FBbDRXSTtFQUNFO0VBQ0E7RUFDQTtBQW80V047QUFqNFdNO0VBQ0U7QUFtNFdSO0FBLzNXRTtFQUNFO0FBaTRXSjtBQS8zV0k7RUFDRSx5QkNqVUM7RURrVUQseUJDdlVFO0FEd3NYUjtBQS8zV007RUFDRTtBQWk0V1I7QUE3M1dFO0VBQ0U7RUFDQTtBQSszV0o7QUE3M1dJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQSszV047QUE3M1dJO0VBQ0U7QUErM1dOO0FBNzNXTTtFQUNFO0FBKzNXUjs7QUExM1dBO0VBQ0UsZ0JDalZtQjtFRGtWbkI7RTRFN1dBO0E1RTJ1WEY7QUEzM1dFO0U0RWhYQTtFNUVtWEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTQzV0o7QUExM1dFO0VBQ0U7QUE0M1dKO0FBMTNXSTtFQUNFO0FBNDNXTjs7QUF2M1dBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFQTAzV0Y7O0VBdjNXQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VBMDNXRjtBQUNGO0FBejNXSTtFQU5GO0lBT0k7SUFDQTtFQTQzV0o7QUFDRjtBQXgzV0E7RUFDRTtBQTAzV0Y7QUF4M1dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJDOVpJO0VEK1pKO0VBQ0E7RTRFemFGO0U1RTJhRTtBQTAzV0o7QUF2M1dJO0VBQ0U7QUF5M1dOO0FBdjNXSTtFQUNFO0FBeTNXTjtBQXYzV0k7RUFDRTtBQXkzV047QUFyM1dNO0VBQ0U7QUF1M1dSO0FBcjNXTTtFQUNFO0FBdTNXUjtBQWwzV007RUFDRTtBQW8zV1I7QUFsM1dNO0VBQ0U7QUFvM1dSOztBOEUzelhBO0VBQ0U7RUFDQTtFQUNBO0E5RTh6WEY7QThFNXpYRTtFQUNFO0E5RTh6WEo7O0E4RTF6WEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRm5CQTtFRWtHQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUFBO0E5RSt3WEY7QThFMzFYRTtFQWJGO0lBY0k7SUFDQTtFOUU4MVhGO0FBQ0Y7QThFNzFYRTtFQWpCRjtJQWtCSTtJQUNBO0U5RWcyWEY7QUFDRjtBOEUvMVhFO0VBQ0U7QTlFaTJYSjtBOEUvMVhFO0VBQ0U7QTlFaTJYSjtBOEU3MVhJO0VBQ0U7RUFDQSxnQjdFaEJZO0U2RWlCWjtFQUNBO0VBQ0EseUI3RWxDRTtBRGk0WFI7QThFNzFYTTtFQUNFO0E5RSsxWFI7QThFMTFYTTtFQUNFLGM3RXRDRDtBRGs0WFA7QThFejFYSTtFQUNFLGdCN0U3QmU7QUR3M1hyQjtBOEV6MVhNO0VBQ0UsYzdFNUNGO0FEdTRYTjtBOEV2MVhFO0VBRUUsb0M3RXhESTtFNkV5REo7QTlFdzFYSjtBOEVwMVhNO0VBQ0UsYzdFekREO0FEKzRYUDtBOEVwMVhNO0VBQ0UsYzdFM0RGO0FEaTVYTjtBOEVsMVhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFbzFYSjtBOEVsMVhFO0VBQ0U7RUFDQTtBOUVvMVhKO0E4RWwxWEk7RUFDRTtFQUNBO0E5RW8xWE47QThFajFYSTtFQUNFO0VBQ0E7QTlFbTFYTjs7QThFNXlYRTtFQUNFO0VBQ0E7RUZ4SUY7QTVFdzdYRjtBOEU3eVhJO0VBTEY7SUFNSTtFOUVnelhKO0FBQ0Y7QThFL3lYSTtFQUNFO0E5RWl6WE47QThFL3lYTTtFQUdFO0E5RSt5WFI7QThFNXlYSTtFQUNFO0VBQ0E7RUFDQTtBOUU4eVhOO0E4RTV5WE07RUFHRTtBOUU0eVhSOztBOEV0eVhBO0FBQ0E7RUFDRTtJQUNFO0lBQ0E7RTlFeXlYRjtFOEV0eVhBO0lBQ0U7SUFDQTtFOUV3eVhGO0FBQ0Y7QThFcnlYQTtFQUNFO0lBQ0U7SUFDQTtFOUV1eVhGO0U4RXB5WEE7SUFDRTtJQUNBO0U5RXN5WEY7QUFDRjtBOEVueVhBO0VBQ0U7SUFDRTtJQUNBO0U5RXF5WEY7RThFbHlYQTtJQUNFO0lBQ0E7RTlFb3lYRjtBQUNGO0E4RWp5WEE7RUFDRTtJQUNFO0lBQ0E7RTlFbXlYRjtFOEVoeVhBO0lBQ0U7SUFDQTtFOUVreVhGO0FBQ0Y7QThFN3hYSTtFQURGO0lBRUk7SUFDQTtFOUVneVhKO0U4RS94WEk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U5RWl5WE47QUFDRjs7QStFamdZRTtFQUNFO0VBQ0E7QS9Fb2dZSjtBK0VsZ1lFO0VBQ0U7RUFDQTtBL0VvZ1lKO0ErRWxnWUU7RUFDRTtBL0VvZ1lKO0ErRWxnWUk7RUFIRjtJQUtJO0UvRW9nWUo7QUFDRjtBK0VsZ1lFO0VBQ0UsbUI5RVJJO0U4RVNKO0EvRW9nWUo7QStFbGdZRTtFQUNFO0VBQ0E7QS9Fb2dZSjtBK0VsZ1lJO0VBQ0U7QS9Fb2dZTjtBK0VqZ1lFO0VBQ0U7QS9FbWdZSjtBK0VqZ1lJO0VBSEY7SUFJSTtFL0VvZ1lKO0FBQ0Y7QStFbmdZSTtFQU5GO0lBT0k7RS9Fc2dZSjtBQUNGO0ErRXJnWUk7RUFURjtJQVVJO0UvRXdnWUo7QUFDRjtBK0V2Z1lJO0VBWkY7SUFhSTtFL0UwZ1lKO0FBQ0Y7QStFemdZSTtFQWZGO0lBZ0JJO0UvRTRnWUo7QUFDRjs7QStFeGdZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9FMmdZRjtBK0V6Z1lFO0VBQ0UseUI5RWpESTtFOEVrREo7RUFDQTtFSDVERjtBNUV3a1lGO0ErRXpnWUk7RUFDRSxjOUU5Q1U7QUR5alloQjs7QStFdGdZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0I5RWxEbUI7RThFbURuQjtFQUNBO0VBQ0EsYzlFbEVLO0UyRWRMO0E1RTBsWUY7QStFdmdZRTtFQWRGO0lBZUk7RS9FMGdZRjtBQUNGO0ErRXpnWUU7RUFqQkY7SUFrQkk7SUFDQTtFL0U0Z1lGO0FBQ0Y7QStFM2dZRTtFQUNFO0VBQ0E7RUFDQTtFSDdGRjtBNUUybVlGO0ErRTNnWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUI5RXhGRztFMkVkTDtBNUVvbllGO0ErRTNnWUU7RUFDRTtBL0U2Z1lKO0ErRTNnWUk7RUFDRSxjOUU5RkE7QUQybVlOO0ErRTNnWU07RUFDRSx5QjlFakdGO0FEOG1ZTjs7QStFdmdZQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG9DOUVqSE07RThFa0hOO0VBQ0E7QS9FMGdZRjtBK0V4Z1lFO0VBQ0UsYzlFaEhFO0U4RWlIRjtBL0UwZ1lKO0ErRXhnWUk7RUFDRTtBL0UwZ1lOO0ErRXhnWU07RUFIRjtJQUlJO0UvRTJnWU47QUFDRjtBK0UxZ1lNO0VBTkY7SUFPSTtFL0U2Z1lOO0FBQ0Y7QStFM2dZSTtFQUNFLHlCOUUvSEM7RThFZ0lELHlCOUVySUU7QURrcFlSO0ErRTNnWUk7RUFDRSx5QjlFbElBO0U4RW1JQSx5QjlFeklFO0FEc3BZUjs7QWdGaHFZQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUpKQTtFSU1BO0VBQ0E7RUFDQTtFQUNBO0FoRm1xWUY7QWdGanFZRTtFQVhGO0lBWUk7SUFDQTtJQUNBO0VoRm9xWUY7QUFDRjtBZ0ZucVlFO0VBaEJGO0lBaUJJO0lBQ0E7SUFDQTtFaEZzcVlGO0FBQ0Y7QWdGcnFZRTtFQUdFLHFCL0VaZ0I7QURpcllwQjtBZ0Y3cFlRO0VBQ0U7QWhGK3BZVjtBZ0Y3cFlVO0VBQ0UsbUIvRXRCTDtFK0V1Qks7RUFDQTtFQUNBO0VBQ0E7QWhGK3BZWjtBZ0Y1cFlVO0VBQ0U7RUFDQTtBaEY4cFlaO0FnRjVwWVU7RUFDRTtFQUNBO0FoRjhwWVo7QWdGeHBZRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoRjBwWUo7QWdGeHBZSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsOEIvRXpERTtFK0UwREY7RUFDQTtBaEYwcFlOO0FnRnhwWU07RUFHRSxtQi9FN0RZO0FEcXRZcEI7QWdGcnBZSTtFQUNFO0VBQ0E7QWhGdXBZTjtBZ0ZycFlNO0VBQ0U7RUFDQTtBaEZ1cFlSO0FnRnJwWU07RUFDRTtFQUNBO0FoRnVwWVI7O0FnRmpwWUE7QUFDQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEZvcFlGO0FBQ0Y7QWdGaHBZQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUpuSEE7QTVFc3dZRjtBZ0ZocFlFO0VBQ0U7RUFDQTtFQUNBO0FoRmtwWUo7QWdGaHBZRTs7Ozs7OztFQUVFO0FoRnVwWUo7QWdGcnBZRTtFQUNFO0VBQ0Esb0MvRXhISTtFK0V5SEo7RUFDQTtBaEZ1cFlKO0FnRnJwWUk7RUFDRTtBaEZ1cFlOO0FnRm5wWVE7RUFDRTtBaEZxcFlWO0FnRm5wWVE7RUFDRTtFQUNBO0VBQ0EsYy9FaklKO0UrRWtJSTtFSmpKUjtFSW1KUTtBaEZxcFlWO0FnRm5wWVU7RUFDRSxxQy9FaklDO0UrRWtJRDtFQUNBLGdCL0UvSFE7RStFZ0lSLGMvRTNJTDtFK0U0SUs7QWhGcXBZWjtBZ0ZucFlVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0EsdUIvRTdKRztFK0U4Skg7QWhGb3BZWjtBZ0Y3b1lZO0VBQ0UsYy9FOUpSO0FENnlZTjtBZ0Y3b1lZO0VBQ0U7QWhGK29ZZDtBZ0Yxb1lNO0VBQ0U7RUFDQTtBaEY0b1lSO0FnRjFvWVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0MvRTNMSztFK0U0TEw7RUpuTVI7QTVFZzFZRjtBZ0Z4b1lVO0VBQ0U7QWhGMG9ZWjtBZ0Z2b1lVO0VBQ0U7RUFDQTtBaEZ5b1laO0FnRmxvWU07RUFDRTtBaEZvb1lSO0FnRmxvWU07RUFMRjtJQU1JO0lBQ0E7RWhGcW9ZTjtFZ0Zub1lNO0lBQ0U7RWhGcW9ZUjtBQUNGO0FnRmpvWUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEZtb1lKO0FnRmpvWUk7RUFDRTtFQUNBO0FoRm1vWU47QWdGam9ZSTtFQUNFO0FoRm1vWU47QWdGL25ZUTtFQUNFO0VBQ0EscUMvRTlORztFK0UrTkg7RUFDQSxnQi9FNU5VO0UrRTZOVixjL0V4T0g7QUR5MllQO0FnRjduWVU7RUFDRSxjL0U1T047QUQyMllOO0FnRmpuWUE7QUFDQTtFQUdFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsOEIvRTlRSTtFRCszWU47RWdGL21ZRTtJQUNFO0lBQ0E7RWhGaW5ZSjtFZ0Y5bVlFO0lBQ0U7RWhGZ25ZSjtFZ0Y3bVlFO0lBQ0U7SUFDQTtJQUNBO0VoRittWUo7RWdGN21ZSTtJQUNFO0lBQ0EsOEIvRWhTQTtFRCs0WU47RWdGN21ZTTtJQUNFO0VoRittWVI7RWdGMW1ZTTtJQUNFLHFDL0U3Ukc7SStFOFJIO0lBQ0EsZ0IvRTNSVTtJK0U0UlYsbUIvRTNTRjtJK0U0U0U7RWhGNG1ZUjtBQUNGO0FnRjNtWVU7RUFQRjtJQVFJO0lBQ0E7RWhGOG1ZVjtBQUNGO0FnRi9wWUE7RUFvRFE7SUFDRSxvQy9FelNLO0krRTBTTDtJQUNBLGdCL0V6U1E7SStFMFNSLHVCL0UzVEs7SStFNFRMO0VoRjhtWVI7QUFDRjtBZ0Y3bVlVO0VBUEY7SUFRSTtFaEZnbllWO0FBQ0Y7QWdGN3FZQTtFQWlFVTtJQUNFO0VoRittWVY7QUFDRjtBZ0ZscllBO0VBd0VVO0lBQ0U7RWhGNm1ZVjtFZ0YzbVlVO0lBQ0U7SUFDQTtJQUNBO0VoRjZtWVo7QUFDRjtBZ0Y1cllBO0VBbUZRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQSxjL0VwVkg7SStFcVZHO0lBQ0E7SUFDQTtFaEY0bVlSO0VnRjFtWVE7SUFDRSx1Qi9FaldHO0VENjhZYjtFZ0YxbVlRO0lBQ0UsdUIvRXBXRztFRGc5WWI7QUFDRjtBZ0Z4bVlNO0VBOUVGO0lBK0VJO0lBQ0E7RWhGMm1ZTjtBQUNGO0FnRnptWU07RUFuRkY7SUFvRkk7RWhGNG1ZTjtBQUNGO0FnRnp0WUE7RUFnSEk7SUFDRTtJQUNBO0VoRjRtWUo7RWdGem1ZSTtJQUNFO0VoRjJtWU47RWdGMW1ZTTtJQUNFO0lBQ0E7RWhGNG1ZUjtFZ0YzbVlRO0lBQ0E7SUFDQTtJQUNBO0VoRjZtWVI7RWdGMW1ZTTtJQUNFO0VoRjRtWVI7RWdGMW1ZTTtJQUNFO0VoRjRtWVI7QUFDRjtBZ0YzbVlRO0VBakJGO0lBa0JJO0VoRjhtWVI7QUFDRjtBZ0Y1bVlNO0VBMUJGO0lBMkJJO0lBQ0E7RWhGK21ZTjtBQUNGO0FnRjdtWU07RUEvQkY7SUFnQ0k7RWhGZ25ZTjtBQUNGO0FnRmp3WUE7RUFvSkk7SUFDRTtFaEZnbllKO0VnRjltWUk7SUFDRTtFaEZnbllOO0FBQ0Y7QWdGOW1ZTTtFQVBGO0lBUUk7RWhGaW5ZTjtFZ0YvbVlNO0lBQ0U7RWhGaW5ZUjtBQUNGO0FnRjltWU07RUFmRjtJQWdCSTtFaEZpbllOO0VnRmhuWU07SUFDRTtFaEZrbllSO0FBQ0Y7QWdGaG5ZTTtFQXJCRjtJQXNCSTtFaEZtbllOO0FBQ0Y7QWdGOXhZQTtFQThLSTtJQUNFO0lBQ0E7SUFDQTtJQUNBLDhCL0VuYkU7RURzaVpOO0VnRmhuWUk7SUFDRTtJQUNBO0VoRmtuWU47RWdGaG5ZSTtJQUNFO0lBQ0E7SUFDQSxxQy9FamJLO0krRWtiTDtJQUNBLGdCL0UvYVk7SStFZ2JaO0lBQ0E7RWhGa25ZTjtFZ0ZobllNO0lBQ0U7SUFDQSxvQy9FeGJLO0krRXliTDtJQUNBLGdCL0V2YlU7SStFd2JWLG1CL0V2Y0Y7RUR5alpOO0VnRmpuWVE7SUFDRSx1Qi9FNWNHO0VEK2paYjtBQUNGO0FnRjdtWUE7RUFDRTtJQUNFO0lBQ0E7RWhGK21ZRjtBQUNGO0FnRjNtWUE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoRjZtWUY7QWdGem1ZSTtFQUVFO0VBQ0EsYy9FL2RBO0UrRWdlQTtFQUNBO0FoRjBtWU47QWdGeG1ZSTtFQUNFLG9DL0U3ZFM7RStFOGRUO0VBQ0E7RUFDQSxnQi9FOWRZO0UyRXhCaEI7QTVFaW1aRjtBZ0ZqbVlJO0VBQ0UsZ0IvRXRlZTtFK0V1ZWYsYy9FcGZDO0FEdWxaUDtBZ0YvbFlFO0VBR007SUFDRTtJQUNBO0lBQ0E7SUFDQTtFaEYrbFlSO0FBQ0Y7O0FnRnhsWUE7QUFLRTtFQUNFO0FoRnVsWUo7QWdGcGxZTTtFQUVFO0VBQ0E7RUFDQTtBaEZxbFlSO0FnRmpsWVE7RUFDRSxjL0V4aEJKO0FEMm1aTjtBZ0ZobFlNO0VBQ0UsZ0IvRS9nQlM7QURpbVpqQjtBZ0ZobFlNO0VKN2lCSjtFSStpQk0sYy9FamlCRDtFK0VraUJDO0FoRmtsWVI7O0FnRjNrWUE7QUFDQTtFQUNFLHFDL0VwaUJXO0UrRXFpQlg7QWhGOGtZRjtBZ0Yxa1lJO0VBQ0UsYy9FampCQztFK0VrakJEO0VKaGtCSjtBNUU2b1pGO0FnRjFrWU07RUFDRSxjL0VyakJGO0FEaW9aTjs7QWdGdGtZQTtBQUNBO0VBQ0U7RUFDQTtBaEZ5a1lGO0FnRnZrWUU7RUFKRjtJQU1JO0VoRnlrWUY7QUFDRjtBZ0Z0a1lJO0VBQ0UsYy9FeGtCQztFK0V5a0JEO0VKdmxCSjtBNUVncVpGO0FnRnRrWU07RUFDRSxjL0U1a0JGO0FEb3BaTjs7QWdGbGtZQTtBQUlFOztFQUNFO0VBQ0EseUIvRTlsQkk7RStFK2xCSjtFSnhtQkY7QTVFNHFaRjtBZ0Zqa1lJOzs7OztFQUlFLGMvRWhtQkE7QURvcVpOO0FnRmxrWUk7OztFQUNFO0FoRnNrWU47QWdGcGtZSTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCL0U5bEJlO0UrRStsQmY7RUoxbkJKO0E1RWtzWkY7QWdGbmtZTTs7RUFDRTtBaEZza1lSOztBZ0Y3allJO0VBQ0U7QWhGZ2tZTjtBZ0Y5allNO0VBSEY7SUFJSTtFaEZpa1lOO0FBQ0Y7O0FpRmh0WkE7RUFDRTtBakZtdFpGO0FpRmp0WkU7RUFDRTtBakZtdFpKO0FpRmp0Wkk7RUFDRTtFQUNBO0FqRm10Wk47QWlGaHRaRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpGa3RaSjtBaUZodFpFO0VBQ0U7RUFDQTtFQUNBO0FqRmt0Wko7QWlGaHRaSTtFQUNFO0VBQ0EseUJoRmZFO0FEaXVaUjtBaUZodFpNO0VBSkY7SUFLSTtFakZtdFpOO0FBQ0Y7QWlGanRaSTtFQWJGO0lBY0k7RWpGb3RaSjtBQUNGO0FpRm50Wkk7RUFoQkY7SUFpQkk7RWpGc3RaSjtBQUNGO0FpRnJ0Wkk7RUFDRTtBakZ1dFpOO0FpRm50WlE7RUFDRTtBakZxdFpWO0FpRm50WlU7RUFIRjtJQUlJO0VqRnN0WlY7QUFDRjtBaUZsdFpJO0VBQ0U7RUFDQTtFQUNBO0FqRm90Wk47QWlGbHRaTTtFQUxGO0lBTUk7RWpGcXRaTjtBQUNGO0FpRnB0Wk07RUFSRjtJQVNJO0VqRnV0Wk47QUFDRjtBaUZ0dFpNO0VBWEY7SUFZSTtFakZ5dFpOO0FBQ0Y7QWlGeHRaTTtFQWRGO0lBZUk7RWpGMnRaTjtBQUNGO0FpRjF0Wk07RUFqQkY7SUFrQkk7RWpGNnRaTjtBQUNGO0FpRnp0WkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakYydFpKOztBaUZydFpFO0VMbkZBO0E1RTR5WkY7QWlGbnRaSTtFQUNFO0VBQ0E7QWpGcXRaTjs7QWlGOXNaRTtFQUNFO0VMbkdGO0E1RXF6WkY7QWlGL3NaSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakZpdFpOO0FpRi9zWkk7RUFDRTtFQUNBO0FqRml0Wk47QWlGNXNaSTtFQUNFO0FqRjhzWk47O0FpRnZzWkU7RUFDRTtFQUEyQjtBakYyc1ovQjtBaUZ4c1pFO0VBQ0U7RUFDQTtBakYwc1pKOztBaUZsc1pJO0VBQ0U7QWpGcXNaTjtBaUZoc1pNO0VBQ0U7RUFDQTtFQUNBO0VMdkpOO0E1RTAxWkY7QWlGOXJaSTtFTDVKRjtBNUU2MVpGO0FpRjNyWk07RUFDRTtFQUNBO0FqRjZyWlI7QWlGeHJaUTtFQUNFO0VBQ0E7QWpGMHJaVjs7QWlGbnJaQTtFQUNFLDhCaEZ6S007QUQrMVpSO0FpRmxyWkk7RUFDRSx5QmhGL0tFO0VnRmdMRjtBakZvclpOO0FpRmxyWk07RUFKRjtJQUtJO0VqRnFyWk47QUFDRjtBaUZwclpNO0VBQ0U7RUwvTE47RUtpTU07QWpGc3JaUjtBaUZwclpRO0VBQ0U7QWpGc3JaVjtBaUZwclpRO0VBUkY7SUFTSTtFakZ1clpSO0FBQ0Y7QWlGdHJaUTtFQVhGO0lBWUk7RWpGeXJaUjtBQUNGO0FpRnhyWlE7RUFkRjtJQWVJO0VqRjJyWlI7RWlGenJaUTtJQUNFO0VqRjJyWlY7QUFDRjtBaUYxclpVO0VBcEJKO0lBcUJNO0VqRjZyWlY7QUFDRjtBaUYxclpNO0VBQ0U7RUFDQTtFQUNBO0VMMU5OO0E1RXU1WkY7QWlGMXJaTTtFQUNFO0VBQ0E7QWpGNHJaUjtBaUYxclpRO0VBSkY7SUFLSTtFakY2clpSO0FBQ0Y7QWlGenJaUTtFQUNFLHlCaEYvTkY7RWdGZ09FLGdDaEZoT0Y7QUQyNVpSO0FpRjFyWlU7RUFIRjtJQUlJO0VqRjZyWlY7QUFDRjtBaUZ6clpJO0VBQ0U7RUxqUEo7QTVFNjZaRjtBaUZ6clpNO0VBQ0U7QWpGMnJaUjtBaUZ6clpRO0VBQ0U7RUFDQTtFQUNBO0FqRjJyWlY7QWlGeHJaTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxsUU47QTVFNjdaRjtBaUZ4clpRO0VBUkY7SUFTSTtFakYyclpSO0FBQ0Y7QWlGMXJaUTtFQVhGO0lBWUk7RWpGNnJaUjtBQUNGO0FpRjVyWlE7RUFkRjtJQWVJO0VqRityWlI7QUFDRjtBaUY5clpVO0VBakJKO0lBa0JNO0VqRmlzWlY7QUFDRjtBaUZoc1pVO0VBcEJKO0lBcUJNO0VqRm1zWlY7QUFDRjtBaUZqc1pRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFTGhTUjtBNUVvK1pGO0FpRmpzWlE7RUFDRTtFTHBTUjtBNUV3K1pGO0FpRmpzWlU7RUx2U1I7QTVFMitaRjtBaUZqc1pVO0VMMVNSO0E1RTgrWkY7QWlGbHNaWTtFQUZGO0lBR0k7SUFDQTtFakZxc1paO0FBQ0Y7QWlGcHNaWTtFQUNFO0lBQ0U7RWpGc3NaZDtBQUNGO0FpRmxzWlk7RUFDRSxjaEYxU1A7RWdGMlNPLG9DaEZoVE47QURvL1pSO0FpRjdyWlE7RUFDRTtFQUNBO0VBQ0E7QWpGK3JaVjtBaUY5clpVO0VBSkY7SUFLSTtFakZpc1pWO0FBQ0Y7QWlGN3JaWTtFQUNFO0FqRityWmQ7QWlGOXJaYztFQUZGO0lBR0k7RWpGaXNaZDtBQUNGO0FpRi9yWlk7RUFDRTtBakZpc1pkO0FpRi9yWlk7RUFDRTtBakZpc1pkO0FpRi9yWlk7RUFDRTtFQUNBO0FqRmlzWmQ7QWlGaHNaYztFQUNFO0lBQ0U7RWpGa3NaaEI7QUFDRjtBaUZuclpRO0VBQ0U7QWpGcXJaVjtBaUZuclpRO0VBQ0U7QWpGcXJaVjs7QWlGOXFaQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmhGblhNO0VnRm9YTjtFQUNBO0VBQ0E7RUwvWEE7QTVFaWphRjtBaUYvcVpFO0VBQ0U7QWpGaXJaSjs7QWtGcmphQTtBQUdFO0VBQ0U7QWxGc2phSjtBa0ZwamFFO0VBQ0U7QWxGc2phSjs7QWtGbmphQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCakZZa0I7RWlGWGxCO0VBQ0EseUJqRk5NO0VpRk9OO0VBQ0E7QWxGc2phRjs7QWtGbmphQTtBQUNBOztFQUVFO0VBQ0EsZ0JqRkNrQjtFaUZBbEIscUNqRkpXO0VpRktYO0FsRnNqYUY7QWtGcGphRTs7RUFDRSxnQmpGSmdCO0VpRktoQixjakZmRTtBRHNrYU47QWtGcGphRTtFQUNFOztJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWxGdWphSjtBQUNGOztBa0ZsamFBO0VBQ0U7QWxGcWphRjtBa0ZqamFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGbWphTjtBa0ZqamFNO0VBVEY7SUFVSTtFbEZvamFOO0FBQ0Y7QWtGamphRTtFQW5CRjtJQW9CSTtFbEZvamFGO0FBQ0Y7QWtGbmphRTtFQXRCRjtJQXVCSTtFbEZzamFGO0FBQ0Y7QWtGcmphRTtFQXpCRjtJQTBCSTtFbEZ3amFGO0FBQ0Y7QWtGdmphRTtFQTVCRjtJQTZCSTtFbEYwamFGO0FBQ0Y7QWtGemphRTtFQS9CRjtJQWdDSTtFbEY0amFGO0FBQ0Y7O0FrRjFqYUE7RUFDRTtBbEY2amFGO0FrRjNqYUU7RUFIRjtJQUlJO0VsRjhqYUY7QUFDRjtBa0Y3amFFO0VBTkY7SUFPSTtFbEZna2FGO0FBQ0Y7QWtGL2phRTtFQVRGO0lBVUk7RWxGa2thRjtBQUNGOztBa0Zoa2FBO0VBQ0U7RUFDQTtBbEZta2FGO0FrRmprYUU7RUFKRjtJQUtJO0VsRm9rYUY7QUFDRjtBa0Zua2FFO0VBUEY7SUFRSTtFbEZza2FGO0FBQ0Y7QWtGcmthRTtFQVZGO0lBV0k7RWxGd2thRjtBQUNGOztBa0Z0a2FBO0VBQ0U7QWxGeWthRjtBa0Z2a2FFO0VBSEY7SUFJSTtFbEYwa2FGO0FBQ0Y7QWtGemthRTtFQU5GO0lBT0k7RWxGNGthRjtBQUNGO0FrRjNrYUU7RUFURjtJQVVJO0VsRjhrYUY7QUFDRjtBa0Y3a2FFO0VBWkY7SUFhSTtFbEZnbGFGO0FBQ0Y7QWtGL2thRTtFQUNFO0VBQ0E7QWxGaWxhSjs7QWtGOWthQTtFQUNFO0FsRmlsYUY7QWtGL2thRTtFQUhGO0lBSUk7RWxGa2xhRjtBQUNGO0FrRmpsYUU7RUFORjtJQU9JO0VsRm9sYUY7QUFDRjs7QWtGbGxhQTtFQUNFO0VBQ0E7QWxGcWxhRjtBa0ZubGFFO0VBSkY7SUFLSTtFbEZzbGFGO0FBQ0Y7QWtGcmxhRTtFQVBGO0lBUUk7RWxGd2xhRjtBQUNGO0FrRnZsYUU7RUFWRjtJQVdJO0VsRjBsYUY7QUFDRjtBa0Z6bGFFO0VBYkY7SUFjSTtFbEY0bGFGO0FBQ0Y7QWtGM2xhRTtFQWhCRjtJQWlCSTtFbEY4bGFGO0FBQ0Y7QWtGN2xhRTtFQW5CRjtJQW9CSTtJQUNBO0VsRmdtYUY7QUFDRjs7QWtGOWxhQTtFQUNFLGdCakZ2SW1CO0FEd3VhckI7O0FrRjlsYUE7QUFNRTtFQUNFLHVCakZyS1c7RWlGc0tYO0FsRjRsYUo7QWtGMWxhSTtFQUNFO0FsRjRsYU47QWtGemxhRTtFQUNFO0VBQ0E7QWxGMmxhSjtBa0Z6bGFJO0VBQ0U7RUFDQTtBbEYybGFOO0FrRnpsYU07RUFFRTtFQUNBLGNqRi9LRjtFaUZnTEU7RUFDQTtFQUNBO0FsRjBsYVI7QWtGdmxhSTtFQUNFO0VBQ0E7QWxGeWxhTjtBa0Z2bGFNO0VBQ0U7RUFDQTtBbEZ5bGFSO0FrRnBsYU07RUFDRTtBbEZzbGFSO0FrRmpsYUU7RUFDRTtBbEZtbGFKO0FrRmpsYUk7RUFDRTtBbEZtbGFOO0FrRmpsYUk7RUFORjtJQU9JO0VsRm9sYUo7QUFDRjtBa0ZsbGFFO0VBQ0UscUNqRjNNUztFaUY0TVQ7RUFDQSxnQmpGek1nQjtFaUYwTWhCO0VBQ0E7QWxGb2xhSjtBa0ZsbGFJO0VBUEY7SUFRSTtFbEZxbGFKO0FBQ0Y7QWtGcGxhSTtFQVZGO0lBV0k7RWxGdWxhSjtBQUNGO0FrRnRsYUk7RUFiRjtJQWNJO0VsRnlsYUo7QUFDRjtBa0Z4bGFJO0VBaEJGO0lBaUJJO0VsRjJsYUo7QUFDRjtBa0YxbGFJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjJsYU47QWtGemxhTTtFQVRGO0lBVUk7RWxGNGxhTjtBQUNGO0FrRjFsYUk7RUFDRTtBbEY0bGFOO0FrRjFsYUk7RUFDRSxnQmpGMU9jO0VpRjJPZCxjakZyUEE7QURpMWFOO0FrRjFsYUk7RUFDRTtFQUNBO0VOeFFKO0E1RXEyYUY7QWtGMWxhTTtFQUNFLGNqRjdQRjtBRHkxYU47O0FrRnRsYUE7RUFDRTtBbEZ5bGFGO0FrRnZsYUU7RUFDRTtFQUNBO0FsRnlsYUo7QWtGdGxhRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJqRnRSSTtFaUZ1Uko7RUFDQTtFQUNBO0VObFNGO0E1RTIzYUY7QWtGcGxhSTtFQUNFO0FsRnNsYU47O0FrRmpsYUE7RUFDRTtFQUNBO0FsRm9sYUY7QWtGbGxhRTtFQUNFO0VBQ0E7RUFDQTtBbEZvbGFKO0FrRmhsYUk7RUFDRTtFQUNBO0FsRmtsYU47O0FrRjdrYUE7RUFDRTtBbEZnbGFGO0FrRjlrYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHdCakZoVUk7RWlGaVVKO0VBQ0E7RUFDQTtFTjdVRjtBNUU4NWFGO0FrRjlrYUU7RUFDRTtBbEZnbGFKO0FrRjVrYUk7RUFDRTtBbEY4a2FOOztBa0Z6a2FBO0FBR0U7RUFDRTtFQUNBO0FsRjBrYUo7QWtGeGthSTtFQUpGO0lBS0k7RWxGMmthSjtBQUNGO0FrRjFrYUk7RUFQRjtJQVFJO0VsRjZrYUo7QUFDRjtBa0Y1a2FJO0VBVkY7SUFXSTtFbEYra2FKO0FBQ0Y7QWtGOWthSTtFQWJGO0lBY0k7RWxGaWxhSjtBQUNGOztBa0Y3a2FBO0FBSUU7RUFDRTs7SUFDRTtFbEY4a2FKO0FBQ0Y7O0FrRjFrYUE7QUFHRTtFQUNFO0FsRjJrYUo7QWtGMWthSTtFQUZGO0lBR0k7RWxGNmthSjtBQUNGO0FrRjVrYUk7RUFMRjtJQU1JO0VsRitrYUo7QUFDRjtBa0Y3a2FFO0VBQ0U7RUFDQTtBbEYra2FKO0FrRjdrYUk7RUFDRTtBbEYra2FOOztBa0Yxa2FBO0FBR0U7RUFDRTtBbEYya2FKO0FrRnprYUk7RUFIRjtJQUlJO0VsRjRrYUo7QUFDRjtBa0Z0a2FNO0VBQ0U7QWxGd2thUjtBa0Zya2FJO0VBQ0U7RUFDQTtFQUNBO0FsRnVrYU47QWtGbmthUTtFQUZGO0lBR0k7RWxGc2thUjtBQUNGO0FrRnBrYU07RUFDRTtBbEZza2FSOztBa0Zoa2FBO0FBR0U7RUFDRTtBbEZpa2FKO0FrRjlqYUU7RUFDRTtFQUNBO0VBQ0EsNkJqRnhiYTtBRHcvYWpCO0FrRjdqYUk7RUFDRTtBbEYramFOOztBa0YxamFBO0FBSUU7O0VBQ0U7RUFDQTtBbEYyamFKO0FrRnpqYUk7O0VBQ0U7RUFDQTtFQUNBO0FsRjRqYU47QWtGMWphSTtFQUNFOztJQUNFO0VsRjZqYU47QUFDRjtBa0YzamFJOztFQUNFO0VBQ0E7RUFDQSxnQmpGbmNlO0VpRm9jZjtFQUNBO0FsRjhqYU47QWtGNWphTTtFQVBGOztJQVFJO0lBQ0E7RWxGZ2thTjtBQUNGO0FrRi9qYU07RUFYRjs7SUFZSTtJQUNBO0VsRm1rYU47QUFDRjtBa0Zsa2FNOztFQUNFLGNqRjVkRjtFaUY4ZEU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZva2FSO0FrRmxrYVE7RUFURjs7SUFVSTtFbEZza2FSO0FBQ0Y7QWtGcmthUTtFQVpGOztJQWFJO0VsRnlrYVI7QUFDRjtBa0Z2a2FNOztFQUNFLGNqRjdlRDtFaUY4ZUM7RUFDQTtBbEYwa2FSO0FrRnZrYUk7O0VBQ0U7QWxGMGthTjtBa0Z4a2FNO0VBSEY7O0lBSUk7RWxGNGthTjtBQUNGO0FrRjFrYUk7Ozs7RUFDRSxnQmpGaGZZO0FEK2pibEI7QWtGN2thTTs7O0VBQ0U7RUFDQTtBbEZpbGFSOztBa0Yxa2FFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JqRjVmaUI7QUR5a2JyQjtBa0Yza2FJO0VBQ0U7QWxGNmthTjtBa0Yza2FJO0VBVEY7SUFVSTtJQUNBO0VsRjhrYUo7QUFDRjtBa0Y3a2FJO0VBYkY7SUFjSTtJQUNBO0VsRmdsYUo7QUFDRjtBa0Yva2FJO0VBQ0UsZ0JqRjdnQlk7QUQ4bGJsQjtBa0Yva2FNO0VBQ0U7RUFDQTtBbEZpbGFSOztBa0Yza2FBO0FBUUE7QUFHRTtFQUNFO0FsRnFrYUo7QWtGbmthSTtFQUNFLGtDakZ2akJTO0VpRndqQlQseUJqRnRqQkU7RWlGdWpCRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnFrYU47O0FrRmhrYUE7QUFLSTtFQUNFO0FsRitqYU47QWtGN2phTTtFQUhGO0lBSUk7RWxGZ2thTjtBQUNGO0FrRi9qYU07RUFORjtJQU9JO0VsRmtrYU47QUFDRjtBa0Zoa2FJO0VBWkY7SUFhSTtFbEZta2FKO0FBQ0Y7QWtGbGthSTtFQWZGO0lBZ0JJO0VsRnFrYUo7QUFDRjtBa0Zoa2FRO0VBQ0U7RUFDQTtFQUNBO0FsRmtrYVY7QWtGaGthVTtFQUNFO0FsRmtrYVo7QWtGaGthWTtFQUhGO0lBSUk7RWxGbWthWjtBQUNGO0FrRmxrYVk7RUFORjtJQU9JO0VsRnFrYVo7QUFDRjtBa0Zwa2FZO0VBVEY7SUFVSTtFbEZ1a2FaO0FBQ0Y7QWtGdGthWTtFQVpGO0lBYUk7RWxGeWthWjtBQUNGO0FrRnZrYVU7RUFDRTtBbEZ5a2FaO0FrRnZrYVk7RUFIRjtJQUlJO0VsRjBrYVo7QUFDRjs7QWtGL2phRTtFQUNFOztJQUNFO0lBQ0E7SUFDQTtJQUNBO0VsRm1rYUo7QUFDRjs7QWtGL2phQTtBQUNBO0VBQ0U7QWxGa2thRjtBa0Zoa2FFO0VBSEY7SUFJSTtFbEZta2FGO0FBQ0Y7QWtGbGthRTtFQUNFO0lBQ0U7SUFDQTtFbEZva2FKO0VrRmxrYUk7SUFDRTtJQUNBO0VsRm9rYU47QUFDRjtBa0Zqa2FFO0VBQ0U7RUFDQTtFQUNBO0FsRm1rYUo7QWtGamthSTtFQUxGO0lBTUk7RWxGb2thSjtBQUNGO0FrRm5rYUk7RUFDRSx5QmpGN3BCQTtFaUY4cEJBLHlCakZwcUJFO0VpRnFxQkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZxa2FOO0FrRm5rYU07RUFURjtJQVVJO0VsRnNrYU47QUFDRjtBa0Zwa2FJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG9DakZyckJFO0FEMnZiUjtBa0Zua2FFO0VBR0k7SUFDRTtFbEZta2FOO0VrRmprYUk7SUFDRTtJQUNBO0lBQ0E7RWxGbWthTjtFa0Zqa2FNO0lBQ0U7SUFDQTtFbEZta2FSO0VrRmprYVE7O0lBRUU7RWxGbWthVjtFa0Zoa2FNO0lBQ0U7SUFDQTtFbEZra2FSO0VrRmhrYVE7O0lBRUU7RWxGa2thVjtBQUNGOztBa0YzamFBO0FBQ0E7QUFNSTs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxGMmphTjtBa0Z6amFJOztFQUNFO0FsRjRqYU47QWtGMWphSTs7RUFDRTtFQUNBO0FsRjZqYU47QWtGM2phTTtFQUpGOztJQUtJO0VsRitqYU47QUFDRjtBa0Y5amFNO0VBUEY7O0lBUUk7RWxGa2thTjtBQUNGO0FrRmprYU07RUFWRjs7SUFXSTtFbEZxa2FOO0FBQ0Y7QWtGamthTTs7RUFDRTtFQUNBO0FsRm9rYVI7QWtGbGthUTtFQUpGOztJQUtJO0VsRnNrYVI7QUFDRjtBa0Zua2FJOztFQUNFO0FsRnNrYU47QWtGcGthTTtFQUhGOztJQUlJO0VsRndrYU47QUFDRjtBa0Zwa2FNOztFQUNFO0VBQ0E7QWxGdWthUjtBa0Zsa2FNOztFQUNFO0VBQ0E7QWxGcWthUjs7QWtGMWphTTtFQUZGO0lBR0k7RWxGOGphTjtFa0Y1amFNO0lBQ0U7SUFDQTtFbEY4amFSO0FBQ0Y7QWtGM2phSTtFQUNFLG9DakYxeUJFO0VpRjJ5QkY7RUFDQTtBbEY2amFOO0FrRjNqYU07RUFMRjtJQU1JO0VsRjhqYU47QUFDRjtBa0Y3amFNO0VBUkY7SUFTSTtFbEZna2FOO0FBQ0Y7QWtGL2phTTtFQVhGO0lBWUk7RWxGa2thTjtBQUNGO0FrRjdqYUk7RUFDRTtBbEYramFOO0FrRjdqYUk7RUFFRTtJQUNFO0VsRjhqYU47RWtGNWphSTtJQUNFO0VsRjhqYU47QUFDRjtBa0Y1amFJO0VBRUU7SUFDRTtFbEY2amFOO0FBQ0Y7QWtGM2phSTtFQUVFO0lBQ0U7RWxGNGphTjtBQUNGOztBa0ZuamFJOztFQUNFLHlCakYzMUJFO0VpRjQxQkYsZ0JqRjUwQmM7QURtNGJwQjtBa0ZyamFNOztFQUNFO0FsRndqYVI7QWtGdGphUTtFQUhGOztJQUlJO0VsRjBqYVI7QUFDRjtBa0Z6amFRO0VBTkY7O0lBT0k7RWxGNmphUjtBQUNGO0FrRjVqYVE7RUFURjs7SUFVSTtFbEZna2FSO0FBQ0Y7QWtGL2phUTtFQVpGOztJQWFJO0VsRm1rYVI7QUFDRjtBa0Zqa2FNOztFQUNFO0VBQ0EsZ0NqRmgzQkE7QURvN2JSO0FrRmxrYVE7O0VBQ0Usb0NqRm4zQkY7RWlGbzNCRTtFQUNBLGNqRi8yQko7QURvN2JOO0FrRi9qYU07O0VBQ0UsY2pGdjNCRDtBRHk3YlA7QWtGaGthUTs7RUFDRSxxQmpGMTNCSDtBRDY3YlA7O0FrRjFqYUE7QUFLQTtBQUdFO0VBQ0U7RUFDQTtFQUNBO0FsRnVqYUo7QWtGcmphSTtFQUxGO0lBTUk7RWxGd2phSjtBQUNGO0FrRnZqYUk7RUFSRjtJQVNJO0VsRjBqYUo7QUFDRjtBa0Z6amFJO0VBWEY7SUFZSTtFbEY0amFKO0FBQ0Y7QWtGM2phSTtFQUNFO0FsRjZqYU47QWtGM2phTTtFQUhGO0lBSUk7SUFDQTtFbEY4amFOO0FBQ0Y7QWtGemphSTtFQUNFO0VBQ0E7QWxGMmphTjtBa0Z6amFNO0VBSkY7SUFLSTtFbEY0amFOO0FBQ0Y7QWtGMWphSTtFQUNFLHlCakZsN0JFO0VpRm03QkY7RUFDQTtFQUNBO0FsRjRqYU47QWtGMWphTTtFQU5GO0lBT0k7SUFDQTtJQUNBO0VsRjZqYU47QUFDRjtBa0Y1amFNO0VBWEY7SUFZSTtFbEYramFOO0FBQ0Y7QWtGNWphRTtFQUNFO0FsRjhqYUo7QWtGNWphSTtFQUhGO0lBSUk7SUFDQTtFbEYramFKO0FBQ0Y7QWtGNWphTTtFQUNFO0VBQ0E7QWxGOGphUjtBa0Y1amFRO0VBSkY7SUFLSTtJQUNBO0VsRitqYVI7QUFDRjtBa0Y5amFRO0VBUkY7SUFTSTtJQUNBO0lBQ0E7RWxGaWthUjtBQUNGOztBa0YzamFBO0FBR0U7RUFDRTtBbEY0amFKO0FrRjFqYUk7RUFIRjtJQUlJO0VsRjZqYUo7QUFDRjtBa0Y1amFJO0VBTkY7SUFPSTtFbEYramFKO0FBQ0Y7QWtGOWphSTtFQUNFO0VBQ0E7RUFDQTtBbEZna2FOO0FrRjdqYUU7RUFDRTtFQUNBO0VBQ0E7QWxGK2phSjtBa0Y3amFJO0VBTEY7SUFNSTtFbEZna2FKO0FBQ0Y7QWtGL2phSTtFQVJGO0lBU0k7RWxGa2thSjtBQUNGO0FrRmprYUk7RUFDRTtBbEZta2FOO0FrRmxrYU07RUFGRjtJQUdJO0VsRnFrYU47QUFDRjtBa0Zwa2FNO0VBTEY7SUFNSTtFbEZ1a2FOO0FBQ0Y7QWtGcGthRTtFQUNFO0VBQ0E7QWxGc2thSjtBa0Zwa2FJO0VBQ0U7RUFDQTtBbEZza2FOO0FrRnBrYU07RUFKRjtJQUtJO0VsRnVrYU47QUFDRjtBa0Zwa2FFO0VBQ0U7QWxGc2thSjtBa0Zsa2FNO0VBQ0UsY2pGbGhDSTtFMkViVjtFTWlpQ007QWxGb2thUjtBa0Zsa2FRO0VBQ0UsY2pGdGhDSDtBRDBsY1A7QWtGL2phRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRmlrYUo7QWtGL2phSTtFQU5GO0lBT0k7RWxGa2thSjtBQUNGO0FrRmhrYUk7RUFWRjtJQVlJO0VsRmtrYUo7QUFDRjtBa0Zoa2FJO0VBZkY7SUFnQkk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFbEZta2FKO0FBQ0Y7QWtGM2phSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGNmphTjtBa0YzamFNO0VBVkY7SUFXSTtFbEY4amFOO0FBQ0Y7QWtGN2phTTtFQWJGO0lBY0k7RWxGZ2thTjtBQUNGO0FrRi9qYU07RUFoQkY7SUFpQkk7SUFDQTtFbEZra2FOO0FBQ0Y7QWtGaGthTTtFQXJCRjtJQXNCSTtFbEZta2FOO0FBQ0Y7QWtGamthTTtFQXpCRjtJQTBCSTtFbEZva2FOO0FBQ0Y7QWtGbmthTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUJqRjNsQ1k7RWlGNGxDWixjakYzbENJO0VpRjRsQ0o7RUFDQTtBbEZxa2FSO0FrRm5rYVE7RUFDRTtFQUNBO0VBQ0E7QWxGcWthVjtBa0Zua2FRO0VBQ0U7QWxGcWthVjtBa0Zua2FRO0VBbEJGO0lBbUJJO0lBQ0E7RWxGc2thUjtFa0Zwa2FRO0lBQ0U7SUFDQTtFbEZza2FWO0VrRnBrYVE7SUFDRTtFbEZza2FWO0FBQ0Y7QWtGcGthUTtFQTlCRjtJQStCSTtJQUNBO0VsRnVrYVI7RWtGcmthUTtJQUNFO0lBQ0E7RWxGdWthVjtBQUNGO0FrRnBrYU07RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QmpGbG9DWTtFaUZtb0NaO0VBQ0E7RUFDQTtBbEZza2FSO0FrRnBrYVE7RUFURjtJQVVJO0VsRnVrYVI7QUFDRjtBa0Z0a2FRO0VBWkY7SUFhSTtFbEZ5a2FSO0FBQ0Y7QWtGeGthUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmpGbnBDSjtFMkVmSjtBNUU2dWNGOztBa0Zua2FBO0FBR0U7RUFDRTtBbEZva2FKO0FrRmxrYUk7RUFIRjtJQUlJO0VsRnFrYUo7QUFDRjtBa0Zua2FFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZxa2FKO0FrRm5rYUk7RUFQRjtJQVFJO0VsRnNrYUo7QUFDRjtBa0Zya2FJO0VBVkY7SUFXSTtFbEZ3a2FKO0FBQ0Y7QWtGdmthSTtFQWJGO0lBY0k7SUFDQTtJQUNBO0lBQ0E7RWxGMGthSjtFa0Z4a2FJO0lBQ0U7RWxGMGthTjtBQUNGO0FrRnhrYUk7RUF2QkY7SUF3Qkk7RWxGMmthSjtBQUNGO0FrRjFrYUk7RUExQkY7SUEyQkk7RWxGNmthSjtBQUNGO0FrRjNrYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFTnR0Q0Y7QTVFb3ljRjtBa0Yza2FJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGNmthTjtBa0Yza2FJO0VBQ0U7QWxGNmthTjtBa0Yza2FJO0VBQ0U7RUFDQTtBbEY2a2FOO0FrRjFrYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjRrYUo7QWtGMWthSTtFQVBGO0lBUUk7RWxGNmthSjtBQUNGO0FrRjVrYUk7RUFWRjtJQVdJO0lBQ0E7SUFDQTtJQUNBO0VsRitrYUo7QUFDRjtBa0Y5a2FJO0VBaEJGO0lBaUJJO0VsRmlsYUo7QUFDRjtBa0ZobGFJO0VBbkJGO0lBb0JJO0VsRm1sYUo7QUFDRjtBa0ZqbGFFO0VBQ0UseUJqRjV2Q0k7QUQrMGNSO0FrRmpsYUk7RUFDRSw4QmpGOXZDRTtFaUYrdkNGO0VBQ0E7QWxGbWxhTjtBa0ZqbGFNO0VBQ0U7QWxGbWxhUjtBa0ZobGFJO0VBQ0U7RUFDQTtFQUNBO0FsRmtsYU47QWtGaGxhTTtFQUNFO0VBQ0E7QWxGa2xhUjtBa0ZobGFNO0VBQ0U7RUFDQSxnQmpGbHdDWTtFaUZtd0NaO0FsRmtsYVI7QWtGaGxhUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb0NqRjF4Q0Y7RWlGMnhDRTtBbEZrbGFWO0FrRjlrYUk7RUFDRTtBbEZnbGFOO0FrRjdrYUU7RUFDRTtBbEYra2FKO0FrRjdrYUk7RUFIRjtJQUlJO0VsRmdsYUo7QUFDRjtBa0Yva2FJO0VBTkY7SUFPSTtFbEZrbGFKO0FBQ0Y7QWtGamxhSTtFQVRGO0lBVUk7RWxGb2xhSjtBQUNGO0FrRm5sYUk7RUFDRSx5QmpGMXlDQTtFaUYyeUNBO0VBQ0E7RUFDQTtBbEZxbGFOO0FrRmxsYUU7RUFDRTtBbEZvbGFKO0FrRmxsYUk7RUFIRjtJQUlJO0VsRnFsYUo7QUFDRjtBa0ZwbGFJO0VBTkY7SUFPSTtFbEZ1bGFKO0FBQ0Y7QWtGdGxhSTtFQUNFO0VOejBDSjtBNUVrNmNGO0FrRnRsYUk7O0VBRUU7QWxGd2xhTjtBa0Z0bGFJO0VBQ0U7QWxGd2xhTjtBa0Z0bGFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZ3bGFOO0FrRnRsYU07RUFWRjtJQVdJO0VsRnlsYU47QUFDRjtBa0Z4bGFNO0VBYkY7SUFjSTtFbEYybGFOO0FBQ0Y7QWtGMWxhTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0NqRi8xQ0E7RWlGZzJDQSx5QmpGaDJDQTtFaUZpMkNBO0VBQ0E7QWxGNGxhUjtBa0YxbGFRO0VBQ0U7RUFDQTtFQUNBO0FsRjRsYVY7QWtGMWxhUTtFQUNFO0FsRjRsYVY7QWtGMWxhUTtFQWxCRjtJQW1CSTtJQUNBO0VsRjZsYVI7RWtGM2xhUTtJQUNFO0lBQ0E7RWxGNmxhVjtFa0YzbGFRO0lBQ0U7RWxGNmxhVjtBQUNGO0FrRjFsYU07RUFDRTtFQUNBO0VBQ0E7RUFDQSxvQ2pGNzNDQTtFaUY4M0NBO0VBQ0E7RUFDQTtBbEY0bGFSO0FrRjFsYVE7RUFURjtJQVVJO0lBQ0E7RWxGNmxhUjtBQUNGO0FrRjVsYVE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJqRno0Q0o7RTJFZko7QTVFdS9jRjtBa0YzbGFNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmpGeDVDQTtFaUZ5NUNBLHFDakY3NENLO0VpRjg0Q0w7QWxGNmxhUjtBa0YzbGFRO0VBVEY7SUFVSTtJQUNBO0VsRjhsYVI7QUFDRjs7QWtGeGxhQTtBQUdFO0VBQ0U7QWxGeWxhSjtBa0Z2bGFFO0VBQ0Usa0NqRjk2Q1c7QUR1Z2RmO0FrRnZsYUU7RUFDRTtBbEZ5bGFKO0FrRnZsYUk7RUFDRTtFQUNBO0VBQ0E7QWxGeWxhTjs7QWtGcGxhQTtBQUtJO0VBQ0U7QWxGbWxhTjtBa0ZqbGFNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2pGaDhDRDtFMkVkTDtBNUVraWRGO0FrRjlrYU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQmpGbDhDWTtBRGtoZHBCO0FrRjlrYU07RUFDRSxrQ2pGdjlDTztFaUZ3OUNQO0VBQ0EscUJqRmo5Q0Y7QURpaWROO0FrRjFrYVU7RUFDRTtFQUNBO0FsRjRrYVo7QWtGMWthVTtFQUNFLGdCakYvOENLO0FEMmhkakI7QWtGdGthYztFQUNFO0VBQ0E7QWxGd2thaEI7QWtGdGthYztFQUNFLGdCakYxOUNDO0FEa2lkakI7O0FrRjlqYUE7QUFHRTtFQUNFO0FsRitqYUo7QWtGM2phSTtFQUNFO0VBQ0E7RUFDQTtBbEY2amFOO0FrRjNqYU07RUFDRTtBbEY2amFSOztBa0Z2amFBO0FBR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCakZuaERJO0FEMmtkUjtBa0Z0amFJO0VBUEY7SUFRSTtJQUNBO0VsRnlqYUo7QUFDRjtBa0Z4amFJO0VBQ0U7QWxGMGphTjtBa0ZyamFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnVqYU47QWtGcmphTTtFQVJGO0lBU0k7RWxGd2phTjtBQUNGO0FrRnRqYUk7RUFDRSxtQ2pGN2lEVztFaUY4aURYO0FsRndqYU47QWtGcmphRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZ1amFKO0FrRnJqYUk7RUFSRjtJQVNJO0VsRndqYUo7QUFDRjtBa0Z2amFJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1DakZya0RXO0FEOG5kakI7QWtGdmphSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnlqYU47O0FrRnBqYUE7QUFDQTtFQUNFO0FsRnVqYUY7O0FrRnBqYUE7RUFDRTtFQUNBO0VBQ0E7QWxGdWphRjtBa0ZyamFFO0VBTEY7SUFNSTtFbEZ3amFGO0FBQ0Y7QWtGdGphRTtFQUNFO0VBQ0E7QWxGd2phSjs7QWtGcGphQTtFQUNFO0VBQ0EseUJqRnhtRE07RWlGeW1ETjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnVqYUY7O0FrRnBqYUE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFbEZ1amFGO0FBQ0Y7QWtGcGphQTtBQUdFO0VBQ0U7RUFDQTtBbEZvamFKO0FrRjlpYU07RUFGRjtJQUdJO0VsRmlqYU47QUFDRjtBa0ZoamFNO0VBTEY7SUFNSTtFbEZtamFOO0FBQ0Y7QWtGbGphTTtFQVJGO0lBU0k7RWxGcWphTjtBQUNGOztBa0ZoamFBO0FBQ0E7RUFDRTtBbEZtamFGOztBa0ZoamFBO0FBT007RUFDRTtJQUNFO0VsRjZpYVI7QUFDRjtBa0YzaWFNO0VBQ0U7SUFDRTtFbEY2aWFSO0FBQ0Y7QWtGM2lhTTtFQUNFO0lBQ0U7RWxGNmlhUjtBQUNGO0FrRjNpYU07RUFDRTtFQUNBLG1DakZqckRTO0FEOHRkakI7QWtGM2lhTTtFQUNFO0VBQ0E7QWxGNmlhUjtBa0YzaWFRO0VBQ0U7RUFDQTtBbEY2aWFWO0FrRjNpYVU7RUFDRTtBbEY2aWFaO0FrRnZpYWM7RUFDRSxnQ2pGbHNEUjtBRDJ1ZFI7QWtGcGlhUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsRnNpYVY7QWtGcGlhUTtFQUNFLGdCakYzckRPO0FEaXVkakI7QWtGbGlhVTtFQUNFO0FsRm9pYVo7QWtGbGlhWTtFQUNFO0VBQ0E7RUFDQTtBbEZvaWFkO0FrRjFoYVE7RUFDRTtBbEY0aGFWO0FrRjFoYVE7RUFDRTtBbEY0aGFWOztBbUY1d2RBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRit3ZEY7QW1GN3dkRTtFQUNFLDRCbEZNRztBRHl3ZFA7QW1GendkUTtFQUNFO0VBQ0E7RUFDQTtBbkYyd2RWO0FtRnJ3ZFU7RUFDRTtFQUNBO0FuRnV3ZFo7QW1GandkUTtFQUNFO0FuRm13ZFY7QW1GandkVTtFQUNFO0FuRm13ZFo7QW1GandkWTtFQUVFLGNsRnpCUDtBRDJ4ZFA7QW1GL3ZkWTtFQUVFO0VBQ0EsY2xGL0JQO0FEK3hkUDtBbUY3dmRZO0VBSUUsa0NsRjdDQztFa0Y4Q0QsOEJsRjlDQztBRDB5ZGY7O0FvRmh6ZEE7QUFHRTtFQUNFLHlCbkZTRztBRHd5ZFA7QW9GL3lkRTtFQUNFO0FwRml6ZEo7QW9GL3lkSTtFQUNFO0VBQ0E7RUFDQTtBcEZpemROO0FvRi95ZE07RUFMRjtJQU1JO0VwRmt6ZE47QUFDRjtBb0ZqemRNO0VBUkY7SUFTSTtFcEZvemROO0FBQ0Y7QW9GbnpkTTtFQVhGO0lBWUk7RXBGc3pkTjtBQUNGO0FvRnJ6ZE07RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb0NuRnpCQTtFbUYwQkEsY25GdEJJO0VtRnVCSjtBcEZzemRSO0FvRnB6ZFE7RUFkRjtJQWVJO0VwRnV6ZFI7QUFDRjtBb0ZyemRNO0VBQ0U7RUFDQTtFQUNBLGNuRmhDSTtFbUZpQ0osZ0JuRm5CYTtBRDAwZHJCO0FvRjl5ZE07RUFDRTtBcEZnemRSO0FvRjl5ZE07RUFDRTtBcEZnemRSO0FvRjl5ZE07RUFDRSxnQm5GbkNhO0VtRm9DYjtFQUNBO0FwRmd6ZFI7QW9GOXlkUTtFQUxGO0lBTUk7RXBGaXpkUjtBQUNGO0FvRmh6ZFE7RUFDRSxjbkZ2REo7QUR5MmROO0FvRi95ZE07RUFDRTtFQUNBO0FwRml6ZFI7QW9GOXlkSTtFQUNFO0VBQ0EsbUNuRnhFVztFbUZ5RVg7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRmd6ZE47QW9GN3lkRTtFQUNFO0VBQ0E7RVIzRkY7QTVFMjRkRjtBb0Y3eWRJO0VBQ0UsdUJuRnhGUztBRHU0ZGY7O0FxRjc0ZEE7QUFHRTtFQUNFLG9DcEZJSTtFb0ZISjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRjg0ZEo7QXFGNTRkSTtFQUNFLHFDcEZRTztFb0ZQUDtBckY4NGROO0FxRjU0ZEk7RUFaRjtJQWFJO0lBQ0E7RXJGKzRkSjtFcUY3NGRJO0lBQ0U7RXJGKzRkTjtBQUNGO0FxRnY0ZEk7RUFDRTtFQUNBO0FyRnk0ZE47QXFGdjRkTTtFQUNFO0FyRnk0ZFI7O0FxRm40ZEE7QUFHRTtFQUNFO0VBQ0E7RUFDQTtBckZvNGRKO0FxRmw0ZEU7RUFDRTtBckZvNGRKO0FxRmw0ZEU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QnBGL0NJO0VvRmdESixnQnBGOUJpQjtFb0YrQmpCO0FyRm80ZEo7QXFGbDRkSTtFQVJGO0lBU0k7RXJGcTRkSjtBQUNGO0FxRm40ZEU7RUFDRTtBckZxNGRKO0FxRm40ZEk7RUFIRjtJQUlJO0VyRnM0ZEo7QUFDRjtBcUZoNGRNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGazRkUjtBcUY1M2RJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJGODNkTjtBcUY1M2RNO0VBTkY7SUFPSTtJQUNBO0lBQ0E7SUFDQTtFckYrM2ROO0FBQ0Y7QXFGNzNkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG9DcEZuR0U7RW9Gb0dGLGNwRmhHTTtFb0ZpR047RUFDQTtFQUNBO0FyRiszZE47QXFGNzNkTTtFQVZGO0lBV0k7SUFDQTtJQUNBO0VyRmc0ZE47QUFDRjs7QXFGMTNkRTtFQUNFO0FyRjYzZEo7QXFGMzNkRTtFQUNFO0lBQ0U7SUFDQTtFckY2M2RKO0VxRjMzZEk7SUFDRTtJQUNBO0VyRjYzZE47QUFDRjtBcUZ6M2RJO0VBREY7SUFFSTtFckY0M2RKO0FBQ0Y7QXFGMzNkSTtFQUpGO0lBS0k7RXJGODNkSjtBQUNGO0FxRnQzZFE7RUFGRjtJQUdJO0lBQ0E7RXJGeTNkUjtFcUZ2M2RRO0lBQ0U7SUFDQTtFckZ5M2RWO0VxRnYzZFE7SUFDRTtFckZ5M2RWO0FBQ0Y7QXFGdjNkUTtFQUNFO0lBQ0U7SUFDQTtFckZ5M2RWO0VxRnYzZFE7SUFDRTtFckZ5M2RWO0FBQ0Y7O0FxRmgzZEU7Ozs7RUFFRTtBckZxM2RKO0FxRm4zZEk7RUFKRjs7OztJQUtJO0lBQ0E7RXJGeTNkSjtBQUNGO0FxRngzZEk7RUFSRjs7OztJQVNJO0lBQ0E7RXJGODNkSjtBQUNGO0FxRjUzZEU7OztFQUNFO0VBQ0E7QXJGZzRkSjtBcUY5M2RJO0VBSkY7OztJQUtJO0VyRm00ZEo7QUFDRjtBcUZsNGRJO0VBUEY7OztJQVFJO0VyRnU0ZEo7QUFDRjtBcUZ0NGRJO0VBVkY7OztJQVdJO0VyRjI0ZEo7QUFDRjtBcUYxNGRJO0VBYkY7OztJQWNJO0VyRis0ZEo7QUFDRjtBcUY5NGRJO0VBaEJGOzs7SUFpQkk7RXJGbTVkSjtBQUNGO0FxRmw1ZEk7RUFuQkY7OztJQW9CSTtFckZ1NWRKO0FBQ0Y7QXFGcjVkRTs7OztFQUVFO0VBQ0E7QXJGeTVkSjtBcUZ2NWRJO0VBTEY7Ozs7SUFNSTtFckY2NWRKO0FBQ0Y7QXFGNTVkSTtFQVJGOzs7O0lBU0k7RXJGazZkSjtBQUNGO0FxRmo2ZEk7RUFYRjs7OztJQVlJO0VyRnU2ZEo7QUFDRjtBcUZ0NmRJO0VBZEY7Ozs7SUFlSTtFckY0NmRKO0FBQ0Y7QXFGMTZkRTs7RUFDRTtFQUNBO0VBQ0EsZ0JwRmxOaUI7QUQrbmVyQjtBcUZ6NmRNOztFQUNFO0VBQ0EsY3BGcE9GO0FEZ3BlTjtBcUZwNmRNOztFQUNFLGdCcEZqT2E7RW9Ga09iO0FyRnU2ZFI7QXFGcjZkUTs7RUFFRTtFQUNBLGNwRm5QSjtFb0ZvUEk7RUFDQTtBckZ1NmRWO0FxRmg2ZEk7O0VBQ0U7RUFDQTtFQUNBO0FyRm02ZE47QXFGLzVkTTs7RUFDRTtBckZrNmRSO0FxRjU1ZEk7OztFQUNFO0FyRmc2ZE47QXFGMTVkUTs7RUFDRTtFQUNBO0FyRjY1ZFY7QXFGejVkSTs7RUFDRTtBckY0NWROOztBcUZqNWRNOztFQUNFO0VBQ0E7RUFDQSx5QnBGNVNBO0VvRjZTQSxnQ3BGN1NBO0FEa3NlUjtBcUZuNWRROztFQUNFO0VBQ0E7QXJGczVkVjtBcUZwNWRVOztFQUNFO0FyRnU1ZFo7QXFGcDVkUTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckZ1NWRWO0FxRnI1ZFU7O0VBQ0U7QXJGdzVkWjs7QXFGLzRkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRms1ZEo7QXFGaDVkSTtFQUNFLGNwRjFVTTtBRDR0ZVo7QXFGaDVkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLG9DcEZwVkU7QURzdWVSOztBcUY5NGRBO0VBQ0U7RUFDQTtBckZpNWRGO0FxRi80ZEU7RUFKRjtJQUtJO0lBQ0E7RXJGazVkRjtBQUNGO0FxRmo1ZEU7RUFSRjtJQVNJO0lBQ0E7RXJGbzVkRjtBQUNGOztBcUZqNWRBO0FBR0U7RUFDRTtFQUNBO0FyRms1ZEo7QXFGaDVkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRms1ZEo7QXFGaDVkSTtFQUNFO0FyRms1ZE47QXFGaDVkTTtFQUhGO0lBSUk7RXJGbTVkTjtBQUNGO0FxRmw1ZE07RUFORjtJQU9JO0VyRnE1ZE47QUFDRjs7QXFGajVkQTs7RUFFRSxnQnBGL1dtQjtFb0ZnWG5CLGNwRjlYVTtFb0YrWFY7QXJGbzVkRjs7QXFGaDVkRTtFQUNFO0VBQ0E7RUFDQTtBckZtNWRKOztBcUYzNGRJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGKzRkTjtBcUY3NGRNOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0NwRmphQTtFb0ZrYUEseUJwRmxhQTtFb0ZtYUE7RUFDQTtBckZnNWRSO0FxRjk0ZFE7O0VBQ0U7RUFDQTtFQUNBO0FyRmk1ZFY7QXFGOTRkTTs7RUFDRTtFQUNBO0VBQ0E7RUFDQSxvQ3BGaGJBO0VvRmliQTtFQUNBO0VBQ0E7QXJGaTVkUjtBcUYvNGRROztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVR0Y1I7QTVFeTFlRjtBcUYvNGRNO0VBL0NGOztJQWdESTtJQUNBO0lBQ0E7RXJGbTVkTjtFcUZqNWRNOztJQUNFO0lBQ0E7RXJGbzVkUjtFcUZsNWRROztJQUNFO0lBQ0E7RXJGcTVkVjtFcUZsNWRNOztJQUNFO0lBQ0E7RXJGcTVkUjtBQUNGOztBcUYvNGRBO0FBV0k7RUFDRTtFQUNBO0VBQ0E7QXJGdzRkTjtBcUZ0NGRNO0VBQ0U7QXJGdzRkUjtBcUZ0NGRNO0VBQ0U7QXJGdzRkUjtBcUZ0NGRNO0VBQ0U7QXJGdzRkUjtBcUZ0NGRNO0VBQ0U7QXJGdzRkUjtBcUZ0NGRNO0VBQ0U7QXJGdzRkUjtBcUY3M2RNO0VBQ0U7QXJGKzNkUjtBcUYzM2RFO0VBQ0U7QXJGNjNkSjtBcUYzM2RJO0VBSEY7SUFJSTtFckY4M2RKO0FBQ0Y7QXFGMzNkTTtFQUNFO0VBQ0E7QXJGNjNkUjtBcUYzM2RRO0VBSkY7SUFLSTtFckY4M2RSO0FBQ0Y7QXFGcDNkRTtFQUNFO0FyRnMzZEo7QXFGOTJkVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRmczZFo7QXFGOTJkVTtFQUNFLGtDcEYvaUJHO0VvRmdqQkg7RUFDQTtFVHhqQlY7QTVFeTZlRjtBcUY5MmRZO0VBQ0UseUJwRm5qQk47RW9Gb2pCTTtFQUNBLGdCcEZyaUJNO0FEcTVlcEI7QXFGMzJkWTtFQUNFO0VBQ0E7QXJGNjJkZDs7QXFGMzFkVTtFQUNFO0FyRjgxZFo7QXFGdjFkTTtFQUNFO0FyRnkxZFI7QXFGcjFkUTtFQUNFO0FyRnUxZFY7QXFGNzBkVTtFQUNFO0FyRiswZFo7QXFGNzBkWTtFQUNFO0FyRiswZGQ7QXFGMTBkWTtFQUNFLGNwRjNtQlA7QUR1N2VQO0FxRjEwZFk7RUFDRTtBckY0MGRkO0FxRjEwZGM7RUFIRjtJQUlJO0VyRjYwZGQ7QUFDRjtBcUY1MGRjO0VBTkY7SUFPSTtFckYrMGRkO0FBQ0Y7QXFGNTBkVTtFQUNFO0FyRjgwZFo7QXFGNTBkWTtFQUhGO0lBSUk7RXJGKzBkWjtBQUNGO0FxRjkwZFk7RUFORjtJQU9JO0VyRmkxZFo7QUFDRjtBcUZoMWRZO0VBVEY7SUFVSTtFckZtMWRaO0FBQ0Y7O0FxRjMwZEE7QUFDQTtFQUNFO0VBQ0E7QXJGODBkRjtBcUY1MGRFO0VBQ0UsZ0JwRnBvQmlCO0VvRnFvQmpCLGNwRm5wQlE7RW9Gb3BCUjtBckY4MGRKO0FxRjUwZEU7RUFDRTtBckY4MGRKO0FxRjUwZEk7RUFIRjtJQUlJO0VyRiswZEo7QUFDRjtBcUY3MGRFO0VBQ0U7QXJGKzBkSjtBcUY3MGRJO0VBSEY7SUFJSTtFckZnMWRKO0FBQ0Y7QXFGLzBkSTtFQUNFO0lBQ0U7RXJGaTFkTjtBQUNGO0FxRi8wZEk7RUFDRTtBckZpMWROO0FxRi8wZEk7RUFDRTtFQUNBLGNwRjdxQk07RW9GOHFCTjtBckZpMWROO0FxRi8wZE07RUFMRjtJQU1JO0VyRmsxZE47QUFDRjtBcUZoMWRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXJGazFkTjtBcUZoMWRJO0VBQ0UscUNwRm5yQk87RW9GcXJCUDtBckZpMWROO0FxRi8wZE07RUFMRjtJQU1JO0VyRmsxZE47QUFDRjtBcUZqMWRNO0VBUkY7SUFTSTtFckZvMWROO0FBQ0Y7O0FxRi8wZEE7QUFHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGZzFkSjtBcUY5MGRJO0VBUEY7SUFRSTtJQUNBO0lBQ0E7SUFDQTtFckZpMWRKO0FBQ0Y7QXFGaDFkSTtFQWJGO0lBY0k7RXJGbTFkSjtBQUNGO0FxRmwxZEk7RUFDRTtFQUNBO0FyRm8xZE47QXFGbDFkTTtFQUNFO0VBQ0EsY3BGaHVCRjtBRG9qZk47QXFGbDFkTTtFQUNFO0FyRm8xZFI7O0FxRjkwZEE7QUFDQTtFQUNFO0FyRmkxZEY7O0FxRjkwZEE7QUFDQTtFQUNFO0VBQ0E7RUFDQSx5QnBGeHZCTTtFb0Z5dkJOO0FyRmkxZEY7QXFGNzBkSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVRqeEJKO0E1RWltZkY7QXFGNTBkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGODBkSjtBcUY1MGRFO0VBQ0U7QXJGODBkSjtBcUY1MGRJO0VBQ0U7RUFDQTtFQUNBO0FyRjgwZE47QXFGNTBkTTtFQUxGO0lBTUk7RXJGKzBkTjtBQUNGO0FxRjkwZE07RUFSRjtJQVNJO0VyRmkxZE47QUFDRjtBcUZoMWRNO0VBWEY7SUFZSTtFckZtMWROO0FBQ0Y7QXFGbDFkTTtFQWRGO0lBZUk7RXJGcTFkTjtBQUNGO0FxRnAxZE07RUFDRTtFQUNBO0FyRnMxZFI7QXFGbjFkSTtFQUNFO0VBQ0E7RUFDQSx5QnBGL3lCRTtFMkVUTjtBNUU4b2ZGO0FxRm4xZE07RUFORjtJQU9JO0lBQ0E7RXJGczFkTjtBQUNGO0FxRm4xZEU7RUFDRTtFQUNBLGdCcEZ4eUJpQjtFb0Z5eUJqQixjcEZ0ekJHO0FEMm9mUDtBcUZuMWRJO0VBTEY7SUFNSTtFckZzMWRKO0FBQ0Y7QXFGcjFkSTtFQUNFO0FyRnUxZE47QXFGcjFkTTtFQUhGO0lBSUk7RXJGdzFkTjtBQUNGO0FxRmwxZE07RUFDRTtBckZvMWRSO0FxRi8wZE07RUFDRTtFQUNBO0FyRmkxZFI7O0FxRjMwZEE7QUFHRTtFQUNFO0VBQ0E7RUFDQTtBckY0MGRKO0FxRjEwZEU7RUFDRTtBckY0MGRKO0FxRjEwZEk7RUFDRTtFQUNBO0FyRjQwZE47O0FxRmwwZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRnEwZEY7QXFGbjBkRTtFQUNFO0VBQ0EseUJwRnozQkk7QUQ4cmZSO0FxRmowZEk7RUFDRSxjcEZ4M0JBO0FEMnJmTjtBcUZoMGRFO0VBQ0U7RUFDQTtBckZrMGRKOztBcUY1emRFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckYremRKO0FxRjd6ZEk7RUFDRTtBckYremROO0FxRjd6ZEk7RUFDRTtBckYremROO0FxRjd6ZEk7RUFDRTtFQUNBO0VBQ0E7QXJGK3pkTjtBcUY1emRJO0VBQ0U7RUFFQTtFQUNBO0VBQ0EseUJwRnA2QkU7RW9GcTZCRixrQ3BGdjZCUztFb0Z3NkJUO0VBQ0E7RUFDQTtBckY2emROO0FxRjN6ZEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckY2emROO0FxRnp6ZE07RUFDRTtBckYyemRSOztBcUZsemRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZxemRGO0FxRm56ZEU7RUFWRjtJQVdJO0VyRnN6ZEY7QUFDRjtBcUZyemRFO0VBYkY7SUFjSTtFckZ3emRGO0FBQ0Y7QXFGdnpkRTtFQUNFO0VBQ0Esb0NwRmo5Qkk7RW9GazlCSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRnl6ZEo7QXFGdnpkSTtFQUNFO0FyRnl6ZE47QXFGdnpkSTtFQUNFO0FyRnl6ZE47QXFGdHpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjcEZuK0JHO0FEMnhmUDtBcUZyemRJO0VBWkY7SUFhSTtJQUNBO0lBQ0E7SUFDQTtFckZ3emRKO0FBQ0Y7QXFGdnpkSTtFQUNFLHVCcEZwL0JTO0FENnlmZjtBcUZ2emRNO0VBQ0UsdUJwRnYvQk87QURnemZmO0FxRnR6ZEk7RUFDRTtBckZ3emROO0FxRnR6ZE07RUFIRjtJQUlJO0VyRnl6ZE47QUFDRjtBcUZ2emRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjcEZsZ0NDO0FEMnpmUDtBcUZ0emRNO0VBWEY7SUFZSTtFckZ5emROO0FBQ0Y7QXFGdHpkRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRnd6ZEo7QXFGdHpkRTtFQUNFO0VBQ0E7QXJGd3pkSjtBcUZ0emRJO0VBSkY7SUFLSTtJQUNBO0VyRnl6ZEo7QUFDRjtBcUZ4emRJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3BGNWhDQztFb0Y2aENEO0FyRjB6ZE47QXFGdnpkTTtFQUNFLHVCcEZ4aUNPO0FEaTJmZjtBcUZ0emRJO0VBQ0U7QXJGd3pkTjs7QXNGNTJmQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsbUNyRkllO0VxRkhmO0F0RisyZkY7O0FzRjUyZkE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0RisyZkY7O0FzRjcyZkE7RUFDRSxtQ3JGWGU7RXFGWWY7RUFDQTtBdEZnM2ZGOztBc0Y3MmZBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFVjdCQTtBNUU4NGZGO0FzRjkyZkU7RUFDRSx5QnJGeEJJO0FEdzRmUjs7QXNGNzJmQTtFQUNFO0F0RmczZkY7O0FzRjkyZkE7RUFDRTtFQUNBO0VBQ0E7QXRGaTNmRjs7QXVGNTVmQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Ris1ZkY7QXVGNzVmRTtFQUNFO0F2Ris1Zko7QXVGNzVmRTtFQUNFLDhCdEZISTtFc0ZJSjtFQUNBO0F2Ris1Zko7QXVGNzVmSTtFQUNFLHVCdEZWUztBRHk2ZmY7QXVGNzVmTTtFQUNFO0F2Ris1ZlI7O0FBOTllQTtBQUVBO0VBQ0U7QUFnK2VGOztBQTc5ZUE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWcrZUY7O0FBNzllQTtBQUNBOzs7Ozs7RUFLMkM7QUFpK2UzQzs7QUEvOWVBO0FBR0U7RUFDRTtBQWcrZUo7QUE5OWVFO0VBQ0U7QUFnK2VKLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi9oZWxwZXIvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2hlbHBlci9fcGxhY2Vob2xkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaGVscGVyL19mb250cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb250YWluZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS12YXJpYW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY29udHJvbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tcmFuZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mbG9hdGluZy1sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX29mZmNhbnZhcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BsYWNlaG9sZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcmF0aW8uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL2NvbXBvbmVudHMvX3Rpbnktc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaGVscGVyL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL19pY29tb29uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbGF5b3V0L19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9sYXlvdXQvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL2NvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL190b3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9jb21wb25lbnRzL19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy9mb3JtL19kYXRlcGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy9fZmlsdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy9fb2JqZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vY29tcG9uZW50cy9faW5mby5zY3NzIiwid2VicGFjazovLy8uL2NvbXBvbmVudHMvX2Nvb2tpZS1jb25zZW50LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnaGVscGVyL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdoZWxwZXIvbWl4aW5zJztcbkBpbXBvcnQgJ2hlbHBlci9wbGFjZWhvbGRlcnMnO1xuQGltcG9ydCAnaGVscGVyL2ZvbnRzJztcblxuQGltcG9ydCAnfmJvb3RzdHJhcCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rpbnktc2xpZGVyJztcbkBpbXBvcnQgXCJ+QGZhbmN5YXBwcy91aS9kaXN0L2ZhbmN5Ym94LmNzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaWNvbW9vblwiO1xuQGltcG9ydCAnfmFuaW1hdGUuY3NzJztcblxuLyoqKiAgIEJPT1RTVFJBUCBFWFRFTlNJT04gICAqKiovXG4uZ3gtNiB7XG4gIG1hcmdpbi1sZWZ0OiAtMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMnJlbTtcblxuICA+IC5jb2wsID4gW2NsYXNzXj1cImNvbC1cIl0sID4gW2NsYXNzKj1cIiBjb2wtXCJdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW07XG5cbiAgICA+IC5jb2wsID4gW2NsYXNzXj1cImNvbC1cIl0sID4gW2NsYXNzKj1cIiBjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIH1cbiAgfVxufVxuLmd4LTcge1xuICBtYXJnaW4tbGVmdDogLTRyZW07XG4gIG1hcmdpbi1yaWdodDogLTRyZW07XG5cbiAgPiAuY29sLCA+IFtjbGFzc149XCJjb2wtXCJdLCA+IFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICA+IC5jb2wsID4gW2NsYXNzXj1cImNvbC1cIl0sID4gW2NsYXNzKj1cIiBjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuICB9XG59XG4ubWItNiB7XG4gIG1hcmdpbi1ib3R0b206IDZyZW07XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLm1iLTgge1xuICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbi5tYi00MCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4ubWItODAge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbi5tYi0xNjAge1xuICBtYXJnaW4tYm90dG9tOiAxNjBweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG59XG4ubWItMjAwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjAwcHg7XG59XG4ubXQtNiB7XG4gIG1hcmdpbi10b3A6IDZyZW07XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgfVxufVxuLm10LTQwIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cbi5tdC04MCB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG59XG4ubXQtMTYwIHtcbiAgbWFyZ2luLXRvcDogMTYwcHg7XG59XG4ubXQtMjAwIHtcbiAgbWFyZ2luLXRvcDogMjAwcHg7XG59XG4ucC02IHtcbiAgcGFkZGluZzogNnJlbSAhaW1wb3J0YW50O1xufVxuLnB4LTYge1xuICBwYWRkaW5nLWxlZnQ6IDZyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogNnJlbSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgIHBhZGRpbmctbGVmdDogNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDRyZW0gIWltcG9ydGFudDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG4ucHQtNiB7XG4gIHBhZGRpbmctdG9wOiA2cmVtICFpbXBvcnRhbnQ7XG59XG4uY29udGFpbmVyIHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICB3aWR0aDogODAlO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cblxuXG5cblxuXG4vKioqICAgQkFTSUMgU0VUVElOR1MgICAqKiovXG5odG1sLCBib2R5IHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE9wZW5TYW5zO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRMaWdodDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS44O1xuXG4gICYuZWRpdG1vZGUge1xuICAgIC8vIHNpbmNlIFBpbWNvcmUgMTEsIHRoZSBlZGl0bW9kZSBvdmVycmlkZXMgdGhlIGZvbnQtZmFtaWx5IGZvciB0aGUgYm9keSBlbGVtZW50XG4gICAgZm9udC1mYW1pbHk6ICRmb250T3BlblNhbnMgIWltcG9ydGFudDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIH1cblxuICAmLm5vc2Nyb2xsLFxuICAmLmFjdGl2ZS1pbmZvLWRpYWxvZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5maWd1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbWctZmx1aWQge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5ib2R5Om5vdCguZWRpdG1vZGUpIGZpZ3VyZVtjbGFzc149XCJpbWctXCJdLFxuYm9keTpub3QoLmVkaXRtb2RlKSBmaWd1cmVbY2xhc3MqPVwiIGltZy1cIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJi5pbWctc3F1YXJlIHsgLyogMToxICovXG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIH1cbiAgJi5pbWctdW5pdmlzaXVtIHsgLyogMjoxICovXG4gICAgcGFkZGluZy1ib3R0b206IDUwJTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgICB9XG4gIH1cbiAgJi5pbWctdW5pdmlzaXVtZ2FsbGVyeSB7IC8qIDI6MS4yNTkzNzUgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogNjIuOTY4NzUlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjQuNDAyMTczOTEzMDQzJTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTMzLjMzMzMzMyU7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDYyLjk2ODc1JTtcbiAgICB9XG4gIH1cbiAgJi5pbWctbGFuZHNjYXBlIHsgLyogNDozICovXG4gICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgfVxuICAmLmltZy1wb3J0cmFpdCB7IC8qIDM6NCAqL1xuICAgIHBhZGRpbmctYm90dG9tOiAxMzMuMzMzMzMzJTtcbiAgfVxuICAmLmltZy1jaW5lbWEgeyAvKiAyLjM1OjEgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogNDIuNTUzMTklO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjIuOTY4NzUlO1xuICAgIH1cbiAgfVxuICAmOm5vdCguaW1nLWF1dG8pID4gKjpub3QoLmNvcHlyaWdodCk6bm90KGZpZ2NhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaW1nLWZsdWlkIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbiAgZmlnY2FwdGlvbiB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeUNvbG9yLCAuNSk7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG59XG5cbi5idG46bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgY29sb3I6ICRncmV5O1xuICBmb250LWZhbWlseTogJGZvbnRPcGVuU2FucztcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgfVxuICAmLmJ0bi1zbSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHBhZGRpbmc6IC43NXJlbSAxLjI1cmVtO1xuXG4gICAgLnBhY2thZ2UgJiB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZzogLjVyZW0gMS4yNXJlbTtcbiAgICB9XG4gIH1cbiAgJi5idG4tbGcge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDJyZW07XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS43NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgICBjb2xvcjogJHJlZDtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gICYuYnRuLXJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJHJlZDtcblxuICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdyZXk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB9XG4gIH1cbiAgJi5idG4tYmFjayB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogLjc1cmVtO1xuICAgICAgY29udGVudDogJ1xcZTkwNCc7XG4gICAgfVxuICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5oYXMtaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMy4yNXJlbTtcblxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDEuNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgJi5idG4tc20ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjI1cmVtO1xuXG4gICAgICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgICBsZWZ0OiAuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYnRuLXRleHQge1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRTZW1pQm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGNvbG9yKTtcblxuICAmOjphZnRlciB7XG4gICAgQGV4dGVuZCAlaWNvbW9vbjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDcwJTtcbiAgICBjb250ZW50OiAnXFxlOTA0JztcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgfVxuICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRncmV5ICFpbXBvcnRhbnQ7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbVNjcmVlbisxKSB7XG4gIC50d28tY29sdW1uIHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA0cmVtO1xuICAgIGNvbHVtbi1nYXA6IDRyZW07XG4gIH1cblxuICAubXVsdGktY29sdW1uIHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA0cmVtO1xuICAgIGNvbHVtbi1nYXA6IDRyZW07XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgIH1cbiAgfVxufVxuXG4udmlkZW8tYmFja2dyb3VuZC1jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3Qob3BhY2l0eSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgIEBleHRlbmQgJWljb21vb247XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICYgKyBidXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgIH1cbiAgICBpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi5wbGF5LXRvZ2dsZSB7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG4gICAgICB9XG4gICAgICAmLnBhdXNlZDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MWZcIjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5tdXRlLXRvZ2dsZSB7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XG4gICAgICB9XG4gICAgICAmLm11dGVkOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkyMFwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyJztcbkBpbXBvcnQgJ2xheW91dC9mb290ZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9uYXZpZ2F0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2luZm8nO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb29raWUtY29uc2VudCc7XG5cbi8qIEZhbmN5Ym94IFRodW1iIE92ZXJyaWRlICovXG5cbi5mYW5jeWJveF9fdGh1bWIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xufVxuXG4vKiBhMTF5OiBWaXN1YWxseSBoaWRlLCBidXQga2VlcCBhY2Nlc3NpYmxlIHRvIHNjcmVlbiByZWFkZXJzICovXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIGExMXk6IFRpbnkgc2xpZGVyIC0gcHJldmVudCBjbGlja3MgaW4gY2xvbmVkL2hpZGRlbiBzbGlkZXMgYmVmb3JlIEpTIG5vcm1hbGl6YXRpb24gKi9cbi50bnMtc2xpZGUtY2xvbmVkIGEsXG4udG5zLXNsaWRlLWNsb25lZCBidXR0b24sXG4udG5zLWl0ZW1bYXJpYS1oaWRkZW49XCJ0cnVlXCJdIGEsXG4udG5zLWl0ZW1bYXJpYS1oaWRkZW49XCJ0cnVlXCJdIGJ1dHRvbixcbi50bnMtc2xpZGUtY2xvbmVkIFt0YWJpbmRleF0sXG4udG5zLWl0ZW1bYXJpYS1oaWRkZW49XCJ0cnVlXCJdIFt0YWJpbmRleF0geyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4vKiBhMTF5OiBhZGRpdGl2ZSBwb3B1cCBjb2xvciAqL1xuXG5ib2R5IHtcbiAgLmFhLXBvcHVwLXdpZGdldCAuZmxleCA+ICoge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuYWEtcG9wdXAtd2lkZ2V0IC5mbGV4LmZsZXgtY29sdW1uID4gZGl2IHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cbn0iLCIkeHhzU2NyZWVuOiA0MjRweDtcbiR4c1NjcmVlbjogNTc1cHg7XG4kc21TY3JlZW46IDc2N3B4O1xuJG1kU2NyZWVuOiA5OTFweDtcbiRsZ1NjcmVlbjogMTE5OXB4O1xuJHhsU2NyZWVuOiAxMzk5cHg7XG4keHhsU2NyZWVuOiAxNTk5cHg7XG5cbiRwcmltYXJ5Q29sb3I6IHJnYigxMTQsIDM0LCA2MSk7XG4kc2Vjb25kYXJ5Q29sb3I6IHJnYig1MiwgMTcwLCAxNTIpO1xuJHdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4kYmxhY2s6IHJnYigwLCAwLCAwKTtcblxuJGdyZXlMaWdodE9yaWdpbmFsOiAjQ0NDRUQwO1xuJGdyZXlMaWdodDogIzc2Nzk3ZDtcbiRncmV5OiAjMkUzQzQ1O1xuJHJlZDogIzcyMjIzRDtcbiRncmVlbjogIzM0QUE5ODtcblxuJHJlZFNwb3J0YWxwZW46ICNjZjAwMzQ7XG4kbWFuZGF0b3J5OiAjY2YwMDM0O1xuXG4kZm9udEZqYWxsYTogJ0ZqYWxsYSBPbmUnLCBzYW5zLXNlcmlmO1xuJGZvbnRPcGVuU2FuczogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG5cbiRmb250V2VpZ2h0TGlnaHQ6IDMwMDtcbiRmb250V2VpZ2h0UmVndWxhcjogNDAwO1xuJGZvbnRXZWlnaHRNZWRpdW06IDUwMDtcbiRmb250V2VpZ2h0U2VtaUJvbGQ6IDYwMDtcbiRmb250V2VpZ2h0Qm9sZDogNzAwO1xuJGZvbnRXZWlnaHRFeHRyYUJvbGQ6IDgwMDtcblxuOnJvb3Qge1xuICAtLWhlYWRlci1oZWlnaHQ6IDEzMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgIC0taGVhZGVyLWhlaWdodDogMTAwcHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgLS1oZWFkZXItaGVpZ2h0OiA4MHB4O1xuICB9XG59IiwiJWljb21vb24ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn0iLCIvKiBGamFsbGEgT25lICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGamFsbGEgT25lJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvZmphbGxhLW9uZS9mamFsbGEtb25lLXYxMy1sYXRpbi1yZWd1bGFyLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gIHNyYzogbG9jYWwoJycpLFxuICAgICAgIHVybCgnLi4vLi4vZm9udHMvZmphbGxhLW9uZS9mamFsbGEtb25lLXYxMy1sYXRpbi1yZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL2ZqYWxsYS1vbmUvZmphbGxhLW9uZS12MTMtbGF0aW4tcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgdXJsKCcuLi8uLi9mb250cy9mamFsbGEtb25lL2ZqYWxsYS1vbmUtdjEzLWxhdGluLXJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL2ZqYWxsYS1vbmUvZmphbGxhLW9uZS12MTMtbGF0aW4tcmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG4gICAgICAgdXJsKCcuLi8uLi9mb250cy9mamFsbGEtb25lL2ZqYWxsYS1vbmUtdjEzLWxhdGluLXJlZ3VsYXIuc3ZnI0ZqYWxsYU9uZScpIGZvcm1hdCgnc3ZnJyk7IC8qIExlZ2FjeSBpT1MgKi9cbn1cblxuLyogT3BlbiBTYW5zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodExpZ2h0O1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gIHNyYzogbG9jYWwoJycpLFxuICAgICAgIHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTMwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTMwMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG4gICAgICAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAuc3ZnI09wZW5TYW5zJykgZm9ybWF0KCdzdmcnKTsgLyogTGVnYWN5IGlPUyAqL1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tcmVndWxhci5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICBzcmM6IGxvY2FsKCcnKSxcbiAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi1yZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi1yZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tcmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXG4gIHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tcmVndWxhci5zdmcjT3BlblNhbnMnKSBmb3JtYXQoJ3N2ZycpOyAvKiBMZWdhY3kgaU9TICovXG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFNlbWlCb2xkO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tNjAwLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gIHNyYzogbG9jYWwoJycpLFxuICB1cmwoJy4uLy4uL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTYwMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gIHVybCgnLi4vLi4vZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tNjAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi02MDAud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgdXJsKCcuLi8uLi9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi02MDAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLCAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xuICB1cmwoJy4uLy4uL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTYwMC5zdmcjT3BlblNhbnMnKSBmb3JtYXQoJ3N2ZycpOyAvKiBMZWdhY3kgaU9TICovXG59IiwiLyohXG4gKiBCb290c3RyYXAgdjUuMS4zIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gKi9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGltcG9ydC1zdGFja1xuLy8gQ29uZmlndXJhdGlvblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuXG4vLyBMYXlvdXQgJiBjb21wb25lbnRzXG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb250YWluZXJzXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYWNjb3JkaW9uXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJ0b2FzdHNcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcInRvb2x0aXBcIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwiY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcIm9mZmNhbnZhc1wiO1xuQGltcG9ydCBcInBsYWNlaG9sZGVyc1wiO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0IFwiaGVscGVyc1wiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYXBpXCI7XG4vLyBzY3NzLWRvY3MtZW5kIGltcG9ydC1zdGFja1xuIiwiOnJvb3Qge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAvLyBGb250c1xuXG4gIC8vIE5vdGU6IFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcblxuICAvLyBSb290IGFuZCBib2R5XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIGN1c3RvbS1wcm9wZXJ0eS1lbXB0eS1saW5lLWJlZm9yZVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3skZm9udC1mYW1pbHktYmFzZX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC1zaXplOiAjeyRmb250LXNpemUtYmFzZX07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIEBpZiAkYm9keS10ZXh0LWFsaWduICE9IG51bGwge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktdGV4dC1hbGlnbjogI3skYm9keS10ZXh0LWFsaWdufTtcbiAgfVxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvZHktdmFyaWFibGVzXG4gIC8vIHN0eWxlbGludC1lbmFibGUgY3VzdG9tLXByb3BlcnR5LWVtcHR5LWxpbmUtYmVmb3JlXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1yb290LWZvbnQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuLy8gMi4gU2V0IGNvcnJlY3QgaGVpZ2h0IGFuZCBwcmV2ZW50IHRoZSBgc2l6ZWAgYXR0cmlidXRlIHRvIG1ha2UgdGhlIGBocmAgbG9vayBsaWtlIGFuIGlucHV0IGZpZWxkXG5cbmhyIHtcbiAgbWFyZ2luOiAkaHItbWFyZ2luLXkgMDtcbiAgY29sb3I6ICRoci1jb2xvcjsgLy8gMVxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG5cbmhyOm5vdChbc2l6ZV0pIHtcbiAgaGVpZ2h0OiAkaHItaGVpZ2h0OyAvLyAyXG59XG5cblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIDEuIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vLyAgICBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gICAgbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuXG4laGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6ICRoZWFkaW5ncy1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbn1cblxuaDUge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG59XG5cbmg2IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xufVxuXG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLWJzLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA0XG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gIGRpcmVjdGlvbjogbHRyICN7XCIvKiBydGw6aWdub3JlICovXCJ9O1xuICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBpbiBDaHJvbWUgZnJvbSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbi8vIDIuIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vICAgIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gICAgYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xufVxuXG4vLyAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YFxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArICcgJyArICBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyAnIGNhbGMoJyArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCAnIC0gJywgJyArICcpICsgJHZhcmlhYmxlLXdpZHRoICsgJyknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZFZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZFZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkVmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkVmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1yZ2JcbiR0aGVtZS1jb2xvcnMtcmdiOiBtYXAtbG9vcCgkdGhlbWUtY29sb3JzLCB0by1yZ2IsIFwiJHZhbHVlXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtcmdiXG5cbi8vIFRoZSBjb250cmFzdCByYXRpbyB0byByZWFjaCBhZ2FpbnN0IHdoaXRlLCB0byBkZXRlcm1pbmUgaWYgY29sb3IgY2hhbmdlcyBmcm9tIFwibGlnaHRcIiB0byBcImRhcmtcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgZm9yIFdDQUcgMi4wIGFyZSAzLCA0LjUgYW5kIDcuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC8jdmlzdWFsLWF1ZGlvLWNvbnRyYXN0LWNvbnRyYXN0XG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuLy8gVXRpbGl0aWVzIG1hcHNcbi8vXG4vLyBFeHRlbmRzIHRoZSBkZWZhdWx0IGAkdGhlbWUtY29sb3JzYCBtYXBzIHRvIGhlbHAgY3JlYXRlIG91ciB1dGlsaXRpZXMuXG5cbi8vIENvbWUgdjYsIHdlJ2xsIGRlLWR1cGUgdGhlc2UgdmFyaWFibGVzLiBVbnRpbCB0aGVuLCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2Uga2VlcCB0aGVtIHRvIHJlYXNzaWduLlxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1jb2xvcnNcbiR1dGlsaXRpZXMtY29sb3JzOiAkdGhlbWUtY29sb3JzLXJnYiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLXRleHQtY29sb3JzXG4kdXRpbGl0aWVzLXRleHQ6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1jb2xvcilcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtdGV4dC1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtdGV4dCwgcmdiYS1jc3MtdmFyLCBcIiRrZXlcIiwgXCJ0ZXh0XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtdGV4dC1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy1iZy1jb2xvcnNcbiR1dGlsaXRpZXMtYmc6IG1hcC1tZXJnZShcbiAgJHV0aWxpdGllcy1jb2xvcnMsXG4gIChcbiAgICBcImJsYWNrXCI6IHRvLXJnYigkYmxhY2spLFxuICAgIFwid2hpdGVcIjogdG8tcmdiKCR3aGl0ZSksXG4gICAgXCJib2R5XCI6IHRvLXJnYigkYm9keS1iZylcbiAgKVxuKSAhZGVmYXVsdDtcbiR1dGlsaXRpZXMtYmctY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLWJnLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJnXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtYmctY29sb3JzXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4kZ3V0dGVyczogJHNwYWNlcnMgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhyLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItZmFjdG9yOiAgICAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudENvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogICAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwbDMgM2w2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICBzaGFkZS1jb2xvcigkZm9ybS1maWxlLWJ1dHRvbi1iZywgNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3A6ICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNDUgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1NSAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXRoZW1lLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci10aGVtZS12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIHNoYWRlLWNvbG9yKCRkcm9wZG93bi1saW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdzogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZzogICAgICAgcmdiYSgkd2hpdGUsIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG5cblxuLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi12YXJpYWJsZXNcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tdmFyaWFibGVzXG5cblxuLy8gUGxhY2Vob2xkZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwbGFjZWhvbGRlcnNcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluOiAgICAgICAgICAgLjIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBsYWNlaG9sZGVyc1xuXG4vLyBDYXJkc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC12YXJpYWJsZXNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtc3BhY2VyLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAqIC41ICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWJnICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDkwJSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgMTAlKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tYnV0dG9uLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC12YXJpYWJsZXNcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkcG9wb3Zlci1iZywgNiUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cblxuLy8gVG9hc3RzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC12YXJpYWJsZXNcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJhZGdlLXZhcmlhYmxlc1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtdmFyaWFibGVzXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTogICAgLjc1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAgICAxICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogICAgIGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtdmFyaWFibGVzXG5cblxuLy8gT2ZmY2FudmFzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtdmFyaWFibGVzXG4kb2ZmY2FudmFzLXBhZGRpbmcteTogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFkZGluZy14OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoOiAgICAgICAgNDAwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodDogICAgICAgICAzMHZoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgLjNzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogICAgICAgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iZy1jb2xvcjogICAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14LCAjeyRndXR0ZXJ9KTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgsICN7JGd1dHRlcn0pO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtY3NzZ3JpZCB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1yb3dzLCAxKSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Y29sdW1ucywgI3skZ3JpZC1jb2x1bW5zfSksIDFmcik7XG4gICAgZ2FwOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z2FwLCAjeyRncmlkLWd1dHRlci13aWR0aH0pO1xuXG4gICAgQGluY2x1ZGUgbWFrZS1jc3NncmlkKCk7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcblxuICB9IEBlbHNlIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBjb2xvcjogJHRhYmxlLWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZyk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cblxuICAvLyBIaWdobGlnaHQgYm9yZGVyIGNvbG9yIGJldHdlZW4gdGhlYWQsIHRib2R5IGFuZCB0Zm9vdC5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6ICgyICogJHRhYmxlLWJvcmRlci13aWR0aCkgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZyk7XG4gIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZyk7XG4gICAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcik7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSB2YXJpYW50c1xuLy9cbi8vIFRhYmxlIHZhcmlhbnRzIHNldCB0aGUgdGFibGUgY2VsbCBiYWNrZ3JvdW5kcywgYm9yZGVyIGNvbG9yc1xuLy8gYW5kIHRoZSBjb2xvcnMgb2YgdGhlIHN0cmlwZWQsIGhvdmVyZWQgJiBhY3RpdmUgdGFibGVzXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0YWJsZS12YXJpYW50cyB7XG4gIEBpbmNsdWRlIHRhYmxlLXZhcmlhbnQoJGNvbG9yLCAkdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlI3skaW5maXh9IHtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFudFxuQG1peGluIHRhYmxlLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KG9wYXF1ZSgkYm9keS1iZywgJGJhY2tncm91bmQpKTtcbiAgICAkaG92ZXItYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpKTtcbiAgICAkc3RyaXBlZC1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSk7XG4gICAgJGFjdGl2ZS1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpKTtcblxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYm9yZGVyLWZhY3RvcikpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCxcbiAgJltyZWFkb25seV0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cblxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogYXV0bzsgLy8gT3ZlcnJpZGUgZml4ZWQgYnJvd3NlciBoZWlnaHRcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtY29sb3Itc3dhdGNoIHtcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcbiAgLW1vei1wYWRkaW5nLXN0YXJ0OiBzdWJ0cmFjdCgkZm9ybS1zZWxlY3QtcGFkZGluZy14LCAzcHgpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zMjYzNlxuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuIiwiLy9cbi8vIENoZWNrL3JhZGlvXG4vL1xuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtYmc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgPiAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5O1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXCJcIjtcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLXRvb2x0aXApXCIgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItZmVlZGJhY2spXCI7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpI3skdmFsaWRhdGlvbi1tZXNzYWdlc30ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KVxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKSwgZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cblxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICB9XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIC5idG4tY2hlY2s6YWN0aXZlICsgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRidG4tbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi12YXJpYW50KFxuICAkYmFja2dyb3VuZCxcbiAgJGJvcmRlcixcbiAgJGNvbG9yOiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCksXG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWNvbG9yOiBjb2xvci1jb250cmFzdCgkaG92ZXItYmFja2dyb3VuZCksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKSxcbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLFxuICAkZGlzYWJsZWQtYm9yZGVyOiAkYm9yZGVyLFxuICAkZGlzYWJsZWQtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRkaXNhYmxlZC1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkLWJvcmRlcjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi1zaXplLW1peGluXG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS1jbGFzc2VzXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xuXG4gICYuY29sbGFwc2UtaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLWNsYXNzZXNcbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZW5kLFxuLmRyb3Bkb3duLFxuLmRyb3BzdGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoZW5kKTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BzdGFydCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRyb3Bkb3duLWRpdmlkZXItYmc7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XG59XG5cbi8vIERhcmsgZHJvcGRvd25zXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1iZztcbiAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdyk7XG5cbiAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZyk7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmcpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnO1xuICB9XG5cbiAgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93biB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmcteSAkbmF2LWxpbmstcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLXBhZGRpbmcteTtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy15O1xuICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kO1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm9mZmNhbnZhcy10b3AsXG4gICAgICAgIC5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi5uYXZiYXItbGlnaHQge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLW5hdiB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgYSxcbiAgICBhOmhvdmVyLFxuICAgIGE6Zm9jdXMgIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGNhcmQtYm94LXNoYWRvdyk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiAtJGNhcmQtdGl0bGUtc3BhY2VyLXkgKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtY2FwLXBhZGRpbmcteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgQGlmICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhPSAkY2FyZC1iZyB7XG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjYXJkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAqIC41O1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteSAkYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogJGFjY29yZGlvbi1idXR0b24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1iZztcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi10cmFuc2l0aW9uKTtcblxuICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoJGFjY29yZGlvbi1ib3JkZXItd2lkdGggKiAtMSkgMCAkYWNjb3JkaW9uLWJvcmRlci1jb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiAkYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvbiBpY29uXG4gICY6OmFmdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5hY2NvcmRpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1iZztcbiAgYm9yZGVyOiAkYWNjb3JkaW9uLWJvcmRlci13aWR0aCBzb2xpZCAkYWNjb3JkaW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC8vIE9ubHkgc2V0IGEgYm9yZGVyLXJhZGl1cyBvbiB0aGUgbGFzdCBpdGVtIGlmIHRoZSBhY2NvcmRpb24gaXMgY29sbGFwc2VkXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSAkYWNjb3JkaW9uLWJvZHktcGFkZGluZy14O1xufVxuXG5cbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cblxuLmFjY29yZGlvbi1mbHVzaCB7XG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yO1xuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtYmc7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJHBhZ2luYXRpb24tYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLmRpc2FibGVkIC5wYWdlLWxpbmsge1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5AaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgsIG51bGwsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpO1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgfVxuXG4gIC5wYWdlLWl0ZW0ge1xuICAgIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gKC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vQWRkIGJvcmRlci1yYWRpdXMgdG8gYWxsIHBhZ2VMaW5rcyBpbiBjYXNlIHRoZXkgaGF2ZSBsZWZ0IG1hcmdpblxuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJhZGdlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6ICRhbGVydC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRzdGF0ZSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAkYWxlcnQtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYmctc2NhbGUpO1xuICAkYWxlcnQtYm9yZGVyOiBzaGlmdC1jb2xvcigkdmFsdWUsICRhbGVydC1ib3JkZXItc2NhbGUpO1xuICAkYWxlcnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWNvbG9yLXNjYWxlKTtcbiAgQGlmIChjb250cmFzdC1yYXRpbygkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWNvbG9yKSA8ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgICAkYWxlcnQtY29sb3I6IG1peCgkdmFsdWUsIGNvbG9yLWNvbnRyYXN0KCRhbGVydC1iYWNrZ3JvdW5kKSwgYWJzKCRhbGVydC1jb2xvci1zY2FsZSkpO1xuICB9XG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xuICAgIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LWJhY2tncm91bmQsICRhbGVydC1ib3JkZXIsICRhbGVydC1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtbW9kaWZpZXJzXG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFudC1taXhpblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IHNoYWRlLWNvbG9yKCRjb2xvciwgMjAlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYW50LW1peGluXG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWtleWZyYW1lc1xuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogJHByb2dyZXNzLWhlaWdodDsgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWtleWZyYW1lc1xuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgPiBsaTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4vLyBMaXN0IGdyb3VwIGNvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJHN0YXRlLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICRsaXN0LWdyb3VwLXZhcmlhbnQtYmc6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZSk7XG4gICRsaXN0LWdyb3VwLXZhcmlhbnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZSk7XG4gIEBpZiAoY29udHJhc3QtcmF0aW8oJGxpc3QtZ3JvdXAtdmFyaWFudC1iZywgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcikgPCAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICAgJGxpc3QtZ3JvdXAtdmFyaWFudC1jb2xvcjogbWl4KCR2YWx1ZSwgY29sb3ItY29udHJhc3QoJGxpc3QtZ3JvdXAtdmFyaWFudC1iZyksIGFicygkbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlKSk7XG4gIH1cblxuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRsaXN0LWdyb3VwLXZhcmlhbnQtYmcsICRsaXN0LWdyb3VwLXZhcmlhbnQtY29sb3IpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gTGlzdCBHcm91cHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbWl4aW5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1peGluXG4iLCIvLyB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogJGJ0bi1jbG9zZS1vcGFjaXR5O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tY2xvc2UtZm9jdXMtc2hhZG93O1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgZmlsdGVyOiAkYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjtcbn1cbiIsIi50b2FzdCB7XG4gIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1zcGFjaW5nO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkdG9hc3QtcGFkZGluZy14ICogLS41O1xuICAgIG1hcmdpbi1sZWZ0OiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW1vZGFsLWJhY2tkcm9wLCAkbW9kYWwtYmFja2Ryb3AtYmcsICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBQdXQgbW9kYWwgaGVhZGVyIGVsZW1lbnRzICh0aXRsZSBhbmQgZGlzbWlzcykgb24gb3Bwb3NpdGUgZW5kc1xuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgKiAuNSkgKCRtb2RhbC1oZWFkZXItcGFkZGluZy14ICogLjUpO1xuICAgIG1hcmdpbjogKCRtb2RhbC1oZWFkZXItcGFkZGluZy15ICogLS41KSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggKiAtLjUpICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAqIC0uNSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuICogLjU7XG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkcG9zdGZpeDogaWYoJGluZml4ICE9IFwiXCIsICRpbmZpeCArIFwiLWRvd25cIiwgXCJcIik7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLm1vZGFsLWZ1bGxzY3JlZW4jeyRwb3N0Zml4fSB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbiIsIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1lbmQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXN0YXJ0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtMXB4O1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXN0YXJ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciBvdmVyZmxvdy13cmFwIC8gd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMCAje1wiLyogcnRsOmlnbm9yZSAqL1wifTtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1zdGFydCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8qIHJ0bDpvcHRpb25zOiB7XG4gIFwiYXV0b1JlbmFtZVwiOiB0cnVlLFxuICBcInN0cmluZ01hcFwiOlsge1xuICAgIFwibmFtZVwiICAgIDogXCJwcmV2LW5leHRcIixcbiAgICBcInNlYXJjaFwiICA6IFwicHJldlwiLFxuICAgIFwicmVwbGFjZVwiIDogXCJuZXh0XCJcbiAgfSBdXG59ICovXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZyk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZyk7XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gRGFyayBtb2RlIGNhcm91c2VsXG5cbi5jYXJvdXNlbC1kYXJrIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogJHNwaW5uZXItdmVydGljYWwtYWxpZ247XG4gIGJvcmRlcjogJHNwaW5uZXItYm9yZGVyLXdpZHRoIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XG4gIHZlcnRpY2FsLWFsaWduOiAkc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiAkc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdztcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246ICRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZCAqIDI7XG4gICAgfVxuICB9XG59XG4iLCIub2ZmY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtb2ZmY2FudmFzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAkb2ZmY2FudmFzLWNvbG9yO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRvZmZjYW52YXMtYmctY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIG91dGxpbmU6IDA7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG9mZmNhbnZhcy1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0KTtcbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAkb2ZmY2FudmFzLXBhZGRpbmcteSAkb2ZmY2FudmFzLXBhZGRpbmcteDtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiAoJG9mZmNhbnZhcy1wYWRkaW5nLXkgKiAuNSkgKCRvZmZjYW52YXMtcGFkZGluZy14ICogLjUpO1xuICAgIG1hcmdpbi10b3A6ICRvZmZjYW52YXMtcGFkZGluZy15ICogLS41O1xuICAgIG1hcmdpbi1yaWdodDogJG9mZmNhbnZhcy1wYWRkaW5nLXggKiAtLjU7XG4gICAgbWFyZ2luLWJvdHRvbTogJG9mZmNhbnZhcy1wYWRkaW5nLXkgKiAtLjU7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6ICRvZmZjYW52YXMtcGFkZGluZy15ICRvZmZjYW52YXMtcGFkZGluZy14O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ub2ZmY2FudmFzLXN0YXJ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoO1xuICBib3JkZXItcmlnaHQ6ICRvZmZjYW52YXMtYm9yZGVyLXdpZHRoIHNvbGlkICRvZmZjYW52YXMtYm9yZGVyLWNvbG9yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLWVuZCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAkb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg7XG4gIGJvcmRlci1sZWZ0OiAkb2ZmY2FudmFzLWJvcmRlci13aWR0aCBzb2xpZCAkb2ZmY2FudmFzLWJvcmRlci1jb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLXRvcCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206ICRvZmZjYW52YXMtYm9yZGVyLXdpZHRoIHNvbGlkICRvZmZjYW52YXMtYm9yZGVyLWNvbG9yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLWJvdHRvbSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6ICRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItdG9wOiAkb2ZmY2FudmFzLWJvcmRlci13aWR0aCBzb2xpZCAkb2ZmY2FudmFzLWJvcmRlci1jb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4ub2ZmY2FudmFzLnNob3cge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDtcblxuICAmLmJ0bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi5wbGFjZWhvbGRlci14cyB7XG4gIG1pbi1oZWlnaHQ6IC42ZW07XG59XG5cbi5wbGFjZWhvbGRlci1zbSB7XG4gIG1pbi1oZWlnaHQ6IC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vLyBBbmltYXRpb25cbi5wbGFjZWhvbGRlci1nbG93IHtcbiAgLnBsYWNlaG9sZGVyIHtcbiAgICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93IHtcbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW47XG4gIH1cbn1cblxuLnBsYWNlaG9sZGVyLXdhdmUge1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAkYmxhY2sgNTUlLCByZ2JhKDAsIDAsIDAsICgxIC0gJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluKSkgNzUlLCAkYmxhY2sgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG4iLCJAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmxpbmstI3skY29sb3J9IHtcbiAgICBjb2xvcjogJHZhbHVlO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LXRvcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skcHJvcGVydHktY2xhc3N9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YWx1ZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFsdWV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMb29wIG92ZXIgZWFjaCBicmVha3BvaW50XG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuXG4gIC8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGlmIG5lZWRlZFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJ350aW55LXNsaWRlci9kaXN0L3Rpbnktc2xpZGVyLmNzcyc7XG5cbi50aW55LXNsaWRlci13cmFwcGVyIHtcbiAgLyogb3ZlcmZsb3c6IGhpZGRlbjsgKi9cbn1cbi50bnMtb3V0ZXIge1xuXG4gIC50bnMtY29udHJvbHMge1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleUxpZ2h0T3JpZ2luYWw7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkZ3JleUxpZ2h0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXk7XG4gICAgICB9XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kICVpY29tb29uO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZbZGF0YS1jb250cm9scz0ncHJldiddIHtcbiAgICAgICAgbGVmdDogLTExMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgICAgIGxlZnQ6IC05NXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICAgIGxlZnQ6IC04MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICAgIGxlZnQ6IC02MHB4O1xuICAgICAgICB9XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1xcZTkwMyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZbZGF0YS1jb250cm9scz0nbmV4dCddIHtcbiAgICAgICAgcmlnaHQ6IC0xMTBweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgICAgICByaWdodDogLTk1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICAgICAgcmlnaHQ6IC04MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MDQnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50bnMtbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwOyAvLyBuZWVkZWQgZm9yIGlPU1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBvcGFjaXR5OiAuODtcblxuICAgICAgKyBidXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgJi50bnMtbmF2LWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5Q29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbi50bnMtY3VzdG9tLW5hdiB7XG5cbiAgLnRucy1uYXYtaXRlbSB7XG4gICAgb3BhY2l0eTogLjU7XG5cbiAgICAmLnRucy1uYXYtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5zbGlkZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgdG9wO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gIC50b3AtbWVkaWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuIiwiQG1peGluIHRyYW5zaXRpb24tZWZmZWN0KCRuYW1lLCAkZHVyYXRpb246IDAuNHMsICR0aW1pbmctZnVuY3Rpb246IGVhc2UsICRkZWxheTogMHMpIHtcbiAgdHJhbnNpdGlvbjogJG5hbWUgJGR1cmF0aW9uICR0aW1pbmctZnVuY3Rpb24gJGRlbGF5O1xufSIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcmM6ICB1cmwoJy4uLy4uL2ZvbnRzL2ljb21vb24vaWNvbW9vbi5lb3Q/dmR1cWVoJyk7XG4gIHNyYzogIHVybCgnLi4vLi4vZm9udHMvaWNvbW9vbi9pY29tb29uLmVvdD92ZHVxZWgjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gIHVybCgnLi4vLi4vZm9udHMvaWNvbW9vbi9pY29tb29uLnR0Zj92ZHVxZWgnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gIHVybCgnLi4vLi4vZm9udHMvaWNvbW9vbi9pY29tb29uLndvZmY/dmR1cWVoJykgZm9ybWF0KCd3b2ZmJyksXG4gIHVybCgnLi4vLi4vZm9udHMvaWNvbW9vbi9pY29tb29uLnN2Zz92ZHVxZWgjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbn1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgQGV4dGVuZCAlaWNvbW9vbjtcbn1cblxuLmljb24td2FsazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOVwiO1xufVxuLmljb24taGlraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XG59XG4uaWNvbi1ydW5uaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM4XCI7XG59XG4uaWNvbi1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzZcIjtcbn1cbi5pY29uLXF1b3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG59XG4uaWNvbi12b3VjaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM0XCI7XG59XG4uaWNvbi1waW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzJcIjtcbn1cbi5pY29uLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzM1wiO1xufVxuLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuLmljb24tYXJyb3ctbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uaWNvbi1hdXR1bW46YmVmb3JlLFxuLmljb24tY2F0ZWdvcnktNzQ6YmVmb3JlLFxuLmljb24tc2Vhc29uLTEzMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLmljb24tYmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG4uaWNvbi1iaWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwY1wiO1xufVxuLmljb24tY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuLmljb24tY2hlY2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG4uaWNvbi1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiO1xufVxuLmljb24tZGlzY291bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTZcIjtcbn1cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG59XG4uaWNvbi1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMlwiO1xufVxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XG59XG4uaWNvbi1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI0XCI7XG59XG4uaWNvbi1tYXNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI1XCI7XG59XG4uaWNvbi1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNlwiO1xufVxuLmljb24tb2ZmZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjdcIjtcbn1cbi5pY29uLXBlcnNvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjhcIjtcbn1cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI5XCI7XG59XG4uaWNvbi1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyYVwiO1xufVxuLmljb24tcGxheS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjtcbn1cbi5pY29uLXNwcmluZzpiZWZvcmUsXG4uaWNvbi1jYXRlZ29yeS0xMDM6YmVmb3JlLFxuLmljb24tc2Vhc29uLTEzMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuLmljb24tc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiO1xufVxuLmljb24tc3VpdGNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmVcIjtcbn1cbi5pY29uLXN1bW1lcjpiZWZvcmUsXG4uaWNvbi1jYXRlZ29yeS03MzpiZWZvcmUsXG4uaWNvbi1zZWFzb24tNTk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmZcIjtcbn1cbi5pY29uLXRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzBcIjtcbn1cbi5pY29uLXdpbnRlcjpiZWZvcmUsXG4uaWNvbi1jYXRlZ29yeS03NTpiZWZvcmUsXG4uaWNvbi1zZWFzb24tMTMzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG59XG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFmXCI7XG59XG4uaWNvbi1wYXVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZVwiO1xufVxuLmljb24tbXV0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMFwiO1xufVxuLmljb24tdW5tdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIxXCI7XG59XG4uaWNvbi1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG59XG4uaWNvbi1hbGFybS1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuLmljb24tY2hpbGRyZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5pY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuLmljb24tZ2FsbGVyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLmljb24taGVhcnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuLmljb24tbWVudTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLmljb24tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cbi5pY29uLW5ld3NsZXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cbi5pY29uLXBlcnNvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuLmljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiO1xufVxuLmljb24tc2l6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuLmljb24tc3Rhci1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG59XG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG4uaWNvbi16b29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XG59XG4uaWNvbi1zcG9ydGFscGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59IiwiI3BhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGJvZHkudG9wLWludmlzaWJsZSAmIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG4gIH1cbn1cblxuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDIwMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChiYWNrZ3JvdW5kLWNvbG9yKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gIH1cbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gID4gLmNvbnRhaW5lci1mbHVpZCwgPiAuY29udGFpbmVyLWZsdWlkID4gLnJvdyB7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBmaXggZm9yIElFIDExXG4gIH1cbiAgLmRlc2t0b3AtY3RhLWJ1dHRvbnMge1xuXG4gICAgYSB7XG4gICAgICB6LWluZGV4OiA5OTk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRMaWdodDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKCRibGFjaywgLjE2KTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmVucXVpcnktbGluayB7XG5cbiAgICAgIGJvZHkubWFza2VkICYge1xuICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYWxjdWxhdG9yIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFNlbWlCb2xkO1xuXG4gICAgICBib2R5Lm1hc2tlZCAmIHtcbiAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuY29tcHJlc3NlZCxcbiAgYm9keS50b3AtaW52aXNpYmxlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDNweCAzMHB4IHJnYmEoJGJsYWNrLCAuMDYpO1xuXG4gICAgLmRlc2t0b3AtY3RhLWJ1dHRvbnMge1xuXG4gICAgICAuZW5xdWlyeS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgfVxuICAgICAgLmNhbGN1bGF0b3Ige1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5uYXYtdXAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogMjUwbXMgZWFzZS1pbi1vdXQgMHMgMSBub3JtYWwgZm9yd2FyZHMgcnVubmluZyBtb3ZlVXA7XG4gICAgYW5pbWF0aW9uOiAyNTBtcyBlYXNlLWluLW91dCAwcyAxIG5vcm1hbCBmb3J3YXJkcyBydW5uaW5nIG1vdmVVcDtcbiAgfVxuICAmLm5hdi1kb3duIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogMjUwbXMgZWFzZS1pbi1vdXQgMHMgMSBub3JtYWwgZm9yd2FyZHMgcnVubmluZyBtb3ZlRG93bjtcbiAgICBhbmltYXRpb246IDI1MG1zIGVhc2UtaW4tb3V0IDBzIDEgbm9ybWFsIGZvcndhcmRzIHJ1bm5pbmcgbW92ZURvd247XG5cbiAgICAmLmluaXRpYWwtbG9hZCB7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMG1zO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwbXM7XG4gICAgfVxuXG4gICAgJjpub3QoLmluaXRpYWwtbG9hZCkge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwcHgpO1xuICAgIH1cbiAgfVxuICAvKi53YXRjaGxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoY29sb3IpO1xuXG5cbiAgICAuaXRlbXMtY291bnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtLjc1cmVtO1xuICAgICAgcmlnaHQ6IC0uNXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgIGhlaWdodDogMS41cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZ3JleTtcblxuICAgICAgLml0ZW1zLWNvdW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfSovXG59XG5cbiNsb2dvIHtcblxuICBpbWcge1xuICAgIGhlaWdodDogNDZweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChvcGFjaXR5KTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgIH1cbiAgICAmLmxvZ28td2hpdGUge1xuICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgI2hlYWRlci5jb21wcmVzc2VkICYsXG4gICAgICBib2R5LnRvcC1pbnZpc2libGUgJixcbiAgICAgIGJvZHkubWFza2VkICYge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmxvZ28ge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICNoZWFkZXIuY29tcHJlc3NlZCAmLFxuICAgICAgYm9keS50b3AtaW52aXNpYmxlICYsXG4gICAgICBib2R5Lm1hc2tlZCAmIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIE9OIFNDUk9MTCBBTklNQVRJT04gICAqKiovXG5ALXdlYmtpdC1rZXlmcmFtZXMgbW92ZVVwIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlVXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMHB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbW92ZURvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVEb3duIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuI3RvcC1pbWFnZSB7XG4gIC50b3AtbWVkaWEge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgICBhc3BlY3QtcmF0aW86IDU3Ni80MzI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBpbWcuaW1nLWZsdWlkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiI2Zvb3RlciB7XG5cbiAgLmNvbnRhaW5lciA+IGRpdiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgfVxuICAjZm9vdGVyLWxvZ28ge1xuICAgIHdpZHRoOiAyMzVweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmFkZHJlc3MtY29udGFjdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDUycHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIGFuZCAobWluLXdpZHRoOiAoJGxnU2NyZWVuKzEpKSxcbiAgICBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC5waG9uZSwgLmVtYWlsIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuc3RheS1pbi10b3VjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG5cbiAgICAmOmZpcnN0LWxldHRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTM1cHhcbiAgICB9XG4gIH1cbiAgLmFycml2YWwtbWFwIHtcbiAgICB3aWR0aDogNTc1cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHhsU2NyZWVuKSB7XG4gICAgICB3aWR0aDogNDI1cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMDBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTgwcHg7XG4gICAgfVxuICB9XG59XG5cbiNzcG9ydGFscGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcblxuICA+IGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGFsbCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcmVkU3BvcnRhbHBlbjtcbiAgICB9XG4gIH1cbn1cblxuI2JhY2stdG8tdG9wIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDNyZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAyMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6ICRncmV5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgIGxlZnQ6IDEuNzVyZW07XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgbGVmdDogNi41JTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLmJhciB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZ3JleSwgLjI1KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgfVxuICAucHJvZ3Jlc3Mge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICB3aWR0aDogMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYmFja2dyb3VuZC1jb2xvcik7XG4gIH1cbiAgJi52aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHJlZDtcblxuICAgICAgLmJhciwgLnByb2dyZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI21vYmlsZS1jdGEtYnV0dG9ucyB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAtMzBweCAzMHB4IHJnYmEoJGJsYWNrLCAuMDYpO1xuICB6LWluZGV4OiA5OTk7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRyZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5tYWlsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgJi5jYWxjdWxhdG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufSIsIi8qKiogIE9QRU4vQ0xPU0UgTUFJTiBERVNLVE9QL01PQklMRSBOQVZJR0FUSU9OICAgKioqL1xuLm1lbnUtYnRuIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA5OTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QodG9wLCAyNTBtcyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgkYmxhY2ssIC4xKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG4gICNoZWFkZXIuY29tcHJlc3NlZCAmLFxuICBib2R5LnRvcC1pbnZpc2libGUgJixcbiAgYm9keS5tYXNrZWQgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JleUxpZ2h0T3JpZ2luYWw7XG4gIH1cbiAgaW5wdXQge1xuXG4gICAgJjpjaGVja2VkIHtcblxuICAgICAgKyBsYWJlbCB7XG5cbiAgICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdG9wIGVhc2UgMjUwbXMsIHRyYW5zZm9ybSBlYXNlIDI1MG1zIDI1MG1zO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdG9wIGVhc2UgMjUwbXMsIHRyYW5zZm9ybSBlYXNlIDI1MG1zIDI1MG1zO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDVweDtcblxuICAgIC5tZW51LWljb24sIC5tZW51LWljb246OmJlZm9yZSwgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICNoZWFkZXIuY29tcHJlc3NlZCAmLFxuICAgICAgYm9keS50b3AtaW52aXNpYmxlICYsXG4gICAgICBib2R5Lm1hc2tlZCAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgfVxuICAgIH1cbiAgICAubWVudS1pY29uIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtMTFweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIEJPRFkgTUFTSyAgICoqKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsZ1NjcmVlbikge1xuICBib2R5Lm1hc2tlZDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTk5O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgLjgpO1xuICB9XG59XG5cblxuLyoqKiAgIE1BSU4gREVTS1RPUCBOQVZJR0FUSU9OICoqKi9cbiNtYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0xMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsKTtcblxuICAmLm9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICByaWdodDogMDtcbiAgfVxuICA+IC5jb250YWluZXItZmx1aWQsXG4gID4gLmNvbnRhaW5lci1mbHVpZCA+IC5yb3cge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAjbWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcblxuICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRGamFsbGE7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDRcIjtcbiAgICAgICAgICAgIHJpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBAZXh0ZW5kICVpY29tb29uO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5Q29sb3I7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgYSAge1xuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxNHB4O1xuICAgICAgICAgIGxlZnQ6IDIzMHB4O1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGFsbCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IC05cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4uaGFzLWljb24ge1xuXG4gICAgICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zdWItbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUsIC45KTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5zdWItbmF2aWdhdGlvbiB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgPiBsaSB7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250RmphbGxhO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAmID4gYSB7XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIE1BSU4gTU9CSUxFIE5BVklHQVRJT04gICAqKiovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcblxuXG4gICNtb2JpbGUtbmF2aWdhdGlvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5vcGVuIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICYuaW5hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgPiBsaSA+IGEge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICA+IGEgc3Bhbi50aXRsZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250RmphbGxhO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBhIHNwYW4ubmFtZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250T3BlblNhbnM7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodExpZ2h0O1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG5cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAwcHgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW51LXN0YXJ0LWl0ZW0ge1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy1jaGlsZHJlbiB7XG5cbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAwcHgpIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQ5MHB4KSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUtbGFuZy1uYXZpZ2F0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG5cbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaS5hY3RpdmUgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgbGk6bGFzdC1vZi10eXBlIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDBweCkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pe1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAwcHgpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLW5hdi1idXR0b25zIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgIGEuYnRuIHtcbiAgICAgICAgd2lkdGg6IDMxJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjgwcHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICBhLmJ0biB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAwcHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgYS5idG4ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA0OTBweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1Yi1uYXZpZ2F0aW9uIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIC8vIHBhZGRpbmc6IDhyZW0gNS41cmVtIDAgNS41cmVtO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICB9XG4gICAgICAubWVudS1zdGFydC1pdGVtIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZqYWxsYTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgICAgICBjb2xvcjogJHByaW1hcnlDb2xvciFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250T3BlblNhbnM7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFJlZ3VsYXI7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtU2NyZWVuKSB7XG4gIC5tb2JpbGUtbmF2LWJ1dHRvbnMge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMCU7XG4gIH1cbn1cblxuXG4vKioqICAgQlJFQURDUlVNQlMgICAqKiovXG4uYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgLmJyZWFkY3J1bWItaXRlbSB7XG5cbiAgICAmICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgICAgIEBleHRlbmQgJWljb21vb247XG4gICAgICBjb250ZW50OiAnXFxlOTA0JztcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250T3BlblNhbnM7XG4gICAgICBjb2xvcjogJGdyZXkgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0TGlnaHQ7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChjb2xvcik7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBleHRlbmQgJWljb21vb247XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgICBjb2xvcjogJGdyZXk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICBhIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogNjUlO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAxcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vKioqICAgTEFOR1VBR0UgTkFWSUdBVElPTiAgICoqKi9cbiNsYW5ndWFnZS1uYXZpZ2F0aW9uIHtcblxuXG5cbiAgdWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGxpIHtcblxuICAgICAgKyBsaSB7XG5cbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgfVxuICAgICAgJjpub3QoLmFjdGl2ZSk6aG92ZXIge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodEJvbGQ7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoY29sb3IpO1xuICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vKioqICAgRk9PVEVSIE5BVklHQVRJT04gICAqKiovXG4jZm9vdGVyLW5hdmlnYXRpb24ge1xuICBmb250LWZhbWlseTogJGZvbnRGamFsbGE7XG4gIGZvbnQtc2l6ZTogMjRweDtcblxuICBsaSB7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoY29sb3IpO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBGT09URVIgTEVHQUwgTkFWSUdBVElPTiAgICoqKi9cbiNmb290ZXItbGVnYWwtbmF2aWdhdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiA1MnB4O1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSBhbmQgKG1pbi13aWR0aDogKCRsZ1NjcmVlbisxKSksXG4gIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgbGkge1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGdyZXk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGNvbG9yKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgU09DSUFMIE5BVklHQVRJT04gICAqKiovXG4jc29jaWFsLW5hdmlnYXRpb24sXG4jZm9vdGVyLXNvY2lhbC1uYXZpZ2F0aW9uIHtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGNvbG9yKTtcblxuICAgICNoZWFkZXIuY29tcHJlc3NlZCAmLFxuICAgIGJvZHkudG9wLWludmlzaWJsZSAmLFxuICAgIGJvZHkubWFza2VkICYsXG4gICAgI2Zvb3RlciAmIHtcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgIH1cbiAgICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbiAgICAuc29jaWFsLXRvb2x0aXAge1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3Qob3BhY2l0eSk7XG4gICAgfVxuICAgICY6aG92ZXIge1xuXG4gICAgICAuc29jaWFsLXRvb2x0aXAge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI2Zvb3Rlci1zb2NpYWwtbmF2aWdhdGlvbiB7XG5cbiAgYSB7XG5cbiAgICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgZm9udC1zaXplOiAzOHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiN0b3Age1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGJvZHk6bm90KC5lZGl0bW9kZSkgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JleSwgNzUlKTtcblxuICAgIC50b3AtY2FwdGlvbiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgfVxuICAudG9wLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDZyZW07XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLnRvcC1jYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIGJvZHk6bm90KC5lZGl0bW9kZSkgJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDY1cHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHhsU2NyZWVuKSB7XG4gICAgICB3aWR0aDogNTUlO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgIHdpZHRoOiA2NSU7XG4gICAgfVxuICAgIC5oNiB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgkd2hpdGUsIC4yNSk7XG5cbiAgICAgIGJvZHk6bm90KC5lZGl0bW9kZSkgJiB7XG5cbiAgICAgICAgJjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNjVweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eGxTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudG5zLW91dGVyIC50bnMtbmF2IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIHBhZGRpbmc6IDAgM3JlbSAzcmVtIDA7XG4gIH1cbn1cblxuI3RvcC1pbWFnZSwgI3RvcC12aWRlbyB7XG5cbiAgLnRvcC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChvcGFjaXR5LCAxcywgZWFzZSwgMXMpO1xuICB9XG4gICYuaW1hZ2VzLWxvYWRlZCxcbiAgJi52aWRlby1sb2FkZWQge1xuXG4gICAgLnRvcC1jYXB0aW9uIHtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuI3RvcC1pbWFnZSB7XG5cbiAgZmlndXJlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KG9wYWNpdHksIDFzLCBlYXNlLCAuNXMpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoJGJsYWNrLCAuNSkgMCUsIHJnYmEoJGJsYWNrLCAuMykgMTAwJSk7XG4gICAgfVxuICAgIC5pbWctZmx1aWQge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gICYuaW1hZ2VzLWxvYWRlZCB7XG5cbiAgICBmaWd1cmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuI3RvcC12aWRlbyB7XG5cbiAgYm9keTpub3QoLmVkaXRtb2RlKSAmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDIuNTUzMTklOyAvKiBjaW5lbWEgcmF0aW8gLSAyLjM1OjEgKi9cbiAgfVxuXG4gIC50b3AtdmlkZW8tcGxheWVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuI3RvcC1zbGlkZXIge1xuXG4gIC5zbGlkZSB7XG5cbiAgICBib2R5Om5vdCguZWRpdG1vZGUpICYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuICAgIH1cblxuICAgIC50b3AtbWVkaWEge1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDExMCU7XG4gICAgICAgIHdpZHRoOiAxMTAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsLCA2cywgZWFzZS1pbi1vdXQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtY2FwdGlvbiB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwsIDFzLCBlYXNlLWluLW91dCwgLjVzKTtcbiAgICB9XG5cbiAgICAmLnRucy1zbGlkZS1hY3RpdmUge1xuXG4gICAgICAudG9wLWNhcHRpb24ge1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnRvcC1tZWRpYSB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3RvcC1zcGxpdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAuc3BsaXQtaXRlbSB7XG5cbiAgICAuc3BsaXQtY2FwdGlvbiB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgLmhlYWRsaW5lIHtcbiAgICAgICAgZm9udC1zaXplOiA3NXB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdCh0cmFuc2Zvcm0sIC40cywgZWFzZS1pbi1vdXQpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG5cbiAgICAgICAgJjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMzVweFxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eGxTY3JlZW4pIHtcbiAgICAgICAgICBmb250LXNpemU6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiA1NXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcblxuICAgICAgICAgICY6Zmlyc3QtbGV0dGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweFxuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjMwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saW5lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjI1KTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYmFja2dyb3VuZC1jb2xvciwgLjRzLCBlYXNlLWluLW91dCk7XG4gICAgICB9XG4gICAgICAuc3VibGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjMwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHghaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBib2R5Om5vdCguZWRpdG1vZGUpICYge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KG9wYWNpdHksIC40cywgZWFzZS1pbi1vdXQpO1xuXG4gICAgICBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3BsaXQtY2FwdGlvbi13cmFwcGVyIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDcwcHggMTYwcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KHBhZGRpbmcsIC40cywgZWFzZS1pbi1vdXQpO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eGxTY3JlZW4pIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDYwcHggMTIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgICAgcGFkZGluZzogMCA0MHB4IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxMCUgMnJlbTtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2NDVweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMCUgMXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQ5OXB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwJSAwLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgkYmxhY2ssIC45KSwgcmdiYSgkYmxhY2ssIC4yKSk7XG4gICAgICAgICAgb3BhY2l0eTogLjY1O1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3Qob3BhY2l0eSwgLjRzLCBlYXNlLWluLW91dCk7XG4gICAgICAgIH1cbiAgICAgICAgLnNwbGl0LWNhcHRpb24ge1xuICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsLCAuNHMsIGVhc2UtaW4tb3V0KTtcblxuICAgICAgICAgIC5zdWJsaW5lIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KG9wYWNpdHksIC4ycywgZWFzZS1pbi1vdXQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY29udGVudCB7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICgkeHNTY3JlZW4rMSkpIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgICAgICAqOm5vdCguYnRuKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsLCAuNHMsIGVhc2UtaW4tb3V0KTtcblxuICAgICAgICAgICAgLmJ0bjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgLnNwbGl0LWNhcHRpb24td3JhcHBlciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eHNTY3JlZW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNwbGl0LWNhcHRpb24ge1xuXG4gICAgICAgICAgICAuaGVhZGxpbmUge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eHNTY3JlZW4pIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saW5lIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN1YmxpbmUge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbikge1xuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYm9keTpub3QoLmVkaXRtb2RlKSAmIC5jb2wtMTIuZGFya2VuZWQgIHtcblxuICAgIC5zcGxpdC1pdGVtIHtcblxuICAgICAgLnNwbGl0LWNhcHRpb24td3JhcHBlciB7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgIC5zcGxpdC1jYXB0aW9uIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNDU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2dvLXRvLWNvbnRlbnQge1xuICB6LWluZGV4OiAyMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChvcGFjaXR5KTtcblxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59IiwiLyoqKiAgIEdFTkVSQUwgU0VUVElOR1MgKioqL1xuLmNvbnRlbnQge1xuXG4gICYgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIH1cbn1cbi5jb3B5cmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogOHB4O1xuICBsZWZ0OiAxMHB4O1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIG9wYWNpdHk6IC44O1xuICB6LWluZGV4OiAyO1xufVxuXG4vKioqICAgSEVBRExJTkVTICAgKioqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICBmb250LWZhbWlseTogJGZvbnRGamFsbGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgIGNvbG9yOiAkcmVkO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbikge1xuICAgIC5jb250ZW50LWJsb2NrICYge1xuICAgICAgaHlwaGVuczogYXV0bztcbiAgICAgIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiAwLjFlbTtcbiAgICB9XG4gIH1cblxufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuXG4gICYuaGFzLWxpbmUge1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGdyZXksIC4yNSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDQ2cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiA0NHB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgfVxufVxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogNDRweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMjhweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgPiBzcGFuICsgc3Bhbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgICBwYWRkaW5nOiAwIC43NXJlbTtcbiAgfVxufVxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiA5MHB4O1xuICBsaW5lLWhlaWdodDogMS4xO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eGxTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDcwcHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiA2MHB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDQycHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG59XG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRTZW1pQm9sZDtcbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgR0VORVJBTCBTRVRUSU5HUyAgICoqKi9cbi5jb250ZW50LWJsb2NrIHtcblxuICAmOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcblxuICB9XG4gIGE6bm90KC5idG4pIHtcbiAgICBjb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICB1bDpub3QoLmxpc3QtdW5zdHlsZWQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpOm5vdCguYnJlYWRjcnVtYi1pdGVtKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBleHRlbmQgJWljb21vb247XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgICBsaVtzdHlsZSo9XCJ0ZXh0LWFsaWduOmNlbnRlclwiXSwgbGlbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyXCJdLCAudGV4dC1jZW50ZXIgbGkge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgICB9XG4gICAgfVxuICAgICYubGlzdC1oaWdobGlnaHRlZCB7XG5cbiAgICAgIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHAsIHVsLCBvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgKyBoMywgKyBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICB9XG4gIH1cbiAgYmxvY2txdW90ZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250RmphbGxhO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDMycHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAlaWNvbW9vbjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG4gICAgICBjb2xvcjogbGlnaHRlbigkZ3JleSwgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMjAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC03NSUsIC0yNSUpO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjUlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgKyBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRSZWd1bGFyO1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgfVxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGdyZXkgIWltcG9ydGFudDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGNvbG9yKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW1nLWhvdmVyLCAudmlkZW8taG92ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgW2NsYXNzXj1cImljb24tXCJdLCAgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgYm90dG9tOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgei1pbmRleDogMztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIFtjbGFzc149XCJpY29uLVwiXSwgIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLmltZy1ob3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgW2NsYXNzXj1cImljb24tXCJdLCAgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBib3R0b206IDUwJTtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWhvdmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKCRibGFjaywgLjkpLCByZ2JhKCRibGFjaywgLjIpKTtcbiAgICBvcGFjaXR5OiAuNTU7XG4gICAgei1pbmRleDogMjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChvcGFjaXR5KTtcbiAgfVxuICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICBmb250LXNpemU6IDgwcHg7XG4gIH1cbiAgJjpob3ZlciB7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogLjI1O1xuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBIRUFETElORVMgICAqKiovXG4uY29udGVudC1ibG9jay1oZWFkbGluZXMge1xuXG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiA2MnB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogNTJweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDQycHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBURVhUICAgKioqL1xuLmNvbnRlbnQtYmxvY2stdGV4dCxcbi5jb250ZW50LWJsb2NrLXBob3RvLWNyZWRpdHMge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICgkbWRTY3JlZW4rMSkpe1xuICAgIC5jb250ZW50LmhlYWRsaW5lLWhhcy1saW5lIHtcbiAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBURVhUIFdJVEggTUVESUEgICAqKiovXG4uY29udGVudC1ibG9jay10ZXh0LXdpdGgtbWVkaWEge1xuXG4gIC5tdC10b3Age1xuICAgIG1hcmdpbi10b3A6IDE1MHB4O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbil7XG4gICAgICBtYXJnaW4tdG9wOiAxMjVweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4c1NjcmVlbil7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICB9XG4gIH1cbiAgLmJveCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIGgzIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBHQUxMRVJZICAgKioqL1xuLmNvbnRlbnQtYmxvY2stZ2FsbGVyeSB7XG5cbiAgLmdhbGxlcnktd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW07XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjVyZW07XG4gICAgfVxuICB9XG4gIC5nYWxsZXJ5LWl0ZW0ge1xuXG4gICAgJi5nYWxsZXJ5LWltYWdlLCAmLmdhbGxlcnktdmlkZW8ge1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5nYWxsZXJ5LXRleHQge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAmLnAtc20tNSB7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSBhbmQgKG1pbi13aWR0aDogKCRsZ1NjcmVlbisxKSkge1xuICAgICAgICAgIHBhZGRpbmc6IDJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgVklERU8gICAqKiovXG4uY29udGVudC1ibG9jay12aWRlbyB7XG5cbiAgLmNvbnRlbnQtbWVkaWEge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5Q29sb3I7XG5cblxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBBQ0NPUkRJT04gICAqKiovXG4uY29udGVudC1ibG9jay1hY2NvcmRpb24sXG4uY29udGVudC1ibG9jay1zZW1pbmFyLXJvb21zIHtcblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZ3JleSwgLjI1KTtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkZ3JleSwgLjI1KTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAmOm5vdCguYWNjb3JkaW9uLWl0ZW0tMCkge1xuICAgICAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgQGV4dGVuZCAlaWNvbW9vbjtcbiAgICAgICAgY29udGVudDogXCJcXGU5MDFcIjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IC41cmVtIDAgM3JlbSAwO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZzogLjI1cmVtIDAgMS41cmVtIDA7XG4gICAgICB9XG4gICAgfVxuICAgIHNtYWxsLCAuc21hbGwge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0TGlnaHQ7XG5cbiAgICAgID4gc3BhbiArIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgICBwYWRkaW5nOiAwIC4zNzVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uY29udGVudC1ibG9jay1qb2JzIHtcblxuICAuam9iIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZ3JleSwgLjI1KTtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGdyZXksIC4yNSk7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgcGFkZGluZzogMS4ycmVtIDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBzbWFsbCwgLnNtYWxsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodExpZ2h0O1xuXG4gICAgICA+IHNwYW4gKyBzcGFuOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgcGFkZGluZzogMCAuMzc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBRVU9URSAgICoqKi9cbi5jb250ZW50LWJsb2NrLXF1b3RlIHtcblxuICAucXVvdGUge1xuXG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgVElQICAgKioqL1xuLmNvbnRlbnQtYmxvY2stdGlwIHtcblxuICAudGlwIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeUNvbG9yO1xuXG4gICAgW2NsYXNzXj1cImljb24tXCJdLCAgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgSU5TUElSQVRJT05TICAgKioqL1xuLmNvbnRlbnQtYmxvY2staW5zcGlyYXRpb25zIHtcblxuICAudGlueS1zbGlkZXItd3JhcHBlciB7XG5cbiAgICAmLmFjdGl2ZS10aW55LXNsaWRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMTA0cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgICBwYWRkaW5nLXRvcDogOTRweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICBwYWRkaW5nLXRvcDogODRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNjlweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNjRweDtcbiAgICB9XG4gICAgLnRucy1vdXRlciB7XG5cbiAgICAgIC50bnMtY29udHJvbHMge1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuXG4gICAgICAgICAgJltkYXRhLWNvbnRyb2xzPXByZXZdIHtcbiAgICAgICAgICAgIHJpZ2h0OiA5MnB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IDgycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IDcycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IDU3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMTAlICsgNTJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICZbZGF0YS1jb250cm9scz1uZXh0XSB7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAxMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50LWJsb2NrLXBhY2thZ2VzLFxuLmNvbnRlbnQtYmxvY2staW5zcGlyYXRpb25zIHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAudGlueS1zbGlkZXItY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgVEVBU0VSIFJPVyAgICoqKi9cbi5jb250ZW50LWJsb2NrLXRlYXNlci1yb3cge1xuICBwYWRkaW5nLXRvcDogNDlweDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICBwYWRkaW5nLXRvcDogMzlweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAucm93Lmd4LTYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcblxuICAgICAgPiAuY29sLCA+IFtjbGFzc149XCJjb2wtXCJdLCA+IFtjbGFzcyo9XCIgY29sLVwiXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRlYXNlciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiA1cmVtIDIuNXJlbSA0cmVtO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nOiA0cmVtIDJyZW0gMi41cmVtO1xuICAgIH1cbiAgICBbY2xhc3NePVwiaWNvbi1cIl0sICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIGJvZHk6bm90KC5lZGl0bW9kZSkgJiAuYnRuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAoJG1kU2NyZWVuKzEpKSB7XG4gICAgLmhhcy1pbWFnZS10ZWFzZXIge1xuXG4gICAgICAudGVhc2VyLXdyYXBwZXItaW1hZ2Uge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgICAgLnRlYXNlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3JlbTtcbiAgICAgICAgcGFkZGluZzogNnJlbSA2cmVtIDUuNXJlbTtcblxuICAgICAgICAmLnRlYXNlci0wIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAuYnRuLFxuICAgICAgICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi50ZWFzZXItMiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAuYnRuLFxuICAgICAgICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgY29udGVudCBibG9jayBDQUxMIFRPIEFDVElPTiAgICAqKiovXG4vKioqICAgY29udGVudCBibG9jayBURUFTRVIgICAqKiovXG4uY29udGVudC1ibG9jay1jYWxsLXRvLWFjdGlvbixcbi5jb250ZW50LWJsb2NrLXRlYXNlciB7XG5cbiAgLnRlYXNlciB7XG5cbiAgICAudGVhc2VyLW92ZXJsYXksIC50ZWFzZXItY2FwdGlvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgLnRlYXNlci1vdmVybGF5IHtcbiAgICAgIHotaW5kZXg6IDk7XG4gICAgfVxuICAgIC50ZWFzZXItY2FwdGlvbi13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDZyZW07XG4gICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gNy41JTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRlYXNlci1jYXB0aW9uIHtcblxuICAgICAgYm9keTpub3QoLmVkaXRtb2RlKSAmIHtcbiAgICAgICAgd2lkdGg6IDU2MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRlYXNlci12aWRlby13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0Mi41NTMxOSU7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICBwYWRkaW5nLXRvcDogNjIuOTY4NzUlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnRlYXNlci1vdmVybGF5LWxpZ2h0IHtcblxuICAgICAgLnRlYXNlci1vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC41KTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoJHdoaXRlLCAuNSkgMCUsIHJnYmEoJHdoaXRlLCAuNykgMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICAgICYudGVhc2VyLW92ZXJsYXktZGFyayB7XG5cbiAgICAgIC50ZWFzZXItb3ZlcmxheSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuNSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKCRibGFjaywgLjMpIDAlLCByZ2JhKCRibGFjaywgLjUpIDEwMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNvbnRlbnQtYmxvY2stY2FsbC10by1hY3Rpb24ge1xuXG4gIC50ZWFzZXIge1xuXG4gICAgLmNvbnRlbnQtbWVkaWEuaW1nLWNpbmVtYSB7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTMzLjMzMzMzMyU7XG5cbiAgICAgICAgLmltZy1mbHVpZCB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRlYXNlci1jYXB0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICBwYWRkaW5nOiA0LjVyZW07XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmc6IDIuNXJlbTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYnRuIHtcblxuICAgICsgLmJ0biB7XG4gICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcblxuICAgICAgJi5oYXMtaWNvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS43NXJlbTtcbiAgICAgIH1cbiAgICAgICsgLmJ0biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcblxuICAgICAgJi5oYXMtaWNvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcblxuICAgICAgKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNvbnRlbnQtYmxvY2stdGVhc2VyLFxuLmNvbnRlbnQtYmxvY2stY2Fyb3VzZWwtc3BlY2lhbCB7XG5cbiAgLnRlYXNlciB7XG5cbiAgICAudGVhc2VyLWNhcHRpb24ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFJlZ3VsYXI7XG5cbiAgICAgIC5jYXRjaHdvcmQge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnRuIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYudGVhc2VyLW92ZXJsYXktbGlnaHQge1xuXG4gICAgICAudGVhc2VyLWNhcHRpb24ge1xuICAgICAgICBjb2xvcjogJGdyZXk7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgVEFCUyAmIFBSRVNTIElNQUdFUyAgICoqKi9cbi5jb250ZW50LWJsb2NrLXRhYnMsXG4uY29udGVudC1ibG9jay1wcmVzcy1pbWFnZXMge1xufVxuXG4vKioqICAgY29udGVudCBibG9jayBST09NUyAgKioqL1xuLmNvbnRlbnQtYmxvY2stcm9vbXMge1xuXG4gIC5yb29tcy1ib3gge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogNnJlbSA2cmVtIDZyZW0gOHJlbTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gNnJlbTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nOiA0cmVtIDRyZW0gNnJlbSA0cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMnJlbSA1cmVtIDJyZW07XG4gICAgfVxuICAgIC5idG4gKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogLjc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucm9vbSB7XG5cbiAgICAucHJpY2UtZnJvbSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDMwcHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAubmFtZSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcmlnaHQ6IDM1cHg7XG4gICAgICBib3R0b206IDM1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgIGJvdHRvbTogNjRweDtcbiAgICAgICAgbGVmdDogMzVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIGJvdHRvbTogNTRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRpbnktc2xpZGVyLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogLTNyZW07XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0zcmVtO1xuICAgIH1cbiAgICAudG5zLW91dGVyIHtcblxuICAgICAgLnRucy1jb250cm9scyB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogIGNvbnRlbnQgYmxvY2sgQ0FST1VTRUwgICoqKi9cbi5jb250ZW50LWJsb2NrLWNhcm91c2VsIHtcblxuICAudGlueS1zbGlkZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDEyMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgfVxuICAgIC50aW55LXNsaWRlci1oZWFkbGluZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICB9XG4gIH1cbiAgLnRhYi1tZWRpYS13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDMyNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAmLnRhYi1ib3gtd3JhcHBlciB7XG4gICAgICBoZWlnaHQ6IDY3NHB4O1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIGhlaWdodDogNDI0cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhYi1tZWRpYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2Fyb3VzZWwtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuXG4gICAgdWwge1xuXG4gICAgICBsaSB7XG4gICAgICAgIGNvbG9yOiAkZ3JleUxpZ2h0O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChjb2xvcik7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDZyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDkwJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC8vaGVpZ2h0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjFweDtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjFweDtcbiAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCA1cHg7XG5cbiAgICB9XG4gIH1cbiAgLnNsaWRlIHtcblxuICB9XG4gIC50bnMtb3V0ZXIge1xuXG4gICAgLnRucy1jb250cm9scyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA2cmVtO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4bFNjcmVlbikge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgbGVmdDogM3JlbTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2cmVtKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2cmVtKTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleUxpZ2h0T3JpZ2luYWw7XG4gICAgICAgIGNvbG9yOiAkZ3JleUxpZ2h0O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICAgICsgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICsgYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRucy1wcm9ncmVzcy1iYXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICAgICAgbGVmdDogMjIwcHg7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDFweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICBsZWZ0OiAxNjBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgICBsZWZ0OiAxMjBweDtcbiAgICAgICAgfVxuICAgICAgICAucHJvZ3Jlc3Mge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdCh3aWR0aCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgY29udGVudCBibG9jayBDQVJPVVNFTCBTUEVDSUFMICAqKiovXG4uY29udGVudC1ibG9jay1jYXJvdXNlbC1zcGVjaWFsIHtcblxuICAudGVhc2VyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0Mi41NTMxOSU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2Mi45Njg3NSU7XG4gICAgfVxuICB9XG4gIC50aW55LXNsaWRlci13cmFwcGVyIHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDcwJTtcbiAgICB6LWluZGV4OiAzO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4bFNjcmVlbikge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICB3aWR0aDogODUlO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDNyZW07XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAgIC50bnMtb3ZoIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBib3R0b206IDEuNXJlbTtcbiAgICB9XG4gIH1cbiAgLnRlYXNlciB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChvcGFjaXR5LCAuNnMpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjUpIDEwMCUpO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgLmltZy1mbHVpZCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnRlYXNlci1jYXB0aW9uLXdyYXBwZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4bFNjcmVlbikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAzcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICB0b3A6IDEuNXJlbTtcbiAgICB9XG4gIH1cbiAgLnNsaWRlIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgZmlndXJlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAuNTU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGlkZS1jYXB0aW9uIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwYWRkaW5nOiAwIDEwMHB4IDQwcHggNDBweDtcblxuICAgICAgLmg2IHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgfVxuICAgICAgLmNhdGNod29yZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0UmVndWxhcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLnRucy1zbGlkZS1hY3RpdmU6Zmlyc3QtY2hpbGQge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbiAgLnRlYXNlci1jYXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDUzMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHh4bFNjcmVlbikge1xuICAgICAgbWF4LXdpZHRoOiA0MzBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICBtYXgtd2lkdGg6IDMzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmljb24tdGFnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB3aWR0aDogNThweDtcbiAgICAgIGhlaWdodDogNThweDtcbiAgICB9XG4gIH1cbiAgLnRucy1vdXRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRucy1pdGVtIC5zbGlkZS1pbm5lciB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3Qob3BhY2l0eSk7XG4gICAgfVxuICAgIC50bnMtaXRlbS50bnMtc2xpZGUtYWN0aXZlICAuc2xpZGUtaW5uZXIsXG4gICAgLnRucy1pdGVtLnRucy1zbGlkZS1hY3RpdmUrLnRucy1pdGVtOm5vdCgudG5zLXNsaWRlLWFjdGl2ZSkgLnNsaWRlLWlubmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC50bnMtaXRlbTpub3QoLnRucy1zbGlkZS1hY3RpdmUpKy50bnMtc2xpZGUtYWN0aXZlIC5zbGlkZS1pbm5lcntcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC50bnMtY29udHJvbHMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogNzIuODQyMjYxJTtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2cmVtKTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICB9XG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICAgICsgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgICsgYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50bnMtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGxlZnQ6IDIyMHB4O1xuICAgICAgICByaWdodDogY2FsYyg2cmVtICsgODBweCk7XG4gICAgICAgIGhlaWdodDogMXB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgICAgIGxlZnQ6IDE0MHB4O1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDNyZW0gKyA4MHB4KTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZ3Jlc3Mge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdCh3aWR0aCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50bnMtcHJvZ3Jlc3MtY291bnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogNnJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRGamFsbGE7XG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICByaWdodDogM3JlbTtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgUFJFU1MgRE9XTkxPQURTICAgKioqL1xuLmNvbnRlbnQtYmxvY2stcHJlc3MtZG93bmxvYWRzIHtcblxuICAubG9nby00YyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnlDb2xvcjtcbiAgfVxuICAubG9nby1uZWcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5Q29sb3I7XG4gIH1cbiAgLmRvd25sb2FkcyB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBhICsgYSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRwcmltYXJ5Q29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBjb250ZW50IGJsb2NrIFNJVEVNQVAgICAqKiovXG4uY29udGVudC1ibG9jay1zaXRlbWFwIHtcblxuICAubmF2aWdhdGlvbiB7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAuMjVyZW07XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoYWxsKTtcbiAgICAgIH1cbiAgICB9XG4gICAgPiBsaSB7XG5cbiAgICAgID4gYSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgICAgICAgY29sb3I6ICRncmV5ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0UmVndWxhcjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICRyZWQ7XG4gICAgICB9XG4gICAgICA+IHVsIHtcblxuICAgICAgICA+IGxpIHtcblxuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyID4gYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRCb2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHVsIHtcblxuICAgICAgICAgICAgPiBsaSB7XG5cbiAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNXJlbSAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIgPiBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRCb2xkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBjb250ZW50IGJsb2NrIFNOSVBQRVQgQ0hJTERSRU4gUFJJQ0VTICAgKioqL1xuLmNvbnRlbnQtYmxvY2stY2hpbGRyZW4tcHJpY2VzIHtcblxuICAubmF2LXRhYnMge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgdGFibGUge1xuXG4gICAgdGQge1xuICAgICAgcGFkZGluZy10b3A6IC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogLjM3NXJlbTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgVElNRSBTTElERVIgICAqKiovXG4uY29udGVudC1ibG9jay10aW1lLXNsaWRlciB7XG5cbiAgLmN1cnJlbnQtZGF0ZS10aW1lIHtcbiAgICB0b3A6IDNyZW07XG4gICAgbGVmdDogM3JlbTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICB0b3A6IDEuNXJlbTtcbiAgICAgIGxlZnQ6IDEuNXJlbTtcbiAgICB9XG4gICAgLnRpbWUge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgIH1cbiAgfVxuICAuc2xpZGUge1xuXG4gICAgLnNsaWRlLWNhcHRpb24td3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwYWRkaW5nOiA2cmVtO1xuICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGUtY2FwdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5Q29sb3I7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cbiAgfVxuICAudG5zLW5hdiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogM3JlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAgNnJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5Q29sb3I7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgIHBhZGRpbmc6IC43NXJlbSAxcmVtIC43NXJlbSAxLjI1cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMi4yNXJlbTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBjb250ZW50IGJsb2NrIEdPT0dMRSBNQVAgICAqKiovXG4uZ29vZ2xlLW1hcC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNnb29nbGUtbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBJRSAxMSBuZWVkcyB0aGlzXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cblxuICAmLmdvb2dsZS1tYXAtLW5vdGluaXRpYWxpemVkIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJodHRwczovL3Nwb3J0aG90ZWwuYXQvYmlsZGVyL3BsYXR6aGFsdGVyL3BsYWNlaG9sZGVyLWdvb2dsZS1tYXBzLmpwZWdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgfVxufVxuXG4uZ29vZ2xlLW1hcF9fYWNjZXB0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMyk7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdpZHRoOiAzMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTYwcHg7XG4gIHRvcDogNTAlO1xuICBwYWRkaW5nOiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gIC5kaXJlY3Rpb25zLXN1Ym1pdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qKiogICBjb250ZW50IGJsb2NrIElGUkFNRSAgICoqKi9cbi5jb250ZW50LWJsb2NrLWlmcmFtZSB7XG5cbiAgaWZyYW1lIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gICYjd2ViY2FtLXNwb3J0aG90ZWwtd2FncmFpbiB7XG4gICAgXG4gICAgaWZyYW1lIHtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgIGhlaWdodDogMzkwcHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBoZWlnaHQ6IDM1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHhzU2NyZWVuKSB7XG4gICAgICAgIGhlaWdodDogMjUwcHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIGNvbnRlbnQgYmxvY2sgUFJJVkFDWSBQT0xJQ1kgICAqKiovXG4uY29udGVudC1ibG9jay1wcml2YWN5LXBvbGljeSB7XG4gIGZvbnQtc2l6ZTogNzUlO1xufVxuXG4vKioqICAgY29udGVudCBibG9jayBXRUVLTFkgUFJPR1JBTSAgICoqKi9cbi53ZWVrbHktcHJvZ3JhbSB7XG5cbiAgLmNvbC0xMiB7XG5cbiAgICAuZGF5IHtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICAgICYuZGF5LTUsICYuZGF5LTYsICYuZGF5LTcge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICAmLmRheS00IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgJi5kYXktMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5hbWUge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeUNvbG9yO1xuICAgICAgfVxuICAgICAgLml0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyZXksIDY1JSk7XG5cbiAgICAgICAgJi5oaWdobGlnaHQge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeUNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAudGl0bGUsIC5kZXNjcmlwdGlvbiwgW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgICAgIHAge1xuXG4gICAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0Qm9sZDtcbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCA1MCUpO1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG5cbiAgICAgIC5kYXkge1xuXG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRzZWNvbmRhcnlDb2xvciwgMTAlKTtcbiAgICAgICAgfVxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JleSwgNzUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qKiogICBEQVRFUElDS0VSIEZPUiBCT09UU1RSQVAgICAqKiovXG4uZGF0ZXBpY2tlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAxcHggMnB4IDNweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgcGFkZGluZzogNnB4O1xuICB6LWluZGV4OiAxMDAwICFpbXBvcnRhbnQ7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ3JleTtcbiAgfVxuXG4gIC5kYXRlcGlja2VyLWRheXMge1xuICAgIHRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGVhZCB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAmLmRvdyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDcwJTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRib2R5IHtcbiAgICAgICAgdHIge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYub2xkLFxuICAgICAgICAgICAgJi5uZXcge1xuICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAmLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUuYWN0aXZlLFxuICAgICAgICAgICAgJi5hY3RpdmUuaGlnaGxpZ2h0ZWQuYWN0aXZlLFxuICAgICAgICAgICAgJi5hY3RpdmUuaGlnaGxpZ2h0ZWQ6YWN0aXZlLFxuICAgICAgICAgICAgJi5hY3RpdmU6YWN0aXZlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIkBpbXBvcnQgJ2Zvcm0vZGF0ZXBpY2tlcic7XG5cbi8qKiogICBGSUxURVIgICAqKiovXG4uY29udGVudC1ibG9jay1maWx0ZXIge1xuXG4gIC5maWx0ZXItd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gIH1cbiAgLmZpbHRlci1ncm91cCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5maWx0ZXItZ3JvdXAtaGFzaHRhZ3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgcGFkZGluZzogMnJlbSAzcmVtO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAuNzVyZW07XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHhzU2NyZWVuKSB7XG4gICAgICAgIHBhZGRpbmc6IC43NXJlbSAuNXJlbTtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBleHRlbmQgJWljb21vb247XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRncmV5TGlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxhYmVsIHtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb2xvcjogJGdyZXlMaWdodDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXIge1xuICAgICAgLy8gcGFkZGluZzogMXJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgLy8gcGFkZGluZzogLjc1cmVtIDFyZW0gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIH1cbiAgICAgICYuaGFzaHRhZy1maWx0ZXIge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnRXZWlnaHRTZW1pQm9sZDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmJ0bi5kLWZsZXgge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItZGF0ZSwgLmZpbHRlci1zZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5Q29sb3I7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5Q29sb3I7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtO1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAjY2xlYXItZmlsdGVyIHtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lZmZlY3QoY29sb3IpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICB9XG4gIH1cbn0iLCJAaW1wb3J0ICdmaWx0ZXInO1xuXG4vKioqICAgT0JKRUNUIElURU1TICAgKioqL1xuLnBhY2thZ2UsIC5yb29tLCAudHJlYXRtZW50LCAucHJlc3MtcmVsZWFzZSB7XG5cbiAgLnByaWNlLWZyb20ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgdG9wOiAzMHB4O1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZqYWxsYTtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLnRpdGxlIHtcblxuICAgIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgUEFDS0FHRVMgICAqKiovXG4ucGFja2FnZSB7XG5cbiAgLnByaWNlLWZyb20taGlnaGxpZ2h0LXdyYXBwZXIge1xuICAgIHRvcDogMzBweDtcbiAgICByaWdodDogMzBweDtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuaGFzaHRhZ3MsIC5wcmljZS1mcm9tLCAucHJpY2UtZnJvbS1oaWdobGlnaHQtd3JhcHBlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICAuaGFzaHRhZ3Mge1xuICAgIGJvdHRvbTogMjVweDtcbiAgICByaWdodDogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodFNlbWlCb2xkO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuICAuc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuICAmOm5vdCguaXMtdG9wKSB7XG5cbiAgICBmaWd1cmUge1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoJGJsYWNrLCAuNSksIHJnYmEoJGJsYWNrLCAwKSk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuaXMtdG9wIHtcblxuICAgIC5pbmZvIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGFzaHRhZ3Mge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBjb2xvcjogJGdyZXlMaWdodDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNvbnRlbnQtYmxvY2stcGFja2FnZXMge1xuXG4gIC5oYXNodGFncyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgIC5yb3cuZ3gtNiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuXG4gICAgICA+IC5jb2wsID4gW2NsYXNzXj1cImNvbC1cIl0sID4gW2NsYXNzKj1cIiBjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGlueS1zbGlkZXItd3JhcHBlciB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICB9XG4gIH1cbiAgLnRucy1vdXRlciB7XG5cbiAgICAudG5zLWNvbnRyb2xzIHtcblxuICAgICAgYnV0dG9uIHtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAgICZbZGF0YS1jb250cm9scz1wcmV2XSB7XG4gICAgICAgICAgICByaWdodDogNTVweDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgICZbZGF0YS1jb250cm9scz1uZXh0XSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgICAgJltkYXRhLWNvbnRyb2xzPXByZXZdIHtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwJSArIDUwcHgpO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgJltkYXRhLWNvbnRyb2xzPW5leHRdIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jcGFja2FnZS1pbmZvLFxuI3Jvb20taW5mbyB7XG5cbiAgLnBhY2thZ2UtaW5mby13cmFwcGVyLFxuICAucm9vbS1pbmZvLXdyYXBwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gICAgfVxuICB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDc1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDU1cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eHNTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG4gIH1cbiAgLnZhbGlkaXR5LXBlcmlvZCxcbiAgLnNpemUtb2NjdXBhbmN5IHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAyMHB4OztcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxnU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cbiAgLmhhcmQtZmFjdHMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG5cbiAgICAuaGFzaHRhZ3Mge1xuXG4gICAgICBzcGFuIGkge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaGlnaGxpZ2h0cyB7XG5cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIEBleHRlbmQgJWljb21vb247XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MTBcIjtcbiAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjcGFja2FnZS1pbmZvLXJlYWQtbW9yZSB7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuZGV0YWlsZWQtZGVzY3JpcHRpb24tb3BlbmVkIHtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjcGFja2FnZS1kZXRhaWxlZC1kZXNjcmlwdGlvbiB7XG5cbiAgICBoMiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICB1bCB7XG5cbiAgICAgIGxpIHtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICfigKInICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbGVmdDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHAgKyB1bCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cbn1cbiNyb29tLWdhbGxlcnksXG4jcGFja2FnZS1nYWxsZXJ5IHtcblxuICAudG5zLW91dGVyIHtcblxuICAgIC50bnMtY29udHJvbHMge1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmW2RhdGEtY29udHJvbHM9cHJldl0ge1xuICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDVcIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJltkYXRhLWNvbnRyb2xzPW5leHRdIHtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICByaWdodDogYXV0bztcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwMVwiO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI3BhY2thZ2UtcHJpY2VzIHtcblxuICAucm9vbS1pbmZvIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleUxpZ2h0T3JpZ2luYWw7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcblxuICAgIC5yb29tLXByaWNlLWZyb20ge1xuICAgICAgY29sb3I6ICRncmV5TGlnaHQ7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cbiNyb29tLWJyZWFkY3J1bWJzIHtcbiAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG4vKioqICAgUk9PTVMgICAqKiovXG4ucm9vbSB7XG5cbiAgLmJvb2thYmxlLWFzLXNpbmdsZS1yb29tIHtcbiAgICBib3R0b206IDI1cHg7XG4gICAgcmlnaHQ6IDI1cHg7XG4gIH1cbiAgLmluZm8ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4O1xuXG4gICAgLnNob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4udmFsaWRpdHktcGVyaW9kLFxuLnNpemUtb2NjdXBhbmN5IHtcbiAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gIGNvbG9yOiAkZ3JleUxpZ2h0O1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLnNpemUtb2NjdXBhbmN5IHtcblxuICA+IGRpdiArIGRpdiB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkZ3JleUxpZ2h0T3JpZ2luYWw7XG4gICAgcGFkZGluZy1sZWZ0OiAuNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC43NXJlbTtcbiAgfVxufVxuLmNvbnRlbnQtYmxvY2stcm9vbXMsXG4uY29udGVudC1ibG9jay1yb29tLW92ZXJ2aWV3IHtcblxuICAudG5zLW91dGVyIHtcblxuICAgIC50bnMtY29udHJvbHMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzMHB4O1xuICAgICAgbGVmdDogMzBweDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB6LWluZGV4OiA1O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRucy1wcm9ncmVzcy1iYXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbGVmdDogNTVweDtcbiAgICAgICAgcmlnaHQ6IDU1cHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuXG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdCh3aWR0aCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5MHB4KXtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB3aWR0aDogNDAlO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudG5zLXByb2dyZXNzLWJhciB7XG4gICAgICAgICAgbGVmdDogMzZweDtcbiAgICAgICAgICByaWdodDogMzZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgUFJJQ0UgVEFCTEVTICAgKioqL1xuLnRhYmxlIHtcblxuICB0ciB7XG5cbiAgICAmLnRyLWV2ZW4ge1xuXG4gICAgfVxuICAgICYudHItb2RkIHtcblxuICAgIH1cbiAgICB0aCwgdGQge1xuICAgICAgcGFkZGluZzogMS43NXJlbSAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGdyZXksIC4yNSk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICAmLmJvcmRlcmxlc3Mge1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5oNCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgICAgJi50ZC1ldmVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JleSwgNzUlKTtcbiAgICAgIH1cbiAgICAgICYudGQtb2RkIHtcblxuICAgICAgfVxuICAgIH1cbiAgICB0aCB7XG5cbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG5cbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRncmV5LCAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnRhYmxlLW5hcnJvdyB7XG4gICAgZm9udC1zaXplOiA4NSU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIGFuZCAobWluLXdpZHRoOiAoJHNtU2NyZWVuKzEpKSB7XG4gICAgICBmb250LXNpemU6IDc1JTtcbiAgICB9XG4gICAgdHIge1xuXG4gICAgICB0aCwgdGQge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICB0aGVhZCB7XG5cbiAgICB0ciB7XG5cbiAgICB9XG4gIH1cbiAgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcblxuICAgIHRyIHtcblxuICAgICAgdGQge1xuXG4gICAgICAgICYucm9vbS1wcmljZSB7XG5cbiAgICAgICAgICAmID4gZGl2ID4gZGl2IHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmVucXVpcnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0UmVndWxhcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgIC5lbnF1aXJ5IHtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5jb250ZW50LWJsb2NrLXJvb20tcHJpY2UtbGlzdCB7XG5cbiAgLnRhYmxlIHtcblxuICAgICYuZGVza3RvcC1wcmljZS10YWJsZSB7XG5cbiAgICAgIHRyIHtcblxuICAgICAgICB0aCwgdGQge1xuXG4gICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JleSwgNzUlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdHIge1xuXG4gICAgICB0aCwgdGQge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICB9XG4gICAgICB0aCB7XG5cbiAgICAgICAgJi5zZWFzb24tbmFtZSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGJvZHkge1xuXG4gICAgICB0ciB7XG5cbiAgICAgICAgdGgsIHRkIHtcblxuICAgICAgICAgICYubm8tYm9yZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5zZXBhcmF0b3Ige1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYucm9vbS1pbmZvIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yb29tLXByZXZpZXcge1xuICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1kU2NyZWVuKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wZXJpb2Qge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzOHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWRTY3JlZW4pIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4c1NjcmVlbikge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBUUkVBVE1FTlRTICAgKioqL1xuLnRyZWF0bWVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmV5TGlnaHRPcmlnaW5hbDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gIC5jYXRlZ29yeSB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgY29sb3I6ICRncmV5TGlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgLmRlc2NyaXB0aW9uLCAucHJpY2VzIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cbiAgLnByaWNlcyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeHNTY3JlZW4pIHtcbiAgICAgIC5kLWJsb2NrLnRleHQtbm93cmFwIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgY29sb3I6ICRncmV5TGlnaHQ7XG4gICAgICB0b3A6IDNweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRhc2hlZC1saW5lIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3R0b206IDRweDtcbiAgICB9XG4gICAgLnByaWNlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udEZqYWxsYTtcblxuICAgICAgZm9udC1zaXplOiAyNHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkeGxTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqKiAgIFBFUlNPTlMgICAqKiovXG4ucGVyc29uIHtcblxuICAuY29udGFjdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlMaWdodE9yaWdpbmFsO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAyLjVyZW0gM3JlbTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG5cbiAgICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioqICAgUFJFU1MgUkVMRUFTRVMgICAqKiovXG4jcHJlc3MtZG93bmxvYWRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZ3JleSwgNzUlKTtcbn1cblxuLyoqKiAgIElOU1BJUkFUSU9OUyAgICoqKi9cbi5pbnNwaXJhdGlvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblxuICA+IGZpZ3VyZSB7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoJGJsYWNrLCAuOSksIHJnYmEoJGJsYWNrLCAuMikpO1xuICAgICAgb3BhY2l0eTogLjY1O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KG9wYWNpdHksIC40cywgZWFzZS1pbi1vdXQpO1xuICAgIH1cbiAgfVxuICA+IC5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgLmluc3BpcmF0aW9uLWlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGgzIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbGdTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4eHNTY3JlZW4pIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mYWN0cyB7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZWZmZWN0KGFsbCk7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsZ1NjcmVlbikge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZhY3RzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0U2VtaUJvbGQ7XG4gICAgY29sb3I6ICRncmV5O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhsU2NyZWVuKSB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR4bFNjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuXG4gICAgPiBmaWd1cmUge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgfVxuICAgIH1cbiAgICAuaW5zcGlyYXRpb24taW5uZXIge1xuXG4gICAgICAuZmFjdHMge1xuICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKiogICBCTE9HIEFSVElDTEUgICAqKiovXG4uYmxvZy1hcnRpY2xlIHtcblxuICBmaWd1cmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgaDMge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGdyZXkgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuLmFkZC10by13YXRjaGxpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjVweDtcbiAgbGVmdDogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gICYubWFya2VkIHtcblxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cbiAgJi5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjI7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbiNtYXJrZWQtb2JqZWN0cyB7XG5cbiAgLm1hcmtlZC1vYmplY3Qge1xuICAgIHdpZHRoOiA5OXB4O1xuICAgIGhlaWdodDogNjZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICsgLm1hcmtlZC1vYmplY3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgIH1cbiAgICAmLmVtcHR5IHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG4gICAgICBAZXh0ZW5kICVpY29tb29uO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeUNvbG9yO1xuICAgICAgcGFkZGluZzogLjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAuMjVyZW0gc29saWQgJHByaW1hcnlDb2xvcjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICY6aG92ZXIge1xuXG4gICAgICAmOm5vdCguZW1wdHkpOjpiZWZvcmUsICY6bm90KC5lbXB0eSk6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cblxuI29iamVjdC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIC44KTtcbiAgei1pbmRleDogMzAwO1xuICBwYWRkaW5nOiA3MHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZFNjcmVlbikge1xuICAgIHBhZGRpbmc6IDM1cHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzU2NyZWVuKSB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxuICAuaW5uZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcblxuICAgIC5pbm5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cbiAgI2Nsb3NlLW9iamVjdC1vdmVybGF5LCAjY2xvc2Utb2JqZWN0LW92ZXJsYXktYm90dG9tLCAjbmF2LW9iamVjdC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGdyZXk7XG4gICAgXG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnlDb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5Q29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIFtjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICBsaW5lLWhlaWdodDogNzBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtU2NyZWVuKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ3NjaGxpZcOfZW4nO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgXG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbVNjcmVlbikge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNjbG9zZS1vYmplY3Qtb3ZlcmxheS1ib3R0b20ge1xuICAgIHRvcDogYXV0bztcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTUwcHg7XG4gICAgYm90dG9tOiAtODBweDtcbiAgfVxuICAjbmF2LW9iamVjdC1vdmVybGF5IHtcbiAgICByaWdodDogOTBweDtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21TY3JlZW4pIHtcbiAgICAgIHJpZ2h0OiA1NXB4O1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGdyZXk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIFxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5Q29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnWmltbWVyIHdlY2hzZWxuJztcbiAgICB9XG4gIH1cbn0iLCIvKioqICAgSU5GTyBCQVIgICAqKiovXG4jaW5mby1iYXIge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5Q29sb3I7XG4gIHotaW5kZXg6IDIwMTtcbn1cblxuLyoqKiAgIElORk8gRElBTE9HICAgKioqL1xuI2luZm8tZGlhbG9nIHtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZ3JleSwgLjgpO1xufVxuI2luZm8tZGlhbG9nLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnlDb2xvcjtcbiAgd2lkdGg6IDkwJTtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbn1cblxuLyoqKiAgIENMT1NFIElORk8gQkFSICYgRElBTE9HICAgKioqL1xuI2Nsb3NlLWluZm8tZGlhbG9nLCAjY2xvc2UtaW5mby1iYXIge1xuICByaWdodDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVmZmVjdChhbGwpO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cbiNjbG9zZS1pbmZvLWRpYWxvZyB7XG4gIHRvcDogMDtcbn1cbiNjbG9zZS1pbmZvLWJhciB7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufSIsIiNjb29raWUtbm90aWNlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5LCAuNik7XG4gIHotaW5kZXg6IDEwMDA7XG5cbiAgYm9keS5pZnJhbWUtY29udGVudCAmIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgPiBkaXYge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG5cbiAgICBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogJHByaW1hcnlDb2xvcjtcbiAgICAgIFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/