@charset "UTF-8";
:root,
[data-bs-theme=light] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --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: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: rgb(5.2, 44, 101.2);
  --bs-secondary-text-emphasis: rgb(43.2, 46.8, 50);
  --bs-success-text-emphasis: rgb(10, 54, 33.6);
  --bs-info-text-emphasis: rgb(5.2, 80.8, 96);
  --bs-warning-text-emphasis: rgb(102, 77.2, 2.8);
  --bs-danger-text-emphasis: rgb(88, 21.2, 27.6);
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: rgb(206.6, 226, 254.6);
  --bs-secondary-bg-subtle: rgb(225.6, 227.4, 229);
  --bs-success-bg-subtle: rgb(209, 231, 220.8);
  --bs-info-bg-subtle: rgb(206.6, 244.4, 252);
  --bs-warning-bg-subtle: rgb(255, 242.6, 205.4);
  --bs-danger-bg-subtle: rgb(248, 214.6, 217.8);
  --bs-light-bg-subtle: rgb(251.5, 252, 252.5);
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: rgb(158.2, 197, 254.2);
  --bs-secondary-border-subtle: rgb(196.2, 199.8, 203);
  --bs-success-border-subtle: rgb(163, 207, 186.6);
  --bs-info-border-subtle: rgb(158.2, 233.8, 249);
  --bs-warning-border-subtle: rgb(255, 230.2, 155.8);
  --bs-danger-border-subtle: rgb(241, 174.2, 180.6);
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, 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-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: rgb(10.4, 88, 202.4);
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: rgb(255, 242.6, 205.4);
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;
  --bs-tertiary-bg: rgb(42.5, 47.5, 52.5);
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: rgb(109.8, 168, 253.8);
  --bs-secondary-text-emphasis: rgb(166.8, 172.2, 177);
  --bs-success-text-emphasis: rgb(117, 183, 152.4);
  --bs-info-text-emphasis: rgb(109.8, 223.2, 246);
  --bs-warning-text-emphasis: rgb(255, 217.8, 106.2);
  --bs-danger-text-emphasis: rgb(234, 133.8, 143.4);
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: rgb(2.6, 22, 50.6);
  --bs-secondary-bg-subtle: rgb(21.6, 23.4, 25);
  --bs-success-bg-subtle: rgb(5, 27, 16.8);
  --bs-info-bg-subtle: rgb(2.6, 40.4, 48);
  --bs-warning-bg-subtle: rgb(51, 38.6, 1.4);
  --bs-danger-bg-subtle: rgb(44, 10.6, 13.8);
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: rgb(7.8, 66, 151.8);
  --bs-secondary-border-subtle: rgb(64.8, 70.2, 75);
  --bs-success-border-subtle: rgb(15, 81, 50.4);
  --bs-info-border-subtle: rgb(7.8, 121.2, 144);
  --bs-warning-border-subtle: rgb(153, 115.8, 4.2);
  --bs-danger-border-subtle: rgb(132, 31.8, 41.4);
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: rgb(109.8, 168, 253.8);
  --bs-link-hover-color: rgb(138.84, 185.4, 254.04);
  --bs-link-color-rgb: 110, 168, 254;
  --bs-link-hover-color-rgb: 139, 185, 254;
  --bs-code-color: rgb(230.4, 132.6, 181.2);
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: rgb(102, 77.2, 2.8);
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: rgb(117, 183, 152.4);
  --bs-form-valid-border-color: rgb(117, 183, 152.4);
  --bs-form-invalid-color: rgb(234, 133.8, 143.4);
  --bs-form-invalid-border-color: rgb(234, 133.8, 143.4);
}

*,
*::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;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

.heading, 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;
  color: var(--bs-heading-color);
}

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] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
          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.1875em;
  color: var(--bs-highlight-color);
  background-color: var(--bs-highlight-bg);
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
  text-decoration: underline;
}
a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

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;
}

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: var(--bs-code-color);
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.1875rem 0.375rem;
  font-size: 0.875em;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
  border-radius: 0.25rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
}

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: var(--bs-secondary-color);
  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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

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;
  line-height: inherit;
  font-size: calc(1.275rem + 0.3vw);
}
@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] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-cancel-button {
  cursor: pointer;
  filter: grayscale(1);
}

/* 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-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-weight: 300;
  line-height: 1.2;
  font-size: calc(1.625rem + 4.5vw);
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.575rem + 3.9vw);
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.525rem + 3.3vw);
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.475rem + 2.7vw);
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.375rem + 1.5vw);
}
@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: "— ";
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  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;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

.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.33333333%;
}

.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.66666667%;
}

.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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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.33333333%;
  }
  .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.66666667%;
  }
  .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-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-emphasis-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-emphasis-color);
  --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
  --bs-table-active-color: var(--bs-emphasis-color);
  --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
  --bs-table-hover-color: var(--bs-emphasis-color);
  --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}

.table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: var(--bs-border-width) 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 var(--bs-border-width);
}

.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-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-striped-columns > :not(caption) > tr > :nth-child(even) {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-active {
  --bs-table-color-state: var(--bs-table-active-color);
  --bs-table-bg-state: var(--bs-table-active-bg);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-color-state: var(--bs-table-hover-color);
  --bs-table-bg-state: var(--bs-table-hover-bg);
}

.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: rgb(206.6, 226, 254.6);
  --bs-table-border-color: rgb(165.28, 180.8, 203.68);
  --bs-table-striped-bg: rgb(196.27, 214.7, 241.87);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(185.94, 203.4, 229.14);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(191.105, 209.05, 235.505);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: rgb(225.6, 227.4, 229);
  --bs-table-border-color: rgb(180.48, 181.92, 183.2);
  --bs-table-striped-bg: rgb(214.32, 216.03, 217.55);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(203.04, 204.66, 206.1);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(208.68, 210.345, 211.825);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000;
  --bs-table-bg: rgb(209, 231, 220.8);
  --bs-table-border-color: rgb(167.2, 184.8, 176.64);
  --bs-table-striped-bg: rgb(198.55, 219.45, 209.76);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(188.1, 207.9, 198.72);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(193.325, 213.675, 204.24);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000;
  --bs-table-bg: rgb(206.6, 244.4, 252);
  --bs-table-border-color: rgb(165.28, 195.52, 201.6);
  --bs-table-striped-bg: rgb(196.27, 232.18, 239.4);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(185.94, 219.96, 226.8);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(191.105, 226.07, 233.1);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: rgb(255, 242.6, 205.4);
  --bs-table-border-color: rgb(204, 194.08, 164.32);
  --bs-table-striped-bg: rgb(242.25, 230.47, 195.13);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(229.5, 218.34, 184.86);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(235.875, 224.405, 189.995);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000;
  --bs-table-bg: rgb(248, 214.6, 217.8);
  --bs-table-border-color: rgb(198.4, 171.68, 174.24);
  --bs-table-striped-bg: rgb(235.6, 203.87, 206.91);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(223.2, 193.14, 196.02);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(229.4, 198.505, 201.465);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: rgb(198.4, 199.2, 200);
  --bs-table-striped-bg: rgb(235.6, 236.55, 237.5);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(223.2, 224.1, 225);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(229.4, 230.325, 231.25);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #212529;
  --bs-table-border-color: rgb(77.4, 80.6, 83.8);
  --bs-table-striped-bg: rgb(44.1, 47.9, 51.7);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(55.2, 58.8, 62.4);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(49.65, 53.35, 57.05);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.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 + var(--bs-border-width));
  padding-bottom: calc(0.375rem + var(--bs-border-width));
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + var(--bs-border-width));
  padding-bottom: calc(0.5rem + var(--bs-border-width));
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + var(--bs-border-width));
  padding-bottom: calc(0.25rem + var(--bs-border-width));
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  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: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::-moz-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  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: var(--bs-secondary-bg);
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: var(--bs-body-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--bs-border-width) 0;
}
.form-control-plaintext:focus {
  outline: 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 + calc(var(--bs-border-width) * 2));
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}
.form-control-sm::file-selector-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 + calc(var(--bs-border-width) * 2));
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
  width: 3rem;
  height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color.form-control-sm {
  height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
.form-control-color.form-control-lg {
  height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-select {
  --bs-form-select-bg-img: 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 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-body-bg);
  background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: rgb(134, 182.5, 254);
  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: var(--bs-secondary-bg);
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 var(--bs-body-color);
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}

[data-bs-theme=dark] .form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.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-reverse {
  padding-right: 1.5em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.5em;
  margin-left: 0;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-form-check-bg);
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: var(--bs-border-width) solid var(--bs-border-color);
  -webkit-print-color-adjust: exact;
          print-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: rgb(134, 182.5, 254);
  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] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' 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 {
  cursor: default;
  opacity: 0.5;
}

.form-switch {
  padding-left: 2.5em;
}
.form-switch .form-check-input {
  --bs-form-switch-bg: 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");
  width: 2em;
  margin-left: -2.5em;
  background-image: var(--bs-form-switch-bg);
  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 {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgb%28134, 182.5, 254%29'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

.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;
}

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 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;
  -webkit-appearance: none;
          appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: rgb(182.4, 211.5, 254.4);
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  -moz-appearance: none;
       appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: rgb(182.4, 211.5, 254.4);
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: var(--bs-secondary-color);
}
.form-range:disabled::-moz-range-thumb {
  background-color: var(--bs-secondary-color);
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
  height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  max-width: 100%;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  color: rgba(var(--bs-body-color-rgb), 0.65);
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  border: var(--bs-border-width) 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,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {
  color: transparent;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.form-floating > .form-control:not(:-moz-placeholder), .form-floating > .form-control-plaintext:not(:-moz-placeholder) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control-plaintext:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.75rem;
}
.form-floating > .form-control:not(:-moz-placeholder) ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-select ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > textarea:not(:-moz-placeholder) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > textarea:focus ~ label::after,
.form-floating > textarea:not(:placeholder-shown) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > textarea:disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}
.form-floating > .form-control-plaintext ~ label {
  border-width: var(--bs-border-width) 0;
}
.form-floating > :disabled ~ label,
.form-floating > .form-control:disabled ~ label {
  color: #6c757d;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus,
.input-group > .form-floating:focus-within {
  z-index: 5;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 5;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
}

.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: var(--bs-border-radius-lg);
}

.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: var(--bs-border-radius-sm);
}

.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):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  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):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
  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: calc(-1 * var(--bs-border-width));
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .form-floating:not(:first-child) > .form-control,
.input-group > .form-floating:not(:first-child) > .form-select {
  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: var(--bs-form-valid-color);
}

.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: #fff;
  background-color: var(--bs-success);
  border-radius: var(--bs-border-radius);
}

.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: var(--bs-form-valid-border-color);
  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='%23198754' d='M2.3 6.73.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.1'/%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: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 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: var(--bs-form-valid-border-color);
}
.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"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.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.1'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  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: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated .form-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

.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: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.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: var(--bs-form-invalid-border-color);
  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='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 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: var(--bs-form-invalid-border-color);
}
.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"] {
  --bs-form-select-bg-icon: 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='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  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: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated .form-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: var(--bs-form-invalid-color);
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: var(--bs-form-invalid-color);
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  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: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}
.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}
.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked:focus-visible + .btn {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(11.05, 93.5, 215.05);
  --bs-btn-hover-border-color: rgb(10.4, 88, 202.4);
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(10.4, 88, 202.4);
  --bs-btn-active-border-color: rgb(9.75, 82.5, 189.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(91.8, 99.45, 106.25);
  --bs-btn-hover-border-color: rgb(86.4, 93.6, 100);
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(86.4, 93.6, 100);
  --bs-btn-active-border-color: rgb(81, 87.75, 93.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #6c757d;
  --bs-btn-disabled-border-color: #6c757d;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(21.25, 114.75, 71.4);
  --bs-btn-hover-border-color: rgb(20, 108, 67.2);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(20, 108, 67.2);
  --bs-btn-active-border-color: rgb(18.75, 101.25, 63);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(49.3, 209.95, 242.25);
  --bs-btn-hover-border-color: rgb(37.2, 207.3, 241.5);
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(61.4, 212.6, 243);
  --bs-btn-active-border-color: rgb(37.2, 207.3, 241.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(255, 202.3, 44.2);
  --bs-btn-hover-border-color: rgb(255, 199.2, 31.8);
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(255, 205.4, 56.6);
  --bs-btn-active-border-color: rgb(255, 199.2, 31.8);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(187, 45.05, 58.65);
  --bs-btn-hover-border-color: rgb(176, 42.4, 55.2);
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(176, 42.4, 55.2);
  --bs-btn-active-border-color: rgb(165, 39.75, 51.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #dc3545;
  --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(210.8, 211.65, 212.5);
  --bs-btn-hover-border-color: rgb(198.4, 199.2, 200);
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(198.4, 199.2, 200);
  --bs-btn-active-border-color: rgb(186, 186.75, 187.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #f8f9fa;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(66.3, 69.7, 73.1);
  --bs-btn-hover-border-color: rgb(55.2, 58.8, 62.4);
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(77.4, 80.6, 83.8);
  --bs-btn-active-border-color: rgb(55.2, 58.8, 62.4);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #212529;
  --bs-btn-disabled-border-color: #212529;
}

.btn-outline-primary {
  --bs-btn-color: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0d6efd;
  --bs-btn-hover-border-color: #0d6efd;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0d6efd;
  --bs-btn-active-border-color: #0d6efd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0d6efd;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0d6efd;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #6c757d;
  --bs-btn-hover-border-color: #6c757d;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #6c757d;
  --bs-btn-active-border-color: #6c757d;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #6c757d;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #0dcaf0;
  --bs-btn-active-border-color: #0dcaf0;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0dcaf0;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0dcaf0;
  --bs-gradient: none;
}

.btn-outline-warning {
  --bs-btn-color: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffc107;
  --bs-btn-hover-border-color: #ffc107;
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffc107;
  --bs-btn-active-border-color: #ffc107;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc107;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc107;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #dc3545;
  --bs-btn-active-border-color: #dc3545;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #dc3545;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #dc3545;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #f8f9fa;
  --bs-btn-hover-border-color: #f8f9fa;
  --bs-btn-focus-shadow-rgb: 248, 249, 250;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #f8f9fa;
  --bs-btn-active-border-color: #f8f9fa;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #f8f9fa;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f8f9fa;
  --bs-gradient: none;
}

.btn-outline-dark {
  --bs-btn-color: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #212529;
  --bs-gradient: none;
}

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}

.btn-sm {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.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,
.dropup-center,
.dropdown-center {
  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 {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 1rem;
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-bg: var(--bs-body-bg);
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: var(--bs-border-radius);
  --bs-dropdown-border-width: var(--bs-border-width);
  --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: var(--bs-box-shadow);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

.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: var(--bs-dropdown-spacer);
}
.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: var(--bs-dropdown-spacer);
}
.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: var(--bs-dropdown-spacer);
}
.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: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  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: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.nav-link.disabled, .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #0d6efd;
}
.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}
.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}
.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-grow: 1;
  flex-basis: 0;
  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;
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-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;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='rgb%285.2, 44, 101.2%29' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.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-collapse,
.accordion-flush > .accordion-item > .accordion-header .accordion-button,
.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28109.8, 168, 253.8%29'%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-.708'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28109.8, 168, 253.8%29'%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-.708'/%3e%3c/svg%3e");
}

.btn-close {
  --bs-btn-close-color: #000;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-btn-close-focus-opacity: 1;
  --bs-btn-close-disabled-opacity: 0.25;
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: var(--bs-btn-close-color);
  background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
  filter: var(--bs-btn-close-filter);
  border: 0;
  border-radius: 0.375rem;
  opacity: var(--bs-btn-close-opacity);
}
.btn-close:hover {
  color: var(--bs-btn-close-color);
  text-decoration: none;
  opacity: var(--bs-btn-close-hover-opacity);
}
.btn-close:focus {
  outline: 0;
  box-shadow: var(--bs-btn-close-focus-shadow);
  opacity: var(--bs-btn-close-focus-opacity);
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: var(--bs-btn-close-disabled-opacity);
}

.btn-close-white {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

:root,
[data-bs-theme=light] {
  --bs-btn-close-filter: ;
}

[data-bs-theme=dark] {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: var(--bs-body-color);
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
  transition: transform 0.3s ease-out;
}
@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% - var(--bs-modal-margin) * 2);
}
.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% - var(--bs-modal-margin) * 2);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0;
}

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-left: auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: var(--bs-modal-title-line-height);
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: var(--bs-modal-padding);
}

.modal-footer {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
  background-color: var(--bs-modal-footer-bg);
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  border-bottom-right-radius: var(--bs-modal-inner-border-radius);
  border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}
.modal-footer > * {
  margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: var(--bs-box-shadow);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-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,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@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,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@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,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@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,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@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,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@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,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  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;
}
.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}
.visually-hidden *,
.visually-hidden-focusable:not(:focus):not(:focus-within) * {
  overflow: hidden !important;
}

.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%;
}

.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;
}

.object-fit-contain {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

.object-fit-cover {
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.object-fit-fill {
  -o-object-fit: fill !important;
     object-fit: fill !important;
}

.object-fit-scale {
  -o-object-fit: scale-down !important;
     object-fit: scale-down !important;
}

.object-fit-none {
  -o-object-fit: none !important;
     object-fit: 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;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-x-visible {
  overflow-x: visible !important;
}

.overflow-x-scroll {
  overflow-x: scroll !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.overflow-y-hidden {
  overflow-y: hidden !important;
}

.overflow-y-visible {
  overflow-y: visible !important;
}

.overflow-y-scroll {
  overflow-y: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-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: var(--bs-box-shadow) !important;
}

.shadow-sm {
  box-shadow: var(--bs-box-shadow-sm) !important;
}

.shadow-lg {
  box-shadow: var(--bs-box-shadow-lg) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.focus-ring-primary {
  --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
  --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
  --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
  --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
  --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
  --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
  --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
  --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.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: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
  border-left: 0 !important;
}

.border-primary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-black {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-primary-subtle {
  border-color: var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle {
  border-color: var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle {
  border-color: var(--bs-success-border-subtle) !important;
}

.border-info-subtle {
  border-color: var(--bs-info-border-subtle) !important;
}

.border-warning-subtle {
  border-color: var(--bs-warning-border-subtle) !important;
}

.border-danger-subtle {
  border-color: var(--bs-danger-border-subtle) !important;
}

.border-light-subtle {
  border-color: var(--bs-light-border-subtle) !important;
}

.border-dark-subtle {
  border-color: var(--bs-dark-border-subtle) !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;
}

.border-opacity-10 {
  --bs-border-opacity: 0.1;
}

.border-opacity-25 {
  --bs-border-opacity: 0.25;
}

.border-opacity-50 {
  --bs-border-opacity: 0.5;
}

.border-opacity-75 {
  --bs-border-opacity: 0.75;
}

.border-opacity-100 {
  --bs-border-opacity: 1;
}

.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;
}

.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;
}

.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;
}

.row-gap-0 {
  row-gap: 0 !important;
}

.row-gap-1 {
  row-gap: 0.25rem !important;
}

.row-gap-2 {
  row-gap: 0.5rem !important;
}

.row-gap-3 {
  row-gap: 1rem !important;
}

.row-gap-4 {
  row-gap: 1.5rem !important;
}

.row-gap-5 {
  row-gap: 3rem !important;
}

.column-gap-0 {
  -moz-column-gap: 0 !important;
       column-gap: 0 !important;
}

.column-gap-1 {
  -moz-column-gap: 0.25rem !important;
       column-gap: 0.25rem !important;
}

.column-gap-2 {
  -moz-column-gap: 0.5rem !important;
       column-gap: 0.5rem !important;
}

.column-gap-3 {
  -moz-column-gap: 1rem !important;
       column-gap: 1rem !important;
}

.column-gap-4 {
  -moz-column-gap: 1.5rem !important;
       column-gap: 1.5rem !important;
}

.column-gap-5 {
  -moz-column-gap: 3rem !important;
       column-gap: 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-lighter {
  font-weight: lighter !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !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: var(--bs-secondary-color) !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-body-secondary {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-body-tertiary {
  --bs-text-opacity: 1;
  color: var(--bs-tertiary-color) !important;
}

.text-body-emphasis {
  --bs-text-opacity: 1;
  color: var(--bs-emphasis-color) !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;
}

.text-primary-emphasis {
  color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
  color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
  color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
  color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
  color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
  color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
  color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
  color: var(--bs-dark-text-emphasis) !important;
}

.link-opacity-10 {
  --bs-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
  --bs-link-opacity: 0.1;
}

.link-opacity-25 {
  --bs-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
  --bs-link-opacity: 0.25;
}

.link-opacity-50 {
  --bs-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
  --bs-link-opacity: 0.5;
}

.link-opacity-75 {
  --bs-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
  --bs-link-opacity: 0.75;
}

.link-opacity-100 {
  --bs-link-opacity: 1;
}

.link-opacity-100-hover:hover {
  --bs-link-opacity: 1;
}

.link-offset-1 {
  text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
  text-underline-offset: 0.125em !important;
}

.link-offset-2 {
  text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
  text-underline-offset: 0.25em !important;
}

.link-offset-3 {
  text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
  text-underline-offset: 0.375em !important;
}

.link-underline-primary {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-secondary {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-success {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-info {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-warning {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-danger {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-light {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-dark {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-underline-opacity-0 {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
  --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
  --bs-link-underline-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-body-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body-tertiary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !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-primary-subtle {
  background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
  background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
  background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
  background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
  background-color: var(--bs-dark-bg-subtle) !important;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
          user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
          user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
          user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-top-1 {
  border-top-left-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
  border-top-left-radius: var(--bs-border-radius-lg) !important;
  border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
  border-top-left-radius: var(--bs-border-radius-xl) !important;
  border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-top-circle {
  border-top-left-radius: 50% !important;
  border-top-right-radius: 50% !important;
}

.rounded-top-pill {
  border-top-left-radius: var(--bs-border-radius-pill) !important;
  border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
  border-top-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
  border-top-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
  border-top-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
  border-top-right-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
  border-top-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-0 {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-bottom-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-bottom-circle {
  border-bottom-right-radius: 50% !important;
  border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
  border-bottom-left-radius: 0 !important;
  border-top-left-radius: 0 !important;
}

.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
  border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
  border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
  border-bottom-left-radius: 50% !important;
  border-top-left-radius: 50% !important;
}

.rounded-start-pill {
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
  border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.z-n1 {
  z-index: -1 !important;
}

.z-0 {
  z-index: 0 !important;
}

.z-1 {
  z-index: 1 !important;
}

.z-2 {
  z-index: 2 !important;
}

.z-3 {
  z-index: 3 !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }
  .float-sm-end {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
  .object-fit-sm-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-sm-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-sm-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-sm-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-sm-none {
    -o-object-fit: none !important;
       object-fit: 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-inline-grid {
    display: inline-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;
  }
  .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;
  }
  .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;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-sm-3 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-sm-5 {
    row-gap: 3rem !important;
  }
  .column-gap-sm-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-sm-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-sm-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-sm-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-sm-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 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;
  }
  .object-fit-md-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-md-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-md-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-md-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-md-none {
    -o-object-fit: none !important;
       object-fit: 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-inline-grid {
    display: inline-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;
  }
  .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;
  }
  .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;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-md-3 {
    row-gap: 1rem !important;
  }
  .row-gap-md-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-md-5 {
    row-gap: 3rem !important;
  }
  .column-gap-md-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-md-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-md-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-md-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-md-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-md-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 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;
  }
  .object-fit-lg-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-lg-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-lg-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-lg-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-lg-none {
    -o-object-fit: none !important;
       object-fit: 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-inline-grid {
    display: inline-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;
  }
  .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;
  }
  .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;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-lg-3 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-lg-5 {
    row-gap: 3rem !important;
  }
  .column-gap-lg-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-lg-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-lg-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-lg-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-lg-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 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;
  }
  .object-fit-xl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xl-none {
    -o-object-fit: none !important;
       object-fit: 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-inline-grid {
    display: inline-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;
  }
  .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;
  }
  .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;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 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;
  }
  .object-fit-xxl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    -o-object-fit: none !important;
       object-fit: 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-inline-grid {
    display: inline-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;
  }
  .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;
  }
  .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;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xxl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xxl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xxl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xxl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xxl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xxl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xxl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xxl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xxl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 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-inline-grid {
    display: inline-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;
  }
}
@font-face {
  font-family: "icomoon";
  src: url("/app/assets/fonts/icomoon/icomoon.eot");
  src: url("/app/assets/fonts/icomoon/icomoon.eot") format("embedded-opentype"), url("/app/assets/fonts/icomoon/icomoon.woff2") format("woff2"), url("/app/assets/fonts/icomoon/icomoon.ttf") format("truetype"), url("/app/assets/fonts/icomoon/icomoon.woff") format("woff"), url("/app/assets/fonts/icomoon/icomoon.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.icomoon {
  font-family: icomoon !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icomoon--search::after {
  content: var(--icon-search);
}
.icomoon--close::after {
  content: var(--icon-close);
}
.icomoon--download::after {
  content: var(--icon-download);
}
.icomoon--document::after {
  content: var(--icon-document);
}
.icomoon--esef-xhtml::after {
  content: var(--icon-esef-xhtml);
}
.icomoon--esef-zip::after {
  content: var(--icon-esef-zip);
}
.icomoon--presentation::after {
  content: var(--icon-presentation);
}
.icomoon--listen::after {
  content: var(--icon-listen);
}
.icomoon--watch::after {
  content: var(--icon-watch);
}
.icomoon--link::after {
  content: var(--icon-link);
}
.icomoon--linkedin::after {
  content: var(--icon-linkedin);
}
.icomoon--youtube::after {
  content: var(--icon-youtube);
}
.icomoon--map-marker::after {
  content: var(--icon-map-marker);
}
.icomoon--globe::after {
  content: var(--icon-globe);
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0px 0px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 1;
}
.hamburger.is-active:hover {
  opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: white;
}

.hamburger-box {
  width: 24px;
  height: 19px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1.5px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 24px;
  height: 3px;
  background-color: white;
  border-radius: 0px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -8px;
}
.hamburger-inner::after {
  bottom: -8px;
}

/*
 * 3DX
 */
.hamburger--3dx .hamburger-box {
  perspective: 48px;
}
.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg);
}
.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DX Reverse
 */
.hamburger--3dx-r .hamburger-box {
  perspective: 48px;
}
.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DY
 */
.hamburger--3dy .hamburger-box {
  perspective: 48px;
}
.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg);
}
.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DY Reverse
 */
.hamburger--3dy-r .hamburger-box {
  perspective: 48px;
}
.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DXY
 */
.hamburger--3dxy .hamburger-box {
  perspective: 48px;
}
.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg);
}
.hamburger--3dxy.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dxy.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DXY Reverse
 */
.hamburger--3dxy-r .hamburger-box {
  perspective: 48px;
}
.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * Arrow
 */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-4.8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-4.8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
 * Arrow Right
 */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(4.8px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(4.8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
 * Arrow Alt
 */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-4.8px, -6px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-4.8px, 6px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
 * Arrow Alt Right
 */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(4.8px, -6px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(4.8px, 6px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
 * Arrow Turn
 */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg);
}
.hamburger--arrowturn.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrowturn.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
 * Arrow Turn Right
 */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
 * Boring
 */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none;
}
.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}
.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Collapse Reverse
 */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Elastic
 */
.hamburger--elastic .hamburger-inner {
  top: 1.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic .hamburger-inner::before {
  top: 8px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic .hamburger-inner::after {
  top: 16px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(-270deg);
  transition-delay: 0.075s;
}

/*
 * Elastic Reverse
 */
.hamburger--elastic-r .hamburger-inner {
  top: 1.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r .hamburger-inner::before {
  top: 8px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic-r .hamburger-inner::after {
  top: 16px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(-135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(270deg);
  transition-delay: 0.075s;
}

/*
 * Emphatic
 */
.hamburger--emphatic {
  overflow: hidden;
}
.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::after {
  top: 8px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}
.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -48px;
  top: -48px;
  transform: translate3d(48px, 48px, 0) rotate(45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -48px;
  top: -48px;
  transform: translate3d(-48px, 48px, 0) rotate(-45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
 * Emphatic Reverse
 */
.hamburger--emphatic-r {
  overflow: hidden;
}
.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::after {
  top: 8px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}
.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -48px;
  top: 48px;
  transform: translate3d(48px, -48px, 0) rotate(-45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -48px;
  top: 48px;
  transform: translate3d(-48px, -48px, 0) rotate(45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
 * Minus
 */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}
.hamburger--minus.is-active .hamburger-inner::before {
  top: 0;
}
.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0;
}

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 1.5px;
}
.hamburger--slider .hamburger-inner::before {
  top: 8px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 16px;
}
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-3.4285714286px, -5px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(-90deg);
}

/*
 * Slider Reverse
 */
.hamburger--slider-r .hamburger-inner {
  top: 1.5px;
}
.hamburger--slider-r .hamburger-inner::before {
  top: 8px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider-r .hamburger-inner::after {
  top: 16px;
}
.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(-45deg);
}
.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(3.4285714286px, -5px, 0);
  opacity: 0;
}
.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(90deg);
}

/*
 * Spin
 */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Spin Reverse
 */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Spring
 */
.hamburger--spring .hamburger-inner {
  top: 1.5px;
  transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
  top: 8px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
  top: 16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important;
}
.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 8px, 0) rotate(-45deg);
}

/*
 * Spring Reverse
 */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}
.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
}
.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Stand
 */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Stand Reverse
 */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Vortex
 */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}
.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
 * Vortex Reverse
 */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}
.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a,
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonIABHeaderViewPartnersLink,
#CybotCookiebotDialog #CybotCookiebotDialogDetailBulkConsentList dt a,
#CybotCookiebotDialog #CybotCookiebotDialogDetailFooter a,
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABDescription a,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieLink,
#CybotCookiebotDialogDetailBodyContentTextAbout a {
  color: var(--link-color) !important;
  text-decoration-line: underline !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  transition: var(--transition);
}
#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a:hover,
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonIABHeaderViewPartnersLink:hover,
#CybotCookiebotDialog #CybotCookiebotDialogDetailBulkConsentList dt a:hover,
#CybotCookiebotDialog #CybotCookiebotDialogDetailFooter a:hover,
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABDescription a:hover,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieLink:hover,
#CybotCookiebotDialogDetailBodyContentTextAbout a:hover {
  text-decoration-thickness: 2px !important;
  color: var(--color-secondary) !important;
}

#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover:hover,
#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentIABv2Tab:hover:hover,
#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieProvider:not(.CybotCookiebotDialogDetailBodyContentCookieInfoCount):hover {
  color: var(--color-secondary) !important;
}

#CybotCookiebotDialog a:hover::after,
#CybotCookiebotDialog a:hover::before,
#CybotCookiebotDialog button:not(#CybotCookiebotDialogBodyButtonDecline, #CybotCookiebotDialogBodyButtonAccept, #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll):hover::after,
#CybotCookiebotDialog button:not(#CybotCookiebotDialogBodyButtonDecline, #CybotCookiebotDialogBodyButtonAccept, #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection, #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll):hover::before {
  border-color: var(--color-secondary) !important;
}

#CybotCookiebotDialog {
  font-family: inherit !important;
  border: 18px solid transparent !important;
}

#CybotCookiebotDialog *,
#CybotCookiebotDialogBodyUnderlay * {
  font-size: 16px !important;
  color: var(--link-color) !important;
}

#CybotCookiebotDialogHeader,
#CybotCookiebotDialogPoweredByText {
  display: none !important;
}

#CybotCookiebotDialogBodyContent {
  letter-spacing: inherit !important;
  line-height: inherit !important;
}

#CybotCookiebotDialogBodyButtonDecline,
#CybotCookiebotDialogBodyButtonAccept,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
  position: relative;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  margin: 0 16px 16px 0 !important;
  padding: 12px 20px !important;
  gap: 8px;
  font-size: 1rem !important;
  font-weight: 500 !important;
  line-height: 1.25rem !important;
  letter-spacing: 0.02em;
  font-family: var(--font-family-base) !important;
  background-color: var(--btn-color) !important;
  border: 1px solid var(--btn-border-color) !important;
  border-radius: var(--border-radius-sm) !important;
  color: var(--btn-after-color) !important;
  text-align: center;
  text-decoration-line: none !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  opacity: 1 !important;
  transition: all var(--transition-duration) ease-in;
}
#CybotCookiebotDialogBodyButtonDecline::before,
#CybotCookiebotDialogBodyButtonAccept::before,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection::before,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll::before {
  content: "" !important;
  position: absolute;
  inset: -4px;
  border: 1px solid transparent !important;
  border-radius: var(--border-radius-md);
  transition: border-color var(--transition-duration) ease-in;
  pointer-events: none;
}
#CybotCookiebotDialogBodyButtonDecline:hover,
#CybotCookiebotDialogBodyButtonAccept:hover,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:hover,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover {
  background-color: var(--btn-color) !important;
  border-color: var(--btn-color) !important;
  color: var(--btn-after-color) !important;
  text-decoration-line: none !important;
}
#CybotCookiebotDialogBodyButtonDecline:hover::before,
#CybotCookiebotDialogBodyButtonAccept:hover::before,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection:hover::before,
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover::before {
  border-color: var(--btn-color) !important;
}

#CybotCookiebotDialogBodyButtonsWrapper,
#CybotCookiebotDialogBodyLevelButtonsWrapper {
  display: flex !important;
  align-items: center !important;
}

#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
  border-color: var(--color-secondary) !important;
  color: var(--text-color) !important;
}

#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink:hover {
  color: var(--color-secondary) !important;
}

#CybotCookiebotDialog input:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
  background-color: var(--color-secondary) !important;
}

#CybotCookiebotDialogBodyLevelButtonsSelectPane label:not([for=CybotCookiebotDialogBodyLevelButtonNecessary]) .CybotCookiebotDialogBodyLevelButtonDescription:hover {
  color: var(--color-secondary) !important;
}

#CybotCookiebotDialog .CybotCookiebotScrollContainer > div:first-of-type:focus {
  scrollbar-color: var(--color-secondary) var(--color-grey) !important;
}

/** base */
:root {
  /* Settings
  ----------------------------------------------------------------------------- */
  --color-black: #000;
  --color-white: #fff;
  --color-grey: #f0f2f4;
  --color-grey-mid: #949494;
  --color-primary: #003057;
  --color-secondary: #46a70b;
  --color-turquoise: #40b195;
  --color-blue: #3d7598;
  --color-teal: #71aeb7;
  --color-gradient: linear-gradient(106deg, #003057 0%, #3D7598 100%);
  --font-family-base: 'Metropolis', sans-serif;
  --font-family-icomoon: icomoon;
  --font-family-icon: var(--font-family-icomoon);
  --font-size: 1rem;
  --font-weight: 400;
  --line-height: 1.25rem;
  --border-radius: 25px;
  --transition-duration: 250ms;
  --transition: all var(--transition-duration) ease-in-out;
  --overlay: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent);
  --header-top-height: 40px;
  --header-main-height: 80px;
  --header-height: calc(var(--header-top-height) + var(--header-main-height));
  --header-z-index: 500;
  --site-header-trigger-size: 36px;
  --section-padding: 4rem;
  --spacing-xxxs: 8px;
  --spacing-xxs: 16px;
  --spacing-xs: 20px;
  --spacing-sm: 24px;
  --spacing-md: 32px;
  --spacing-lg: 40px;
  --spacing-xl: 48px;
  --spacing-xxl: 64px;
  --spacing-xxxl: 80px;
  --spacing-xxxxl: 120px;
  --panel-padding-sm: var(--spacing-xs);
  --panel-padding-md: var(--spacing-md);
  --panel-padding-lg: var(--spacing-xxl);
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --icon-accessibility: "\e900";
  --icon-arrow: "\e901";
  --icon-dot: "\e902";
  --icon-download: "\e903";
  --icon-external: "\e904";
  --icon-link: "\e905";
  --icon-plus: "\e906";
  --icon-search: "\e907";
  --icon-close: "\e908";
  --icon-esef-xhtml: "\e909";
  --icon-esef-zip: "\e90a";
  --icon-document: "\e90b";
  --icon-linkedin: "\e90c";
  --icon-listen: "\e90d";
  --icon-map-marker: "\e90e";
  --icon-globe: "\e913";
  --icon-chevron: "\e914";
  --icon-presentation: "\e915";
  --icon-quotes: "\e916";
  --icon-video: "\e918";
  --icon-watch: "\e919";
  --icon-youtube: "\e91a";
  /* Theme
  ----------------------------------------------------------------------------- */
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  /* Responsive Settings
  ----------------------------------------------------------------------------- */
}
@media (min-width: 1200px) {
  :root {
    --header-height: 120px;
  }
}

html,
body {
  min-height: 100vh;
}

html {
  scroll-padding-top: var(--header-height);
  scroll-behavior: smooth;
}

body {
  display: flex;
  flex-direction: column;
  color: var(--text-color);
  font-size: var(--font-size);
  font-weight: var(--font-weight);
  font-family: var(--font-family-base);
  line-height: var(--line-height);
  letter-spacing: 0.02em;
  overflow-x: clip;
}
body.menu-open {
  overflow: hidden;
}

@font-face {
  font-family: "Metropolis";
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Regular.eot");
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Regular.eot") format("embedded-opentype"), url("/app/assets/fonts/metropolis/woff2/Metropolis-Regular.woff2") format("woff2"), url("/app/assets/fonts/metropolis/woff/Metropolis-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Metropolis";
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Medium.eot");
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Medium.eot") format("embedded-opentype"), url("/app/assets/fonts/metropolis/woff2/Metropolis-Medium.woff2") format("woff2"), url("/app/assets/fonts/metropolis/woff/Metropolis-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Metropolis";
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-SemiBold.eot");
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-SemiBold.eot") format("embedded-opentype"), url("/app/assets/fonts/metropolis/woff2/Metropolis-SemiBold.woff2") format("woff2"), url("/app/assets/fonts/metropolis/woff/Metropolis-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Metropolis";
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Bold.eot");
  src: url("/app/assets/fonts/metropolis/eot/Metropolis-Bold.eot") format("embedded-opentype"), url("/app/assets/fonts/metropolis/woff2/Metropolis-Bold.woff2") format("woff2"), url("/app/assets/fonts/metropolis/woff/Metropolis-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
.background-white {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-primary {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-grey {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey);
  --pill-heading-background: var(--color-white);
  --hr-color: var(--color-grey-mid);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-grey-mid {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey-mid);
  --text-color: var(--color-black);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-secondary {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-secondary);
  --text-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-turquoise {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-turquoise);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-blue {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-blue);
  --chart-color-1: var(--color-primary);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-primary);
  --pagination-btn-color: var(--color-white);
  --pagination-fraction-bg-color: var(--color-primary);
  --pagination-fraction-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-teal {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-teal);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-black {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-black);
  --text-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-gradient {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-gradient);
  background-image: var(--background-color);
  color: var(--text-color);
}

.stat-style {
  display: inline-block;
  font-size: 2.5rem;
  font-weight: 400;
  font-family: var(--font-family-base);
  line-height: 3.125rem;
  letter-spacing: 0;
  color: var(--color-stats);
  font-variant-numeric: tabular-nums;
}
@media (min-width: 992px) {
  .stat-style {
    font-size: 4rem;
    line-height: 5rem;
  }
}

.stat-sm-style {
  font-size: 1rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.25rem;
  color: var(--color-stats);
  margin-bottom: 1.25rem;
}

.hero-large {
  font-size: 3rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 3.9375rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .hero-large {
    font-size: 5rem;
    line-height: 5.5rem;
  }
}

.hero {
  font-size: 3rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 3.9375rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .hero {
    font-size: 4.5rem;
    line-height: 5rem;
  }
}

.heading, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-size: 2.5rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 3.125rem;
  letter-spacing: -0.01em;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .heading, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-size: 3.5rem;
    line-height: 3.9375rem;
  }
}

.subheading {
  font-size: 1.75rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 2.1875rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .subheading {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}

.paragraph-heading {
  font-size: 1.25rem;
  font-weight: 700;
  font-family: var(--font-family-base);
  line-height: 1.5625rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .paragraph-heading {
    font-size: 1.5rem;
    line-height: 1.875rem;
  }
}

.pill-heading {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 8px;
  min-height: 40px;
  font-size: 1rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.25rem;
  color: var(--pill-heading-color);
  background-color: var(--pill-heading-background);
  border-radius: 40px;
  padding: 3px 12px;
  margin-bottom: 1.25rem;
}
.pill-heading::before {
  content: "";
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--color-secondary);
}
@media (min-width: 992px) {
  .pill-heading {
    font-size: 1.25rem;
    line-height: 1.5625rem;
    letter-spacing: -0.02em;
  }
}

.introduction {
  font-size: 1.5rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.875rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .introduction {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}

.lead {
  font-size: 1.25rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.5625rem;
  color: var(--color-heading);
  margin-bottom: 1.25rem;
}

.event-calendar .summary__item-date, .documents--summary .docs-summary__item-date, .documents .table-docs .date, .node-list .card .card-date, .card.press-release-landing-vertical .card-date, .card.press-release-landing .card-date,
.card.press-release-summary .card-date, .banner__date, .small {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1rem;
  margin-bottom: 1.25rem;
}

.stylesheet-page-setting, .stylesheet-page-label, .stylesheet-page__dropdown .form-label, .event-calendar .summary__item-title, .documents--summary .docs-summary__item-title, .mega-menu__link, .pagination-btn, .node-list--press-release-slider .swiper-pagination-fraction, .swiper-carousel .swiper-pagination-fraction, .pagination-fraction, .nav-tabs li .nav-link .tab-text, .nav-tabs li .nav-link, .siteHeader__utility-lang, .siteHeader__utility-link, table thead tr th,
.table thead tr th, label, .button, .biographies__button, .button--link-external, .button--link-download, .button--link, .button--back, .button--external, .button--download, .button--primary, .button--default {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.25rem;
  letter-spacing: 0.02em;
}

.stat-description {
  font-size: 1rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.25rem;
  letter-spacing: 0;
  color: var(--color-stats);
  margin-bottom: 1.25rem;
}

blockquote {
  font-size: 1.25rem;
  font-weight: 400;
  font-family: var(--font-family-base);
  line-height: 1.5625rem;
  color: var(--heading-color);
  margin-bottom: 1.25rem;
}
blockquote p:first-child::before {
  font-family: var(--font-family-icon);
  content: var(--icon-quotes);
  display: block;
  font-size: 16px;
  margin-bottom: 18px;
  color: var(--quote-icon-color);
}
@media (min-width: 768px) {
  blockquote p:first-child::before {
    font-size: 20px;
  }
}
@media (min-width: 992px) {
  blockquote p:first-child::before {
    font-size: 24px;
  }
}
@media (min-width: 992px) {
  blockquote {
    font-size: 1.5rem;
    line-height: 1.75rem;
  }
}

.quote-title {
  font-size: 1.125rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.375rem;
  margin-bottom: 4px;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin-bottom: 1rem;
}

hr {
  border-top-color: var(--hr-color);
  opacity: 1;
}

sub .stat-style,
sup .stat-style {
  font-size: inherit;
  line-height: inherit;
}

ul.inline-list {
  padding: 0;
  list-style-type: none;
}
ul.inline-list li {
  display: inline-block;
  margin-right: var(--spacing-xs);
  margin-bottom: var(--spacing-xxxs);
}

ul.list-cols-2 {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--spacing-xxs);
}
@media (min-width: 768px) {
  ul.list-cols-2 {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: var(--spacing-xxs);
         column-gap: var(--spacing-xxs);
    row-gap: 0;
  }
}

@media (max-width: 991.98px) {
  .quote-image {
    margin-bottom: var(--spacing-sm);
  }
}
.quote-image img {
  border-radius: 8px;
}

input[type=text]:focus-visible,
textarea:focus-visible,
select:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible,
.form-check-input:focus-visible, a:focus-visible {
  outline: none;
  outline: -webkit-focus-ring-color auto 1px;
  box-shadow: none;
  background: transparent;
  color: inherit;
}

/* Anchors
----------------------------------------------------------------------------- */
a {
  color: var(--link-color);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-color: var(--link-color);
  transition: var(--transition-duration);
}
a:hover {
  text-decoration-thickness: 2px;
}

/* Buttons
----------------------------------------------------------------------------- */
.button--back, .button--external, .button--download, .button--primary, .button--default {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  height: auto;
  padding: 12px 20px;
  gap: 8px;
  background-color: var(--btn-color);
  border: 1px solid var(--btn-border-color);
  color: var(--btn-after-color);
  width: -moz-fit-content;
  width: fit-content;
  border-radius: var(--border-radius-sm);
  position: relative;
  transition: all var(--transition-duration) ease-in;
}
.button--back::before, .button--external::before, .button--download::before, .button--primary::before, .button--default::before {
  content: "";
  position: absolute;
  inset: -4px;
  border: 1px solid transparent;
  border-radius: var(--border-radius-md);
  transition: border-color var(--transition-duration) ease-in;
  pointer-events: none;
}
.button--back::after, .button--external::after, .button--download::after, .button--primary::after, .button--default::after {
  font-family: var(--font-family-icomoon);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.button--back:hover, .button--external:hover, .button--download:hover, .button--primary:hover, .button--default:hover {
  background-color: var(--btn-color);
  border-color: var(--btn-color);
  color: var(--btn-after-color);
}
.button--back:hover::before, .button--external:hover::before, .button--download:hover::before, .button--primary:hover::before, .button--default:hover::before {
  border-color: var(--btn-color);
}

.biographies__button, .button--link-external, .button--link-download, .button--link {
  background-color: transparent;
  padding: 0;
  padding-left: 40px;
  min-height: 32px;
  color: var(--btn-link-color);
  text-decoration: none;
  width: -moz-fit-content;
  width: fit-content;
  border: none;
  border-radius: 0;
  transition: all var(--transition-duration), text-decoration-color var(--transition-duration), text-decoration-thickness var(--transition-duration);
  display: inline-flex;
  align-items: center;
  position: relative;
  text-decoration-line: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
}
.biographies__button::after, .button--link-external::after, .button--link-download::after, .button--link::after {
  content: var(--icon-arrow);
  font-family: var(--font-family-icomoon);
  font-size: 16px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: var(--btn-link-icon-bg-color);
  color: var(--btn-link-icon-color);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-duration);
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.biographies__button:hover, .button--link-external:hover, .button--link-download:hover, .button--link:hover {
  text-decoration-color: var(--btn-link-color);
  text-decoration-thickness: 2px;
}

.button--primary::after {
  content: var(--icon-arrow);
  font-size: 16px;
}
.button--download::after {
  content: var(--icon-download);
  font-size: 18px;
}
.button--external::after {
  content: var(--icon-external);
  font-size: 14px;
}
.button--link-download::after {
  content: var(--icon-download);
  font-size: 18px;
}
.button--link-external::after {
  content: var(--icon-external);
  font-size: 14px;
}
.button--back::after {
  content: var(--icon-arrow);
  font-size: 16px;
  transform: scaleX(-1);
  order: -1;
}

input[type=text],
textarea,
select,
.form-control,
.form-select,
.form-check-input {
  display: block;
  width: 100%;
  border: 1px solid var(--form-input-border-color);
  border-radius: var(--border-radius-sm);
  height: 48px;
  background-color: var(--form-input-background);
  color: var(--form-input-color);
  padding: var(--spacing-xxxs) var(--spacing-xs);
  font-size: var(--font-size);
}
input[type=text]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder, .form-control::-moz-placeholder, .form-select::-moz-placeholder, .form-check-input::-moz-placeholder {
  color: var(--form-input-color);
  font-style: normal;
}
input[type=text]::placeholder,
textarea::placeholder,
select::placeholder,
.form-control::placeholder,
.form-select::placeholder,
.form-check-input::placeholder {
  color: var(--form-input-color);
  font-style: normal;
}

input[type=file] {
  display: block;
}

textarea, textarea.form-control {
  height: auto;
  min-height: 124px;
}

select,
.form-select {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxOSAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggaWQ9IlZlY3RvciA2IiBkPSJNMS41IDFMOS41IDlMMTcuNSAxIiBzdHJva2U9IiM3Njc2NzYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPgo=");
  background-position: right 20px center;
  padding-right: var(--spacing-lg);
  background-repeat: no-repeat;
}

.form-select-wrapper {
  position: relative;
}
.form-select-wrapper .form-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: none;
  padding-right: var(--spacing-lg);
}
.form-select-wrapper::after {
  content: var(--icon-chevron);
  font-family: var(--font-family-icon);
  font-size: 1rem;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--form-input-color);
}

label {
  display: block;
  margin-bottom: 16px;
}

.form-group.captcha {
  margin-bottom: 1rem;
}

table,
.table {
  --bs-table-bg: transparent;
  --bs-table-striped-bg: transparent;
  --bs-table-hover-bg: transparent;
  --bs-table-active-bg: transparent;
  --bs-table-color: var(--text-color);
  --bs-table-border-color: var(--table-border-color);
  --bs-border-color: var(--table-border-color);
  width: 100%;
  border: 0;
}
table thead tr, table tbody tr,
.table thead tr,
.table tbody tr {
  border-top: 1px solid var(--table-border-color);
}
table thead tr:last-child, table tbody tr:last-child,
.table thead tr:last-child,
.table tbody tr:last-child {
  border-bottom: 2px solid var(--table-border-color);
}
table thead tr td, table thead tr th, table tbody tr td, table tbody tr th,
.table thead tr td,
.table thead tr th,
.table tbody tr td,
.table tbody tr th {
  padding: var(--spacing-xxs) var(--spacing-sm) var(--spacing-xxs) 0;
}
table thead tr td:last-child, table thead tr th:last-child, table tbody tr td:last-child, table tbody tr th:last-child,
.table thead tr td:last-child,
.table thead tr th:last-child,
.table tbody tr td:last-child,
.table tbody tr th:last-child {
  padding-right: 0;
}
table thead tr p:last-child, table tbody tr p:last-child,
.table thead tr p:last-child,
.table tbody tr p:last-child {
  margin-bottom: 0;
}
table thead tr a .icomoon, table tbody tr a .icomoon,
.table thead tr a .icomoon,
.table tbody tr a .icomoon {
  color: var(--heading-color);
}
table thead tr,
.table thead tr {
  border-bottom: 2px solid var(--table-border-color);
  border-top: 0;
}
table.table--equal-width,
.table.table--equal-width {
  table-layout: fixed;
  width: 100% !important;
}
table.table--equal-width th, table.table--equal-width td,
.table.table--equal-width th,
.table.table--equal-width td {
  width: auto;
}
table.table--valign-middle th, table.table--valign-middle td,
.table.table--valign-middle th,
.table.table--valign-middle td {
  vertical-align: middle;
}
table td.table, table th.table,
.table td.table,
.table th.table {
  width: auto !important;
}

@media (max-width: 991.98px) {
  .table--scroll {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}

@media (max-width: 767.98px) {
  .table--stack {
    border: 0;
  }
  .table--stack thead {
    display: none;
  }
  .table--stack tbody {
    border-top-width: 2px;
  }
  .table--stack tr {
    border-bottom-width: 2px;
  }
  .table--stack .cell-title {
    float: left;
    font-weight: 700;
    text-align: left;
  }
  .table--stack td {
    display: block;
    text-align: right;
  }
}
@media (max-width: 575.98px) {
  .table--stack-sm {
    border: 0;
  }
  .table--stack-sm thead {
    display: none;
  }
  .table--stack-sm tbody {
    border-top-width: 2px;
  }
  .table--stack-sm tr {
    border-bottom-width: 2px;
  }
  .table--stack-sm .cell-title {
    float: left;
    font-weight: 700;
    text-align: left;
  }
  .table--stack-sm td {
    display: block;
    text-align: right;
  }
}
@media (max-width: 991.98px) {
  .table--stack-lg {
    border: 0;
  }
  .table--stack-lg thead {
    display: none;
  }
  .table--stack-lg tbody {
    border-top-width: 2px;
  }
  .table--stack-lg tr {
    border-bottom-width: 2px;
  }
  .table--stack-lg .cell-title {
    float: left;
    font-weight: 700;
    text-align: left;
  }
  .table--stack-lg td {
    display: block;
    text-align: right;
  }
}
@media (max-width: 1199.98px) {
  .table--stack-xl {
    border: 0;
  }
  .table--stack-xl thead {
    display: none;
  }
  .table--stack-xl tbody {
    border-top-width: 2px;
  }
  .table--stack-xl tr {
    border-bottom-width: 2px;
  }
  .table--stack-xl .cell-title {
    float: left;
    font-weight: 700;
    text-align: left;
  }
  .table--stack-xl td {
    display: block;
    text-align: right;
  }
}
@media (max-width: 1399.98px) {
  .table--stack-xxl {
    border: 0;
  }
  .table--stack-xxl thead {
    display: none;
  }
  .table--stack-xxl tbody {
    border-top-width: 2px;
  }
  .table--stack-xxl tr {
    border-bottom-width: 2px;
  }
  .table--stack-xxl .cell-title {
    float: left;
    font-weight: 700;
    text-align: left;
  }
  .table--stack-xxl td {
    display: block;
    text-align: right;
  }
}
img {
  height: auto;
  max-width: 100%;
}

/** elements */
.siteHeader {
  height: var(--header-height);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: var(--header-z-index);
  transition: all var(--transition-duration);
  border-bottom: 1px solid var(--color-grey-mid);
}
.siteHeader__section {
  position: relative;
}
.siteHeader__section-inner {
  display: flex;
  align-items: center;
  gap: 30px;
}
.siteHeader__section--top {
  border-bottom: 1px solid var(--color-grey-mid);
}
.siteHeader__section--top ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.siteHeader__section--top p {
  margin: 0;
}
.siteHeader__section--top .siteHeader__section-inner {
  display: flex;
  height: var(--header-top-height);
  justify-content: end;
}
.siteHeader__section--main .siteHeader__section-inner {
  height: var(--header-main-height);
  justify-content: flex-start;
}
.siteHeader__col--menu {
  margin-left: auto;
  position: relative;
  align-self: stretch;
  display: flex;
  align-items: center;
}
.siteHeader__logo {
  height: 32px;
  width: auto;
}
.siteHeader--scrolled {
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
}
.siteHeader__utility-nav {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
}
.siteHeader__utility-link {
  position: relative;
  display: inline-block;
  color: var(--color-primary);
  text-decoration: none;
}
.siteHeader__utility-link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--color-primary);
  opacity: 0;
  transition: opacity var(--transition-duration);
}
.siteHeader__utility-link:hover::before {
  opacity: 1;
}
.siteHeader__utility-divider {
  width: 1px;
  height: 16px;
  background-color: var(--border-color);
}
.siteHeader__utility-lang {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text-color);
  background: transparent;
  border: 0;
  padding: 0;
}
.siteHeader__utility-lang .icon-chev-down {
  font-family: var(--font-family-icomoon);
  font-size: 12px;
}
.siteHeader__utility-lang .icon-chev-down::before {
  content: var(--icon-chevron);
}
.siteHeader__utility-lang-toggle {
  display: inline-flex;
  align-items: center;
}
.siteHeader__utility-lang-icon {
  margin-right: 6px;
  font-size: 1.25rem;
}

.siteHeader-search__btn {
  width: var(--site-header-trigger-size);
  height: var(--site-header-trigger-size);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--color-primary);
  font-size: 1.2rem;
  background: none;
  border: 2px solid var(--color-primary);
  border-radius: 50%;
  text-decoration: none;
}
.siteHeader-search__btn:hover, .siteHeader-search__btn:focus-visible {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.siteHeader-search__btn:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.siteHeader-search__btn--toggle[aria-expanded=true] .icomoon--search::after {
  content: var(--icon-close);
}
.siteHeader-search__btn--submit {
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--color-primary);
  font-size: 1.5rem;
  transition: var(--transition-duration);
}
.siteHeader-search__btn--submit:hover, .siteHeader-search__btn--submit:focus-visible {
  background-color: transparent;
  color: var(--color-primary);
  transform: scale(1.1);
}
.siteHeader-search__btn--submit:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.siteHeader-search__bar {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 1px;
  z-index: 5;
  display: flex;
  align-items: center;
  padding: 0 var(--spacing-xs);
  border-bottom: 1px solid var(--color-grey-mid);
}
@media (max-width: 1199.98px) {
  .siteHeader-search__bar {
    position: fixed;
    top: var(--header-height);
    left: 0;
    right: 0;
    bottom: auto;
    z-index: var(--header-z-index);
    padding: var(--spacing-sm);
    border-bottom: none;
  }
}
.siteHeader-search__bar-inner {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: var(--spacing-sm);
}
.siteHeader-search__bar .form-group {
  display: flex;
  align-items: center;
}
.siteHeader-search__bar form {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: var(--spacing-xxxs);
  width: 100%;
}
.siteHeader-search__bar form input {
  height: calc(var(--header-main-height) * 0.5);
}

main {
  flex: 1 0 auto;
  padding-top: var(--header-height);
}

.skip-main {
  position: absolute;
  z-index: 600;
  left: 0;
  top: 0;
  transition: none;
}

.error, .error-message {
  color: var(--error-message-color);
  font-size: 14px;
}

.section {
  position: relative;
  padding-block: var(--section-padding);
}

.banner {
  position: relative;
}
.banner__date {
  margin-bottom: var(--spacing-xxs);
}
.banner picture {
  display: block;
}
.banner picture img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: 0;
}
.banner__overlay {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: var(--overlay);
}
.banner--default picture,
.banner--default picture img,
.banner--default video,
.banner--default .banner__media--video-embed {
  height: 100%;
}
.banner--default .section {
  position: relative;
  z-index: 2;
}
.banner--default .section.banner__section--no-image {
  padding-bottom: 0;
}
.banner--default .banner__media {
  position: relative;
  z-index: 3;
}
.banner--default .container .banner__media img,
.banner--default .container video,
.banner--default .container .banner__media--video-embed {
  border-radius: var(--border-radius-md);
}
.banner--default .banner__article-image .banner__media,
.banner--default .banner__article-image .banner__media img {
  height: auto;
  aspect-ratio: 3/2;
}
.banner--default .banner__image-wrapper {
  position: relative;
  height: 450px;
}
.banner--default video {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.banner--default .banner__media--poster {
  position: absolute;
  inset: 0;
  z-index: 3;
}
.banner--default .banner__media--video-embed {
  position: absolute;
  inset: 0;
  z-index: 4;
  overflow: hidden;
}
.banner--default .banner__media--video-embed iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
  border: 0;
  transform: translate(-50%, -50%);
}
.banner__image-wrapper--bottom-padding {
  padding-bottom: var(--section-padding);
}
.banner__gradient {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to bottom, var(--color-grey) 0%, var(--color-grey) calc(100% - 450px), transparent calc(100% - 225px), transparent 100%);
}
.banner--home {
  height: calc((100vh - var(--header-height)) * 0.8);
  min-height: 450px;
}
.banner--home picture,
.banner--home picture img,
.banner--home video,
.banner--home .banner__media--video-embed {
  height: 100%;
}
.banner--home video {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.banner--home .banner__media--poster {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.banner--home .banner__media--video-embed {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
}
.banner--home .banner__media--video-embed iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
  border: 0;
  transform: translate(-50%, -50%);
}
.banner--home .banner__overlay {
  z-index: 2;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 49.97%, rgba(0, 0, 0, 0.7) 94.55%), linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
}
.banner--home .banner__content {
  --text-color: var(--color-white);
  --heading-color: var(--color-white);
  --color-heading: var(--color-white);
  color: var(--text-color);
}
@media (min-width: 992px) {
  .banner--home .banner__content {
    max-width: 66.667%;
  }
}

.breadcrumb {
  background-color: transparent;
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px;
  line-height: 1;
  margin-bottom: var(--spacing-sm);
  padding: 0;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.02em;
}
.breadcrumb li {
  display: inline-flex;
  align-items: center;
}
.breadcrumb li + li::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: currentColor;
  margin: 0 8px;
  vertical-align: middle;
}
.breadcrumb a {
  position: relative;
  color: inherit;
  text-decoration: none;
}
.breadcrumb a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background-color: currentColor;
  opacity: 0;
  transition: opacity var(--transition-duration);
}
.breadcrumb a:hover::after {
  opacity: 1;
}

.breadcrumbs.hidden {
  opacity: 0;
  transition: var(--transition);
}

.accordion {
  --bs-accordion-color: inherit;
  --bs-accordion-btn-color: inherit;
  --bs-accordion-active-color: inherit;
  --bs-accordion-active-bg: transparent;
  --bs-accordion-bg: transparent;
  position: relative;
}
.accordion-item {
  background-color: transparent;
  border-radius: 0 !important;
  border: 0 solid var(--accordion-border-color);
  border-top-width: 1px !important;
  border-bottom-width: 1px;
  transition: var(--transition);
}
.accordion-item .accordion-body {
  padding: 0;
}
.accordion-item .accordion-body--inner {
  padding: var(--spacing-sm);
}
.accordion-item .accordion-body--inner img {
  width: 100%;
}
.accordion-item .accordion-header {
  border-radius: 0;
}
.accordion-item .accordion-header button {
  background-color: transparent;
  border-radius: 0;
  box-shadow: none;
  padding: var(--spacing-sm) 12px;
}
.accordion-item .accordion-header button:focus-visible {
  outline: 2px solid var(--accordion-icon-background);
  outline-offset: -2px;
}
.accordion-item .accordion-header button .paragraph-heading {
  margin-bottom: 0;
  padding: 12px;
  max-width: calc(100% - 48px - 12px);
}
.accordion-item .accordion-header button::after {
  content: var(--icon-close);
  font-family: var(--font-family-icomoon);
  background-image: none;
  font-weight: 700;
  transform: none;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--accordion-icon-background);
  border-radius: 50%;
  background-color: transparent;
  text-decoration: none;
  font-size: 24px;
  color: var(--accordion-icon-background);
  line-height: 1;
  flex-shrink: 0;
  transition: var(--transition);
}
.accordion-item .accordion-header button:hover::after {
  border-color: var(--accordion-icon-background);
  background-color: var(--accordion-icon-background);
  color: var(--accordion-icon-color);
}
.accordion-item .accordion-header button:not(.collapsed)::after {
  border-color: var(--accordion-icon-background);
  background-color: var(--accordion-icon-background);
  color: var(--accordion-icon-color);
}
.accordion-item .accordion-header button:not(.collapsed):hover::after {
  border-color: var(--accordion-icon-background);
  background-color: transparent;
  color: var(--accordion-icon-background);
}
.accordion-item .accordion-header button.collapsed::after {
  transform: rotate(45deg);
}

.nav-tabs--dropdown {
  display: flex;
  width: 100%;
  border: none;
  border-radius: 0;
  padding: 0;
  margin-bottom: var(--spacing-lg);
}
.nav-tabs--dropdown .dropdown-toggle {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--tab-border-color);
  border-radius: 80px;
  color: var(--tab-color);
  font-weight: 700;
  padding: 18px 3rem 18px 16px;
  display: flex;
  align-items: center;
  background-color: var(--tab-bg-color);
  white-space: normal;
  transition: var(--transition);
  position: relative;
}
.nav-tabs--dropdown .dropdown-toggle .dropdown-toggle-label {
  min-width: 0;
  flex: 1 1 auto;
  overflow-wrap: anywhere;
}
.nav-tabs--dropdown .dropdown-toggle:after {
  font-family: var(--font-family-icomoon);
  content: var(--icon-chevron);
  display: block;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.375rem;
  border: 0;
  margin: 0;
  transition: var(--transition);
}
.nav-tabs--dropdown .dropdown-toggle:hover {
  background-color: var(--tab-bg-color-active);
  border-color: var(--tab-border-color-active);
  color: var(--tab-color-active);
}
.nav-tabs--dropdown .dropdown-menu {
  --bs-dropdown-link-hover-color: var(--text-color);
  --bs-dropdown-link-active-color: var(--text-color);
  --bs-dropdown-link-hover-bg: transparent;
  --bs-dropdown-link-active-bg: transparent;
  border: 1px solid var(--border-color);
  padding: 4px 0;
  margin-top: 4px !important;
  border-radius: var(--border-radius);
  overflow: hidden;
  max-width: calc(100vw - 2rem);
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item {
  padding: 0;
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 0.75rem 1rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--text-color);
  text-align: left;
  white-space: normal;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
  transition: var(--transition);
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a .tab-text,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button .tab-text {
  margin: 0;
  padding: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a:hover, .nav-tabs--dropdown .dropdown-menu .dropdown-item a.active,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button:hover,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button.active {
  text-decoration-color: var(--border-color);
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a:hover .tab-text, .nav-tabs--dropdown .dropdown-menu .dropdown-item a.active .tab-text,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button:hover .tab-text,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button.active .tab-text {
  color: var(--text-color);
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a.active,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button.active {
  background-color: var(--tab-bg-color-active);
  color: var(--tab-color-active);
}
.nav-tabs--dropdown .dropdown-menu .dropdown-item a.active .tab-text,
.nav-tabs--dropdown .dropdown-menu .dropdown-item button.active .tab-text {
  color: var(--tab-color-active);
}
.nav-tabs--dropdown {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
.nav-tabs--dropdown .dropdown-toggle {
  width: auto;
}

.siteHeader__utility-lang .dropdown-toggle {
  border: 0;
  background: transparent;
  padding-inline: 0;
}
.siteHeader__utility-lang .dropdown-item.active {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.tab-body--inner img {
  margin-bottom: var(--spacing-md);
  border-radius: var(--border-radius-md);
}

.nav-tabs {
  border: 1px solid var(--tab-border-color);
  border-radius: 80px;
  padding: 4px;
  display: inline-flex;
  gap: 4px;
  margin-bottom: var(--spacing-lg);
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
.nav-tabs li {
  margin-right: 0;
  border: none;
}
.nav-tabs li .nav-link {
  display: inline-flex;
  align-items: center;
  height: 56px;
  border: none;
  color: var(--tab-color);
  border-radius: 80px;
  background-color: var(--tab-bg-color);
  padding: var(--spacing-xxxs) var(--spacing-sm);
  transition: var(--transition);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.nav-tabs li .nav-link .tab-text {
  padding: 0;
  margin: 0;
  color: var(--tab-color);
}
.nav-tabs li .nav-link.active {
  background-color: var(--tab-bg-color-active);
  color: var(--tab-color-active);
}
.nav-tabs li .nav-link.active .tab-text {
  color: var(--tab-color-active);
}
.nav-tabs li .nav-link:hover:not(.active) {
  text-decoration-color: var(--tab-color);
  text-decoration-thickness: 2px;
}
.nav-tabs .dropdown-menu {
  --bs-dropdown-zindex: 499;
}
@media (max-width: 991.98px) {
  .nav-tabs {
    display: flex;
    width: 100%;
    border: none;
    border-radius: 0;
    padding: 0;
    margin-bottom: var(--spacing-lg);
  }
  .nav-tabs .dropdown-toggle {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--tab-border-color);
    border-radius: 80px;
    color: var(--tab-color);
    font-weight: 700;
    padding: 18px 3rem 18px 16px;
    display: flex;
    align-items: center;
    background-color: var(--tab-bg-color);
    white-space: normal;
    transition: var(--transition);
    position: relative;
  }
  .nav-tabs .dropdown-toggle .dropdown-toggle-label {
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: anywhere;
  }
  .nav-tabs .dropdown-toggle:after {
    font-family: var(--font-family-icomoon);
    content: var(--icon-chevron);
    display: block;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.375rem;
    border: 0;
    margin: 0;
    transition: var(--transition);
  }
  .nav-tabs .dropdown-toggle:hover {
    background-color: var(--tab-bg-color-active);
    border-color: var(--tab-border-color-active);
    color: var(--tab-color-active);
  }
  .nav-tabs .dropdown-menu {
    --bs-dropdown-link-hover-color: var(--text-color);
    --bs-dropdown-link-active-color: var(--text-color);
    --bs-dropdown-link-hover-bg: transparent;
    --bs-dropdown-link-active-bg: transparent;
    border: 1px solid var(--border-color);
    padding: 4px 0;
    margin-top: 4px !important;
    border-radius: var(--border-radius);
    overflow: hidden;
    max-width: calc(100vw - 2rem);
  }
  .nav-tabs .dropdown-menu .dropdown-item {
    padding: 0;
  }
  .nav-tabs .dropdown-menu .dropdown-item a,
  .nav-tabs .dropdown-menu .dropdown-item button {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    padding: 0.75rem 1rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--text-color);
    text-align: left;
    white-space: normal;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 4px;
    transition: var(--transition);
  }
  .nav-tabs .dropdown-menu .dropdown-item a .tab-text,
  .nav-tabs .dropdown-menu .dropdown-item button .tab-text {
    margin: 0;
    padding: 0;
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .nav-tabs .dropdown-menu .dropdown-item a:hover, .nav-tabs .dropdown-menu .dropdown-item a.active,
  .nav-tabs .dropdown-menu .dropdown-item button:hover,
  .nav-tabs .dropdown-menu .dropdown-item button.active {
    text-decoration-color: var(--border-color);
  }
  .nav-tabs .dropdown-menu .dropdown-item a:hover .tab-text, .nav-tabs .dropdown-menu .dropdown-item a.active .tab-text,
  .nav-tabs .dropdown-menu .dropdown-item button:hover .tab-text,
  .nav-tabs .dropdown-menu .dropdown-item button.active .tab-text {
    color: var(--text-color);
  }
  .nav-tabs .dropdown-menu .dropdown-item a.active,
  .nav-tabs .dropdown-menu .dropdown-item button.active {
    background-color: var(--tab-bg-color-active);
    color: var(--tab-color-active);
  }
  .nav-tabs .dropdown-menu .dropdown-item a.active .tab-text,
  .nav-tabs .dropdown-menu .dropdown-item button.active .tab-text {
    color: var(--tab-color-active);
  }
  .nav-tabs {
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
  }
  .nav-tabs .dropdown-toggle {
    width: auto;
  }
}
@media (min-width: 992px) {
  .nav-tabs:not(.nav-tabs--dropdown) .dropdown-menu {
    --bs-dropdown-link-hover-bg: transparent;
    --bs-dropdown-link-active-bg: transparent;
    background: transparent;
    position: relative;
    display: flex;
    padding: 0;
    border: 0;
    margin: 0;
    flex-wrap: nowrap;
    max-width: 100%;
    gap: 0.5rem;
  }
  .nav-tabs:not(.nav-tabs--dropdown) .dropdown-menu .dropdown-item {
    padding: 0;
    width: auto;
    min-width: 0;
    white-space: normal;
  }
  .nav-tabs:not(.nav-tabs--dropdown) .dropdown-toggle {
    display: none;
  }
  .nav-tabs:not(.nav-tabs--dropdown) li .nav-link {
    display: flex;
    width: 100%;
    height: auto;
    min-height: 56px;
  }
}

.modal--map .btn-close, .content-list--scrolling-cards__nav-btn, .node-list--press-release-slider .swiper-button-prev,
.node-list--press-release-slider .swiper-button-next, .swiper-carousel .swiper-button-prev,
.swiper-carousel .swiper-button-next, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev, .pagination-btn-next, .pagination-btn-prev {
  width: 40px;
  height: 40px;
  border: 1px solid transparent;
  border-radius: 50%;
  background-color: var(--pagination-btn-bg-color, var(--color-primary));
  color: var(--pagination-btn-color, var(--color-white));
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-duration);
}
.modal--map .btn-close:hover, .content-list--scrolling-cards__nav-btn:hover, .node-list--press-release-slider .swiper-button-prev:hover,
.node-list--press-release-slider .swiper-button-next:hover, .swiper-carousel .swiper-button-prev:hover,
.swiper-carousel .swiper-button-next:hover, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next:hover, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev:hover, .pagination-btn-next:hover, .pagination-btn-prev:hover, .modal--map .btn-close:focus-visible, .content-list--scrolling-cards__nav-btn:focus-visible, .node-list--press-release-slider .swiper-button-prev:focus-visible,
.node-list--press-release-slider .swiper-button-next:focus-visible, .swiper-carousel .swiper-button-prev:focus-visible,
.swiper-carousel .swiper-button-next:focus-visible, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next:focus-visible, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev:focus-visible, .pagination-btn-next:focus-visible, .pagination-btn-prev:focus-visible {
  background-color: transparent;
  border-color: var(--pagination-btn-bg-color, var(--color-primary));
  color: var(--pagination-btn-bg-color, var(--color-primary));
}
.modal--map .btn-close:focus-visible, .content-list--scrolling-cards__nav-btn:focus-visible, .node-list--press-release-slider .swiper-button-prev:focus-visible,
.node-list--press-release-slider .swiper-button-next:focus-visible, .swiper-carousel .swiper-button-prev:focus-visible,
.swiper-carousel .swiper-button-next:focus-visible, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next:focus-visible, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev:focus-visible, .pagination-btn-next:focus-visible, .pagination-btn-prev:focus-visible {
  outline: 2px solid var(--pagination-btn-bg-color, var(--color-primary));
  outline-offset: 2px;
}
.modal--map .btn-close::before, .content-list--scrolling-cards__nav-btn::before, .node-list--press-release-slider .swiper-button-prev::before,
.node-list--press-release-slider .swiper-button-next::before, .swiper-carousel .swiper-button-prev::before,
.swiper-carousel .swiper-button-next::before, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next::before, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev::before, .pagination-btn-next::before, .pagination-btn-prev::before {
  font-family: var(--font-family-icon);
  color: inherit;
}
.content-list--scrolling-cards__nav-btn--prev::before, .mixitup-pagination-container .mixitup-page-list .mixitup-control-prev::before, .pagination-btn-prev::before {
  content: var(--icon-arrow);
  transform: scaleX(-1);
}
.content-list--scrolling-cards__nav-btn--next::before, .mixitup-pagination-container .mixitup-page-list .mixitup-control-next::before, .pagination-btn-next::before {
  content: var(--icon-arrow);
}
.content-list--scrolling-cards__nav-btn:disabled, .mixitup-pagination-container .mixitup-page-list .mixitup-control-disabled {
  opacity: 0.3;
  pointer-events: none;
}

.node-list--press-release-slider .swiper-pagination-fraction, .swiper-carousel .swiper-pagination-fraction, .pagination-fraction {
  display: inline-flex;
  align-items: center;
  height: 40px;
  padding: 10px 20px;
  border-radius: 40px;
  background-color: var(--pagination-fraction-bg-color, var(--color-primary));
  color: var(--pagination-fraction-color, var(--color-white));
  box-sizing: border-box;
  font-variant-numeric: tabular-nums;
}
.node-list--press-release-slider .swiper-pagination-fraction .swiper-pagination-current, .swiper-carousel .swiper-pagination-fraction .swiper-pagination-current, .pagination-fraction .swiper-pagination-current,
.node-list--press-release-slider .swiper-pagination-fraction .swiper-pagination-total,
.swiper-carousel .swiper-pagination-fraction .swiper-pagination-total,
.pagination-fraction .swiper-pagination-total,
.node-list--press-release-slider .swiper-pagination-fraction span:first-child,
.swiper-carousel .swiper-pagination-fraction span:first-child,
.pagination-fraction span:first-child,
.node-list--press-release-slider .swiper-pagination-fraction span:last-child,
.swiper-carousel .swiper-pagination-fraction span:last-child,
.pagination-fraction span:last-child {
  display: inline-block;
  min-width: 2ch;
  text-align: center;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  list-style-type: none;
  flex-wrap: wrap;
}
.pagination-btn {
  padding: 0 6px;
  text-decoration: none;
  color: var(--pagination-btn-color, var(--color-black));
}
.pagination-btn.active {
  text-decoration: underline;
}

.pagination-fraction {
  margin-bottom: 0;
}

.mixitup-pagination-container {
  padding-top: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.mixitup-pagination-container .pagination-fraction {
  order: 2;
}
.mixitup-pagination-container .mixitup-page-list {
  display: contents;
}
.mixitup-pagination-container .mixitup-page-list .mixitup-control:not(.mixitup-control-prev):not(.mixitup-control-next) {
  display: none;
}
.mixitup-pagination-container .mixitup-page-list .mixitup-control-prev {
  order: 1;
}
.mixitup-pagination-container .mixitup-page-list .mixitup-control-next {
  order: 3;
}
.swiper-carousel .swiper {
  overflow-x: hidden;
  overflow-y: visible;
}
.swiper-carousel .swiper-wrapper {
  align-items: stretch;
}
.swiper-carousel .swiper-slide {
  height: auto;
  display: flex;
  flex-direction: column;
}
.swiper-carousel__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-xl);
}
.swiper-carousel__header-content {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
}
.swiper-carousel__header-content .paragraph-heading {
  margin-bottom: 0;
}
.swiper-carousel__nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.swiper-carousel .swiper-button-prev,
.swiper-carousel .swiper-button-next {
  position: static !important;
  top: auto !important;
  margin: 0 !important;
  width: 40px !important;
  height: 40px !important;
  flex-shrink: 0;
  align-self: center;
}
.swiper-carousel .swiper-button-prev svg,
.swiper-carousel .swiper-button-next svg {
  display: none;
}
.swiper-carousel .swiper-button-prev::after,
.swiper-carousel .swiper-button-next::after {
  content: var(--icon-arrow);
  font-family: var(--font-family-icon);
  font-size: 1rem;
}
.swiper-carousel .swiper-button-prev::after {
  transform: scaleX(-1);
}
.swiper-carousel .swiper-pagination {
  position: static !important;
  width: auto !important;
}
.swiper-carousel .swiper-pagination-fraction {
  position: static !important;
  width: auto !important;
  bottom: auto !important;
  left: auto !important;
  top: auto !important;
  margin: 0 !important;
  transform: none !important;
  flex-shrink: 0;
  align-self: center;
  margin-bottom: 0 !important;
}

.card:focus-visible {
  outline: none;
}
.card:focus-visible .button {
  outline: 2px solid var(--btn-color);
  outline-offset: -2px;
}
.card-img {
  overflow: hidden;
  border-radius: var(--border-radius-md);
  margin-bottom: var(--spacing-sm);
}
.card-img img {
  width: 100%;
}
.card-img:has(+ .card-body.panel) {
  border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
}
.card-body {
  display: flex;
  flex-direction: column;
  padding: 0;
}
.card-body p:last-of-type {
  margin-bottom: 0;
}
.card-body .card-link {
  display: inline-block;
  margin-top: 1rem;
}
.card .card-img + .card-body.panel {
  border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
}

.card--vertical .card-body.panel {
  padding: var(--panel-padding-sm);
}

.card--horizontal .card-body {
  justify-content: center;
}
@media (min-width: 992px) {
  .card--horizontal {
    display: grid;
    grid-template-columns: 6fr 1fr 5fr;
    align-items: stretch;
  }
  .card--horizontal .card-img {
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 0;
  }
  .card--horizontal .card-img img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .card--horizontal .card-img:has(+ .card-body.panel) {
    border-radius: var(--border-radius-md) 0 0 var(--border-radius-md);
  }
  .card--horizontal .card-body {
    grid-column: 3;
    grid-row: 1;
  }
  .card--horizontal .card-img + .card-body.panel {
    border-radius: 0 var(--border-radius-md) var(--border-radius-md) 0;
  }
}
@media (min-width: 992px) {
  .card--horizontal:has(.card-body.panel) {
    display: grid;
    grid-template-columns: 6fr 6fr;
  }
  .card--horizontal:has(.card-body.panel) .card-body {
    grid-column: 2;
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--offset-image {
    grid-template-columns: 1fr 2fr;
    gap: var(--spacing-md);
  }
  .card--horizontal.card--offset-image .card-body {
    grid-column: 2;
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--offset-image:has(.card-body.panel) {
    grid-template-columns: 4fr 8fr;
    gap: 0;
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--flipped {
    grid-template-columns: 5fr 1fr 6fr;
  }
  .card--horizontal.card--flipped .card-img {
    grid-column: 3;
  }
  .card--horizontal.card--flipped .card-body {
    grid-column: 1;
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--flipped:has(.card-body.panel) {
    grid-template-columns: 6fr 6fr;
  }
  .card--horizontal.card--flipped:has(.card-body.panel) .card-img {
    grid-column: 2;
    border-radius: 0 var(--border-radius-md) var(--border-radius-md) 0;
  }
  .card--horizontal.card--flipped:has(.card-body.panel) .card-body {
    grid-column: 1;
  }
  .card--horizontal.card--flipped:has(.card-body.panel) .card-body.panel {
    border-radius: var(--border-radius-md) 0 0 var(--border-radius-md);
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--flipped.card--offset-image {
    grid-template-columns: 2fr 1fr;
    gap: var(--spacing-md);
  }
  .card--horizontal.card--flipped.card--offset-image .card-img {
    grid-column: 2;
  }
}
@media (min-width: 992px) {
  .card--horizontal.card--flipped.card--offset-image:has(.card-body.panel) {
    grid-template-columns: 8fr 4fr;
    gap: 0;
  }
}

@media (min-width: 992px) {
  .container-fluid [class*=col]:has(> .card), .container-sm [class*=col]:has(> .card), .container-md [class*=col]:has(> .card), .container-lg [class*=col]:has(> .card), .container-xl [class*=col]:has(> .card), .container-xxl [class*=col]:has(> .card) {
    padding-left: 0;
    padding-right: 0;
  }
}

.card-body.panel {
  padding: var(--panel-padding-lg);
  justify-content: center;
  border-radius: var(--border-radius-md);
}
@media (max-width: 767.98px) {
  .card-body.panel {
    padding: var(--panel-padding-sm);
  }
}

.card-img:has(+ .card-body.panel) {
  margin-bottom: 0;
}

.card.search {
  display: flex;
  gap: 30px;
  border-bottom: 1px solid var(--color-grey);
  padding-bottom: 15px;
}
.card.search .description {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 767.98px) {
  .card.search {
    flex-direction: column;
  }
}

.panel {
  flex: 1;
  padding: var(--panel-padding-md);
  border-radius: var(--border-radius-md);
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey);
  --pill-heading-background: var(--color-white);
  --hr-color: var(--color-grey-mid);
  background-color: var(--background-color);
  color: var(--text-color);
}
@media (max-width: 767.98px) {
  .panel {
    padding: var(--panel-padding-sm);
  }
}
.panel.background-primary {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
}
.panel.background-grey {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey);
  --pill-heading-background: var(--color-white);
  --hr-color: var(--color-grey-mid);
  background-color: var(--background-color);
  color: var(--text-color);
}
.panel.background-white {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.panel.background-gradient {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-gradient);
  background-image: var(--background-color);
  color: var(--text-color);
}
.panel.background-teal {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-teal);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.panel.background-turquoise {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-turquoise);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.panel .richText:last-of-type p:last-of-type {
  margin-bottom: 0;
}
.panel:has(.spacer--grow) {
  display: flex;
  flex-direction: column;
}
.panel:has(.spacer--grow) .row {
  flex: 1;
}
.panel:has(.spacer--grow) .row > * {
  display: flex;
  flex-direction: column;
}

.background-primary .panel,
.background-gradient .panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

.background-grey .panel:not(.background-primary, .background-white, .background-gradient, .background-teal, .background-turquoise) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}

*:has(> .panel) {
  display: flex;
  flex-direction: column;
}

.related-pages .paragraph-heading {
  margin-bottom: var(--spacing-sm);
}
.related-pages .card.related {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.related-pages .card.related .card-body {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.related-pages .card.related .card-body.panel {
  padding: var(--spacing-sm);
}
.related-pages .card.related .card-title {
  margin-bottom: var(--spacing-xxs);
}
.related-pages .card.related .card-arrow {
  display: inline-flex;
  margin-top: auto;
  color: var(--color-heading);
  transition: transform var(--transition-duration);
}
.related-pages .card.related .card-arrow::after {
  content: var(--icon-arrow);
  font-family: var(--font-family-icomoon);
  font-size: 1.25rem;
}
.related-pages .card.related:hover .card-arrow {
  transform: translateX(10px);
}
.related-pages .cards {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}
@media (min-width: 992px) {
  .related-pages .cards {
    flex-direction: row;
    gap: 0;
  }
}
.related-pages .cards > div:nth-of-type(3n+1) .card-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-turquoise);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.related-pages .cards > div:nth-of-type(3n+2) .card-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-teal);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.related-pages .cards > div:nth-of-type(3n) .card-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-blue);
  --chart-color-1: var(--color-primary);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-primary);
  --pagination-btn-color: var(--color-white);
  --pagination-fraction-bg-color: var(--color-primary);
  --pagination-fraction-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --color-heading: var(--color-white);
}

.site-popup .btn-close {
  position: absolute;
  top: var(--spacing-md);
  right: var(--spacing-md);
  display: block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  opacity: 1;
  font-size: 24px;
  transition: var(--transition);
}
.site-popup .btn-close:hover {
  transform: scale(1.1);
}
.site-popup .modal-content {
  position: relative;
}
.site-popup .modal-content-inner {
  padding: 4rem 4rem 3rem;
}
@media (max-width: 767.98px) {
  .site-popup .modal-content-inner {
    padding: var(--spacing-md);
  }
}
.site-popup .modal-dialog {
  max-width: clamp(300px, 100vw - 30px, 900px);
}

footer {
  padding: 3rem 0;
}
footer .footer-main__logo {
  max-width: 186px;
  margin-bottom: 42px;
}
footer .registered-text {
  gap: 4px;
}
footer .nav {
  flex-direction: column;
  gap: var(--spacing-xxs);
  margin-bottom: var(--spacing-xxs);
}
footer .social-links {
  gap: 18px;
}
footer .social-links a {
  text-decoration: none;
  transition: var(--transition);
}
footer .social-links a:hover {
  color: var(--color-secondary);
}
footer .social-links .icomoon {
  font-size: 32px;
}

/** blocks */
.video-block {
  position: relative;
  aspect-ratio: 16/9;
  border-radius: var(--border-radius-md);
  overflow: hidden;
}
.video-block video,
.video-block iframe,
.video-block .ratio {
  height: 100%;
  width: 100%;
  display: none;
}
.video-block .image-container {
  position: absolute;
  inset: 0;
  display: none;
  transition: all var(--transition-duration) linear;
}
.video-block .image-container img,
.video-block .image-container video {
  height: 100%;
  width: 100%;
  cursor: pointer;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.video-block .image-container button {
  position: absolute;
  width: 80px;
  height: 80px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--color-white);
  border-radius: 50%;
  z-index: 3;
  cursor: pointer;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition);
}
.video-block .image-container button:hover {
  width: 96px;
  height: 96px;
}
.video-block .image-container button::after {
  content: "";
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 20px solid var(--color-primary);
  margin-left: 4px;
}
.video-block .image-container button:focus-visible {
  box-shadow: 0 0 0 0.25rem var(--color-white);
}
.video-block .image-container.active {
  display: block;
}

.chart-block {
  container-type: inline-size;
}
.chart-block__canvas-wrapper {
  position: relative;
  width: 100%;
  max-width: 300px;
  aspect-ratio: 1/1;
}
.chart-block__canvas {
  display: block;
}
.chart-block__featured {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin: 1.5rem 0;
}
.chart-block__featured-label {
  margin-bottom: 0;
}
.chart-block__key {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 1.5rem 0 0;
  padding: 0;
  list-style: none;
}
.chart-block__key-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.chart-block__key-color {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid var(--border-color);
}
.chart-block__bars {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.chart-block__bar-row {
  display: contents;
}
.chart-block__bar-title {
  font-weight: 700;
}
.chart-block__bar-track {
  position: relative;
  width: 100%;
  height: 32px;
}
.chart-block__bar-fill {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  min-width: -moz-max-content;
  min-width: max-content;
  padding: 0 0.75rem;
  border-radius: 4px;
  box-sizing: border-box;
  background-color: var(--chart-bar-main);
  color: var(--chart-bar-main-color);
  transform-origin: left center;
}
.chart-block__bar-fill--negative {
  justify-content: flex-start;
  transform-origin: right center;
}
.chart-block--diverging .chart-block__bar-fill {
  position: absolute;
  top: 0;
}
.chart-block.is-visible .chart-block__bar-fill {
  animation: chart-bar-grow 1.6s cubic-bezier(0.1, 0.9, 0.2, 1) both;
  animation-delay: var(--bar-delay, 0s);
}
.chart-block__bar-value {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

@keyframes chart-bar-grow {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .chart-block.is-visible .chart-block__bar-fill {
    animation: none;
  }
}
.section--double-column-padding .row {
  --bs-gutter-x: 3rem;
}

.filter__form {
  margin-bottom: var(--spacing-sm);
}
.filter__form .row {
  --bs-gutter-x: var(--spacing-sm);
  --bs-gutter-y: var(--spacing-sm);
}
.filter__grid {
  --bs-gutter-x: var(--spacing-sm);
  --bs-gutter-y: var(--spacing-sm);
}
.filter__grid .card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.filter__grid .card .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.filter__grid .card .button {
  margin-top: auto;
}
@media (min-width: 992px) {
  .filter__grid .card.card--horizontal {
    display: grid;
  }
}

.mixitup-pagination-container {
  margin-top: var(--spacing-sm);
}

.card.press-release-landing,
.card.press-release-summary {
  color: inherit;
  text-decoration: none;
}
.card.press-release-landing .card-img,
.card.press-release-summary .card-img {
  margin-top: var(--spacing-xl);
  margin-bottom: 0;
  border-radius: var(--border-radius-md);
  overflow: hidden;
}
.card.press-release-landing .card-img img,
.card.press-release-summary .card-img img {
  transition: var(--transition);
}
.card.press-release-landing .card-body.panel,
.card.press-release-summary .card-body.panel {
  padding: var(--panel-padding-md);
  border-radius: var(--border-radius-md);
}
@media (max-width: 767.98px) {
  .card.press-release-landing .card-body.panel,
  .card.press-release-summary .card-body.panel {
    padding: var(--panel-padding-sm);
  }
}
.card.press-release-landing .card-body.panel:has(+ .card-img),
.card.press-release-summary .card-body.panel:has(+ .card-img) {
  border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
}
.card.press-release-landing .card-body.panel + .card-img,
.card.press-release-summary .card-body.panel + .card-img {
  margin-top: 0;
  border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
}
.card.press-release-landing .card-date,
.card.press-release-summary .card-date {
  display: block;
  margin-bottom: var(--spacing-xxxs);
}
.card.press-release-landing .card-title,
.card.press-release-summary .card-title {
  margin-bottom: var(--spacing-sm);
}
.card.press-release-landing:hover .card-img img,
.card.press-release-summary:hover .card-img img {
  transform: scale(1.05);
}
.card.press-release-landing:hover .button--link,
.card.press-release-landing:hover .button--link-download,
.card.press-release-landing:hover .button--link-external,
.card.press-release-summary:hover .button--link,
.card.press-release-summary:hover .button--link-download,
.card.press-release-summary:hover .button--link-external {
  text-decoration-color: var(--btn-link-color);
  text-decoration-thickness: 2px;
}

.card.press-release-landing-vertical {
  color: inherit;
  text-decoration: none;
}
.card.press-release-landing-vertical .card-img {
  overflow: hidden;
}
.card.press-release-landing-vertical .card-img img {
  transition: var(--transition);
}
.card.press-release-landing-vertical .card-date {
  display: block;
  margin-bottom: var(--spacing-xxxs);
}
.card.press-release-landing-vertical .card-title {
  margin-bottom: var(--spacing-sm);
}
@media (min-width: 992px) {
  .card.press-release-landing-vertical {
    grid-template-columns: 4fr 1fr 7fr;
  }
  .card.press-release-landing-vertical .card-img img {
    height: auto;
    aspect-ratio: 3/2;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media (min-width: 992px) {
  .card.press-release-landing-vertical:has(.card-body.panel) {
    grid-template-columns: 1fr 2fr;
  }
}
.card.press-release-landing-vertical:hover .card-img img {
  transform: scale(1.05);
}
.card.press-release-landing-vertical:hover .button--link,
.card.press-release-landing-vertical:hover .button--link-download,
.card.press-release-landing-vertical:hover .button--link-external {
  text-decoration-color: var(--btn-link-color);
  text-decoration-thickness: 2px;
}

.filter__grid .card.press-release-landing-vertical .button {
  margin-top: 0;
}

.node-list__title {
  margin-bottom: var(--spacing-lg);
}

.node-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-lg) var(--spacing-sm);
}
@media (min-width: 768px) {
  .node-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .node-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 992px) {
  .node-list--two-col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .node-list--four-col {
    grid-template-columns: repeat(4, 1fr);
  }
}
.node-list .card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
}
.node-list .card .card-img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 3/2;
  margin-bottom: var(--spacing-md);
  border-radius: var(--border-radius-md);
}
.node-list .card .card-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 0;
  transition: var(--transition);
}
.node-list .card .card-img:has(+ .card-body.panel) {
  margin-bottom: 0;
  border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
}
.node-list .card .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.node-list .card .card-body.panel {
  padding: var(--panel-padding-sm);
  border-radius: var(--border-radius-md);
}
.node-list .card .card-img + .card-body.panel {
  border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
}
.node-list .card .card-date {
  display: block;
}
.node-list .card .card-title {
  margin-bottom: var(--spacing-xxs);
}
.node-list .card .description {
  margin-bottom: var(--spacing-lg);
}
.node-list .card .button {
  margin-top: auto;
}
.node-list .card:hover .card-img img {
  transform: scale(1.05);
}
.node-list .card:hover .button--link,
.node-list .card:hover .button--link-download,
.node-list .card:hover .button--link-external {
  text-decoration-color: var(--btn-link-color);
  text-decoration-thickness: 2px;
}

.node-list--press-release-slider .swiper {
  overflow-x: hidden;
  overflow-y: visible;
}
.node-list--press-release-slider .swiper-wrapper {
  align-items: stretch;
}
.node-list--press-release-slider .swiper-slide {
  height: auto;
  display: flex;
  flex-direction: column;
}
.node-list--press-release-slider .card {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.node-list--press-release-slider .card .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.node-list--press-release-slider .card .button {
  margin-top: auto;
}
.node-list--press-release-slider__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-xl);
}
.node-list--press-release-slider__header-content {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
}
.node-list--press-release-slider__header-content .paragraph-heading {
  margin-bottom: 0;
}
.node-list--press-release-slider__nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.node-list--press-release-slider .swiper-button-prev,
.node-list--press-release-slider .swiper-button-next {
  position: static !important;
  top: auto !important;
  margin: 0 !important;
  width: 40px !important;
  height: 40px !important;
  flex-shrink: 0;
  align-self: center;
}
.node-list--press-release-slider .swiper-button-prev svg,
.node-list--press-release-slider .swiper-button-next svg {
  display: none;
}
.node-list--press-release-slider .swiper-button-prev::after,
.node-list--press-release-slider .swiper-button-next::after {
  content: var(--icon-arrow);
  font-family: var(--font-family-icon);
  font-size: 1rem;
}
.node-list--press-release-slider .swiper-button-prev::after {
  transform: scaleX(-1);
}
.node-list--press-release-slider .swiper-pagination {
  position: static !important;
  width: auto !important;
}
.node-list--press-release-slider .swiper-pagination-fraction {
  position: static !important;
  width: auto !important;
  bottom: auto !important;
  left: auto !important;
  top: auto !important;
  margin: 0 !important;
  transform: none !important;
  flex-shrink: 0;
  align-self: center;
  margin-bottom: 0 !important;
}

.node-list--swiper .card {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.node-list--swiper .card .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.node-list--swiper .card .button {
  margin-top: auto;
}

.biographies {
  --biogs-img-padding-top: 30px;
  --biogs-collapse-padding-y: var(--spacing-lg);
  --biogs-icon-color: var(--border-color);
  --biogs-icon-bg: transparent;
  --biogs-icon-border-color: var(--border-color);
  --biogs-icon-border-color-chair: var(--border-color);
}
.biographies__col {
  display: flex;
  flex-direction: column;
  margin-block: 30px;
}
.biographies__committees {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.biographies__committees--key {
  gap: 30px;
  flex-direction: column;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .biographies__committees--key {
    flex-direction: row;
  }
}
.biographies__committee {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
}
.biographies__committee-icon {
  content: attr(data-icon);
  width: 30px;
  height: 30px;
  background-color: var(--biogs-icon-bg);
  color: var(--biogs-icon-color);
  border: 1px solid var(--biogs-icon-border-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
  line-height: 1;
  font-weight: 600;
}
.biographies__committee--chair .biographies__committee-icon {
  background: var(--biogs-icon-bg-chair);
  color: var(--biogs-icon-color-chair);
  border-color: var(--biogs-icon-border-color-chair);
}
.biographies__committee-name {
  color: var(--text-color);
}
.biographies__image {
  margin-bottom: var(--spacing-xxs);
  overflow: hidden;
  border-radius: var(--border-radius-md);
}
.biographies__image img {
  width: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--border-radius-md);
  transition: var(--transition);
}
.biographies__position {
  margin-bottom: var(--spacing-xxs);
}
.biographies__member {
  flex: 1;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}
.biographies__member .biographies__info {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.biographies__member:hover .biographies__image img {
  transform: scale(1.05);
}
.biographies__member:hover .biographies__button::before {
  height: 2px;
  opacity: 1;
}
.biographies__member--active .biographies__button::before {
  height: 2px;
  opacity: 1;
}
.biographies__member--active .biographies__button::after {
  content: var(--icon-close);
}
.biographies__button {
  margin-top: 1rem;
}
.biographies__button .close {
  display: none;
}
.biographies__button::after {
  content: var(--icon-plus);
  font-size: 20px;
}
.biographies__button-container {
  margin-top: auto;
  margin-right: auto;
}
.biographies--collapse .biographies__overlay-inner {
  position: relative;
  padding: var(--spacing-lg);
  border-radius: var(--border-radius);
}
.biographies--collapse .biographies__overlay-close {
  position: absolute;
  top: 15px;
  right: 34px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background-color: transparent;
  font-size: 1.5rem;
}
.biographies--collapse .biographies__overlay .biographies__position {
  margin-bottom: 30px;
}
.biographies--collapse .biographies__image img {
  width: auto;
  max-width: 100%;
}

.modal--biogs .btn-close {
  position: absolute;
  top: 64px;
  right: 64px;
  display: block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  opacity: 1;
  font-size: 24px;
  transition: var(--transition);
}
@media (max-width: 767.98px) {
  .modal--biogs .btn-close {
    top: var(--spacing-md);
    right: var(--spacing-md);
  }
}
.modal--biogs .btn-close:hover {
  transform: scale(1.1);
}
.modal--biogs .modal-content {
  position: relative;
}
.modal--biogs .modal-content-inner {
  padding: 64px;
}
@media (max-width: 767.98px) {
  .modal--biogs .modal-content-inner {
    padding: var(--spacing-md);
  }
}
.modal--biogs .biographies__image {
  margin-bottom: 1rem;
}
.modal--biogs .biographies__image img {
  border-radius: var(--border-radius);
  aspect-ratio: 1/1;
}
@media (max-width: 767.98px) {
  .modal--biogs .biographies__image img {
    max-width: 250px;
  }
}
.modal--biogs .biographies__position {
  margin-bottom: 24px;
}
@media (min-width: 576px) {
  .modal--biogs .modal-dialog {
    max-width: clamp(300px, 100vw - 30px, 1296px);
  }
}

.hamburger-menu {
  position: relative;
  height: var(--header-main-height);
  display: flex;
  align-items: center;
}
.hamburger-menu ul {
  margin: 0;
  list-style: none;
  padding: 0;
}
.hamburger-menu .hamburger {
  display: grid;
  margin-left: auto;
}
.hamburger-menu .hamburger .hamburger-inner,
.hamburger-menu .hamburger .hamburger-inner::before,
.hamburger-menu .hamburger .hamburger-inner::after {
  background-color: var(--color-primary);
}
.hamburger-menu__menu {
  display: none;
  position: fixed;
  top: var(--header-height);
  left: 0;
  width: 100vw;
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
  z-index: var(--header-z-index);
}
.hamburger-menu__menu-wrapper {
  height: 100%;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
.hamburger-menu__level--1 > .hamburger-menu__item > .hamburger-menu__link {
  padding-left: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
}
.hamburger-menu__level ul {
  overflow: hidden;
  height: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.05);
}
.hamburger-menu__level ul .hamburger-menu__link {
  padding-left: 2rem;
  font-size: 1rem;
  font-weight: 500;
}
.hamburger-menu__level ul ul .hamburger-menu__link {
  padding-left: 3rem;
}
.hamburger-menu__level ul ul ul .hamburger-menu__link {
  padding-left: 4rem;
}
.hamburger-menu__item {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}
.hamburger-menu__item--section > .hamburger-menu__link, .hamburger-menu__item--current > .hamburger-menu__link {
  border-left-color: var(--color-secondary);
}
.hamburger-menu__item--submenu-active > .hamburger-menu__button::before {
  transform: rotate(0deg);
}
.hamburger-menu__link {
  flex: 1;
  display: block;
  color: var(--text-color);
  height: 50px;
  line-height: 50px;
  padding-left: 1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  border-left: 4px solid transparent;
  transition: border-color var(--transition-duration) ease-in-out;
}
.hamburger-menu__link:hover {
  text-decoration: none;
  border-left-color: var(--color-secondary);
}
.hamburger-menu__button {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: var(--text-color);
  cursor: pointer;
  font-family: var(--font-family-icomoon);
  font-size: 1.25rem;
  transition: background-color var(--transition-duration) ease-in-out, color var(--transition-duration) ease-in-out;
}
.hamburger-menu__button::before {
  content: var(--icon-close);
  transform: rotate(45deg);
  transition: transform var(--transition-duration) ease-in-out;
}
.hamburger-menu__button:hover {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.hamburger-menu__utility {
  flex-shrink: 0;
}
.hamburger-menu__utility-nav > .hamburger-menu__item > .hamburger-menu__link {
  font-size: 1.125rem;
  font-weight: 700;
}
.hamburger-menu__search-toggle {
  display: block;
  width: 100%;
  text-align: left;
  color: var(--text-color);
  height: 50px;
  line-height: 50px;
  padding-left: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: none;
  border: none;
  border-left: 4px solid transparent;
  cursor: pointer;
  transition: border-color var(--transition-duration) ease-in-out;
}
.hamburger-menu__search-toggle:hover {
  border-left-color: var(--color-secondary);
}

.mega-menu {
  position: relative;
  display: flex;
  align-items: center;
}
.mega-menu .hamburger {
  display: grid;
  margin-left: auto;
}
.mega-menu__level {
  list-style: none;
  padding: 0;
  margin: 0;
}
.mega-menu__level > li > ul {
  display: none;
}
.mega-menu__level--2, .mega-menu__level--3 {
  padding-top: 4.9375rem;
}
.mega-menu__level--2 {
  position: relative;
}
.mega-menu__item--section > .mega-menu__link::before, .mega-menu__item--current > .mega-menu__link::before, .mega-menu__item--submenu-active > .mega-menu__link::before {
  opacity: 1;
}
.mega-menu__item--submenu {
  display: flex;
  align-items: center;
}
.mega-menu__item--title {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.mega-menu__link {
  position: relative;
  display: inline-block;
  color: var(--color-primary);
  text-decoration: none;
  transition: padding-left var(--transition-duration);
}
.mega-menu__link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--color-primary);
  opacity: 0;
  transition: opacity var(--transition-duration);
}
.mega-menu__link:hover::before {
  opacity: 1;
}
.mega-menu__link--btn {
  background: none;
  border: 0;
  padding: 0;
  font-family: inherit;
  cursor: pointer;
}
.mega-menu__link--title {
  font-size: 1.25rem;
  font-weight: 700;
  font-family: var(--font-family-base);
  line-height: 1.5625rem;
  color: var(--color-heading);
  display: block;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .mega-menu__link--title {
    font-size: 1.5rem;
    line-height: 1.875rem;
  }
}
.mega-menu__divider {
  border: 0;
  border-top: 1px solid var(--color-grey-mid);
  margin: var(--spacing-sm) 0;
}
.mega-menu__close {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: var(--spacing-xxxs);
  width: var(--site-header-trigger-size);
  height: var(--site-header-trigger-size);
  transition: var(--transition);
  background: none;
  border: none;
  padding: 0;
  font-size: 24px;
  cursor: pointer;
}
.mega-menu__close:hover {
  transform: scale(1.1);
}
.mega-menu__submenu {
  display: none;
  position: fixed;
  top: var(--header-height);
  left: 0;
  width: 100vw;
  padding: var(--spacing-lg) 0;
  opacity: 0;
  visibility: hidden;
  z-index: 10;
  background-color: var(--color-white);
}
.mega-menu__submenu-wrapper {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4rem;
}
.mega-menu__submenu-wrapper .mega-menu__column--info img {
  width: 100%;
  border-radius: var(--border-radius);
}
.mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__link::before,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__link::before,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__link::before {
  width: 4px;
  height: 38px;
  border-radius: 2px;
  background-color: var(--color-secondary);
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__link:hover,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__link:hover,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__link:hover {
  padding-left: var(--spacing-sm);
}
.mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__link:not(.mega-menu__link--title),
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__link:not(.mega-menu__link--title),
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__link:not(.mega-menu__link--title) {
  height: 38px;
  display: flex;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 500;
  font-family: var(--font-family-base);
  line-height: 1.5625rem;
  color: var(--color-heading);
}
.mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__item--section .mega-menu__link, .mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__item--current .mega-menu__link, .mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__item--submenu-active .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__item--section .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__item--current .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__item--submenu-active .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__item--section .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__item--current .mega-menu__link,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__item--submenu-active .mega-menu__link {
  padding-left: var(--spacing-sm);
}
.mega-menu__submenu-wrapper .mega-menu__level--2 .mega-menu__item--submenu > .mega-menu__link::after,
.mega-menu__submenu-wrapper .mega-menu__level--3 .mega-menu__item--submenu > .mega-menu__link::after,
.mega-menu__submenu-wrapper .mega-menu__level--4 .mega-menu__item--submenu > .mega-menu__link::after {
  content: var(--icon-arrow);
  font-family: var(--font-family-icomoon);
  font-size: 20px;
  display: inline-block;
  margin-left: 12px;
}
.mega-menu__submenu-btn {
  display: none;
  align-items: center;
  justify-content: center;
  border: 0;
  background-color: transparent;
  padding: 0;
}
.mega-menu__submenu-btn::after {
  content: var(--icon-arrow);
  display: block;
}
.mega-menu--submenu-btn-visible .mega-menu__submenu-btn {
  display: flex;
}
.mega-menu--horizontal .mega-menu__level--1 {
  display: flex;
  align-items: center;
  gap: var(--spacing-lg);
  height: 50px;
}
.mega-menu--hamburger .mega-menu__level--1 {
  display: block;
}
.mega-menu--hamburger .mega-menu__submenu {
  height: calc(100vh - var(--header-height));
}

.documents .link {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}
.documents .link .doc-label {
  position: relative;
}
.documents .link .doc-label::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background-color: currentColor;
  opacity: 0;
  transition: height var(--transition-duration), opacity var(--transition-duration);
}
.documents .link:hover .doc-label::after {
  height: 2px;
  opacity: 1;
}
.documents .table-docs {
  table-layout: fixed;
}
.documents .table-docs .documents__col--title-date {
  width: auto;
}
.documents .table-docs .documents__col--document, .documents .table-docs .documents__col--presentation, .documents .table-docs .documents__col--webcast, .documents .table-docs .documents__col--link {
  width: 15%;
}
.documents .table-docs td {
  vertical-align: middle;
}
.documents .table-docs .date {
  font-weight: 400;
  margin-bottom: 6px;
}
.documents .table-docs .title {
  font-size: var(--font-size);
  font-weight: var(--font-weight);
}
.documents--mobile .table--stack td {
  text-align: left;
}
.documents--mobile .accordion-button {
  font-weight: 700;
}
.documents--summary .docs-summary__item-date {
  margin-bottom: var(--spacing-xxxs);
}
.documents--summary .docs-summary__item {
  padding-bottom: var(--spacing-xxs);
  margin-bottom: var(--spacing-xxs);
  border-bottom: 1px solid var(--table-border-color);
}
.documents--summary .docs-summary__item:last-of-type {
  margin-bottom: 0;
}
.documents--summary .docs-summary__item-title {
  margin-bottom: var(--spacing-xxxs);
}
.documents--summary .docs-summary__item-links {
  margin-bottom: var(--spacing-xxxs);
}
.documents--summary .docs-summary__item-link {
  margin-bottom: var(--spacing-xxxs);
}
.documents--summary .docs-summary__item-link a {
  text-decoration: none;
}
.documents--summary .docs-summary__item-link .doc-label {
  text-decoration: underline;
  text-decoration-color: var(--link-color);
  transition: var(--transition);
}
.documents--summary .docs-summary__item-link .doc-label::after {
  content: none;
}
.documents--summary .docs-summary__item-link .doc-label:hover {
  text-decoration-color: var(--link-color);
  text-decoration-thickness: 2px;
}
.documents--summary .docs-summary .icomoon {
  margin-right: var(--spacing-xxxs);
  flex-shrink: 0;
}

.event-calendar a {
  text-decoration: none;
}
.event-calendar a .icomoon {
  margin-right: 4px;
  vertical-align: middle;
  font-size: calc(1em + 2px);
}
.event-calendar a .event-label {
  text-decoration: underline;
  text-decoration-color: var(--link-color);
  transition: var(--transition);
}
.event-calendar a .event-label:hover {
  text-decoration-color: var(--link-color);
  text-decoration-thickness: 2px;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .event-calendar table th:nth-child(2), .event-calendar table td:nth-child(2) {
    width: 45%;
  }
  .event-calendar table th:nth-child(3), .event-calendar table td:nth-child(3) {
    width: 25%;
  }
}
@media (max-width: 767.98px) {
  .event-calendar table td {
    text-align: left;
  }
}
.event-calendar .summary__item {
  padding-bottom: var(--spacing-xxs);
  margin-bottom: var(--spacing-xxs);
  border-bottom: 1px solid var(--table-border-color);
}
.event-calendar .summary__item-date {
  margin-bottom: var(--spacing-xxxs);
}
.event-calendar .summary__item-title {
  margin-bottom: var(--spacing-xxxs);
}
.event-calendar .summary__item-links {
  margin-bottom: var(--spacing-xxxs);
}

.spacer {
  --spacer-sm: 16px;
  --spacer-md: 20px;
  --spacer-lg: 24px;
}
.spacer--sm {
  height: var(--spacer-sm);
}
.spacer--md {
  height: var(--spacer-md);
}
.spacer--lg {
  height: var(--spacer-lg);
}
.spacer--grow {
  margin-top: auto;
}
@media (min-width: 768px) {
  .spacer {
    --spacer-sm: 20px;
    --spacer-md: 24px;
    --spacer-lg: 32px;
  }
}
@media (min-width: 992px) {
  .spacer {
    --spacer-sm: 24px;
    --spacer-md: 32px;
    --spacer-lg: 48px;
  }
}

.row:has(.spacer--grow) > * {
  display: flex;
  flex-direction: column;
}

.stat-block--grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  position: relative;
  gap: var(--spacing-md);
}
@media (min-width: 768px) {
  .stat-block--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  .stat-block--grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  .stat-block--cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  .stat-block--cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.stat-block__item {
  padding: var(--spacing-sm);
}
.stat-block__item p:last-of-type {
  margin-bottom: 0;
}
.stat-block--no-panels .stat-block__item {
  padding: 0;
  background-color: transparent;
  color: inherit;
}
.stat-block--coloured-panels .stat-block__item.panel:nth-child(4n+1) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-turquoise);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.stat-block--coloured-panels .stat-block__item.panel:nth-child(4n+2) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-teal);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.stat-block--coloured-panels .stat-block__item.panel:nth-child(4n+3) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-blue);
  --chart-color-1: var(--color-primary);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-primary);
  --pagination-btn-color: var(--color-white);
  --pagination-fraction-bg-color: var(--color-primary);
  --pagination-fraction-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.stat-block--coloured-panels .stat-block__item.panel:nth-child(4n) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey);
  --pill-heading-background: var(--color-white);
  --hr-color: var(--color-grey-mid);
  background-color: var(--background-color);
  color: var(--text-color);
}
@media (min-width: 768px) {
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+1) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-turquoise);
    --icon-background: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+2) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-teal);
    --icon-background: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+3) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-primary);
    --icon-background: var(--color-white);
    --text-color: var(--color-white);
    --color-heading: var(--color-white);
    --heading-accent-color: var(--color-teal);
    --color-stats: var(--color-white);
    --border-color: var(--color-white);
    --bullet-color: var(--color-white);
    --rule-color: var(--color-white);
    --hr-color: var(--color-white);
    --pill-heading-background: var(--color-white);
    --pill-heading-color: var(--color-primary);
    --btn-link-color: var(--color-white);
    --btn-link-icon-color: var(--color-primary);
    --btn-link-icon-bg-color: var(--color-white);
    --btn-color: var(--color-white);
    --btn-after-color: var(--color-primary);
    --btn-hover-color: var(--color-primary);
    --accordion-border-color: var(--color-white);
    --accordion-icon-color: var(--color-primary);
    --tab-color: var(--color-white);
    --tab-bg-color-active: var(--color-white);
    --tab-color-active: var(--color-primary);
    --quote-icon-color: var(--color-white);
    --pagination-btn-bg-color: var(--color-white);
    --pagination-btn-color: var(--color-primary);
    --pagination-fraction-bg-color: var(--color-white);
    --pagination-fraction-color: var(--color-primary);
    --biogs-icon-bg-chair: var(--color-white);
    --biogs-icon-color-chair: var(--color-blue);
    --timeline-line-color: var(--color-white);
    --chart-color-1: var(--color-white);
    --chart-bar-main: var(--color-white);
    --chart-bar-main-color: var(--color-primary);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-blue);
    --chart-color-1: var(--color-primary);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    --pagination-btn-bg-color: var(--color-primary);
    --pagination-btn-color: var(--color-white);
    --pagination-fraction-bg-color: var(--color-primary);
    --pagination-fraction-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+4) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-grey);
    --pill-heading-background: var(--color-white);
    --hr-color: var(--color-grey-mid);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+5) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-grey);
    --pill-heading-background: var(--color-white);
    --hr-color: var(--color-grey-mid);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+6) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-turquoise);
    --icon-background: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+7) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-teal);
    --icon-background: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
  .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-primary);
    --icon-background: var(--color-white);
    --text-color: var(--color-white);
    --color-heading: var(--color-white);
    --heading-accent-color: var(--color-teal);
    --color-stats: var(--color-white);
    --border-color: var(--color-white);
    --bullet-color: var(--color-white);
    --rule-color: var(--color-white);
    --hr-color: var(--color-white);
    --pill-heading-background: var(--color-white);
    --pill-heading-color: var(--color-primary);
    --btn-link-color: var(--color-white);
    --btn-link-icon-color: var(--color-primary);
    --btn-link-icon-bg-color: var(--color-white);
    --btn-color: var(--color-white);
    --btn-after-color: var(--color-primary);
    --btn-hover-color: var(--color-primary);
    --accordion-border-color: var(--color-white);
    --accordion-icon-color: var(--color-primary);
    --tab-color: var(--color-white);
    --tab-bg-color-active: var(--color-white);
    --tab-color-active: var(--color-primary);
    --quote-icon-color: var(--color-white);
    --pagination-btn-bg-color: var(--color-white);
    --pagination-btn-color: var(--color-primary);
    --pagination-fraction-bg-color: var(--color-white);
    --pagination-fraction-color: var(--color-primary);
    --biogs-icon-bg-chair: var(--color-white);
    --biogs-icon-color-chair: var(--color-blue);
    --timeline-line-color: var(--color-white);
    --chart-color-1: var(--color-white);
    --chart-bar-main: var(--color-white);
    --chart-bar-main-color: var(--color-primary);
    background-color: var(--background-color);
    color: var(--text-color);
    --background-color: var(--color-blue);
    --chart-color-1: var(--color-primary);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    --pagination-btn-bg-color: var(--color-primary);
    --pagination-btn-color: var(--color-white);
    --pagination-fraction-bg-color: var(--color-primary);
    --pagination-fraction-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
}

.background-grey .stat-block--coloured-panels .stat-block__item.panel:nth-child(4n) {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
@media (min-width: 768px) {
  .background-grey .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+4), .background-grey .stat-block--coloured-panels .stat-block__item.panel:nth-child(8n+5) {
    --background-color: var(--color-white);
    --swiper-bullet-color: var(--color-primary);
    --text-color: var(--color-primary);
    --link-color: var(--text-color);
    --heading-color: var(--text-color);
    --color-heading: var(--color-primary);
    --heading-accent-color: var(--color-primary);
    --color-stats: var(--color-primary);
    --border-color: var(--color-primary);
    --bullet-color: var(--color-primary);
    --rule-color: var(--color-primary);
    --error-message-color: red;
    --hr-color: var(--color-secondary);
    --pill-heading-background: var(--color-grey);
    --pill-heading-color: var(--color-heading);
    --btn-color: var(--color-primary);
    --btn-link-color: var(--color-primary);
    --btn-link-icon-color: var(--color-white);
    --btn-link-icon-bg-color: var(--color-primary);
    --btn-border-color: var(--color-primary);
    --btn-after-bg-color: var(--color-primary);
    --btn-after-color: var(--color-white);
    --btn-hover-bg-color: var(--color-primary);
    --btn-hover-color: var(--color-white);
    --form-input-border-color: var(--border-color);
    --form-input-background: transparent;
    --form-input-color: var(--text-color);
    --table-border-color: var(--border-color);
    --accordion-border-color: var(--color-grey-mid);
    --accordion-icon-color: var(--color-white);
    --accordion-icon-background: var(--border-color);
    --tab-color: var(--text-color);
    --tab-bg-color: transparent;
    --tab-border-color: var(--color-grey-mid);
    --tab-bg-color-active: var(--color-primary);
    --tab-color-active: var(--color-white);
    --quote-icon-color: var(--color-secondary);
    --biogs-icon-bg-chair: var(--color-primary);
    --biogs-icon-color-chair: var(--color-white);
    --timeline-line-color: var(--color-secondary);
    --chart-color-1: var(--color-primary);
    --chart-color-2: var(--color-teal);
    --chart-color-3: var(--color-secondary);
    --chart-color-4: var(--color-blue);
    --chart-color-5: var(--color-grey-mid);
    --chart-bar-main: var(--color-primary);
    --chart-bar-main-color: var(--color-white);
    background-color: var(--background-color);
    color: var(--text-color);
  }
}

.content-list--default {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}
.content-list--default__item {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  flex: 1 1 100%;
  color: inherit;
  text-decoration: none;
}
@media (min-width: 768px) {
  .content-list--default__item {
    flex: 0 0 calc(50% - 16px);
  }
}
@media (min-width: 992px) {
  .content-list--default__item {
    flex: 1 1 calc(33% - 32px);
  }
}
.content-list--default__item--divider {
  padding-bottom: var(--spacing-md);
  border-bottom: 1px solid var(--color-grey-mid);
}
.content-list--default__item--divider .content-list--default__item-body > :only-child {
  margin-bottom: 0;
}
.content-list--default__item-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 3/2;
  border-radius: var(--border-radius-md);
  margin-bottom: var(--spacing-sm);
}
.content-list--default__item-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 0;
  transition: var(--transition);
}
.content-list--default__item-image:has(+ .content-list--default__item-body.panel) {
  margin-bottom: 0;
  border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
}
.content-list--default__item-image--square {
  aspect-ratio: 1/1;
}
.content-list--default__item-image--flush {
  margin-bottom: 0;
}
.content-list--default__item-image--natural {
  aspect-ratio: auto;
}
.content-list--default__item-image--natural img {
  position: static;
  height: auto;
  -o-object-fit: initial;
     object-fit: initial;
}
.content-list--default__item-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.content-list--default__item-body.panel {
  height: auto;
  padding: var(--panel-padding-sm);
  border-radius: var(--border-radius-md);
}
.content-list--default__item-secondary, .content-list--default__item-link {
  margin-top: auto;
}
.content-list--default__item-secondary + .content-list--default__item-link {
  margin-top: 0;
}
.content-list--default__item-body a:not(.content-list--default__item-title-link) {
  position: relative;
  z-index: 2;
}
.content-list--default__item-title-link {
  color: inherit;
  text-decoration: none;
}
.content-list--default__item-title-link::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
.content-list--default__item-image + .content-list--default__item-body.panel {
  border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
}
.content-list--default__item:has(.content-list--default__item-title-link):hover .content-list--default__item-image img {
  transform: scale(1.05);
}
.content-list--default__item:has(.content-list--default__item-title-link):hover .button--link,
.content-list--default__item:has(.content-list--default__item-title-link):hover .button--link-download,
.content-list--default__item:has(.content-list--default__item-title-link):hover .button--link-external {
  text-decoration-color: var(--btn-link-color);
  text-decoration-thickness: 2px;
}
@media (min-width: 992px) {
  .content-list--default--cols-2 .content-list--default__item {
    flex: 0 0 calc(50% - 16px);
  }
}
@media (min-width: 992px) {
  .content-list--default--cols-3 .content-list--default__item {
    flex: 0 0 calc(33.333% - 22px);
  }
}
@media (min-width: 992px) {
  .content-list--default--cols-4 .content-list--default__item {
    flex: 0 0 calc(25% - 24px);
  }
}
@media (min-width: 992px) {
  .content-list--default--cols-5 .content-list--default__item {
    flex: 0 0 calc(20% - 26px);
  }
}

.content-list--scrolling-cards {
  position: relative;
}
.content-list--scrolling-cards__nav {
  display: none;
  justify-content: flex-end;
  gap: 12px;
  margin-bottom: var(--spacing-md);
}
.content-list--scrolling-cards__track {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}
.content-list--scrolling-cards__item {
  display: flex;
  flex-direction: column;
}
.content-list--scrolling-cards__item-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-bottom: var(--spacing-sm);
}
.content-list--scrolling-cards__item-body.panel {
  height: auto;
  padding: 48px 76px;
  border-radius: 0;
}
@media (max-width: 767.98px) {
  .content-list--scrolling-cards__item-body.panel {
    padding: var(--panel-padding-sm);
  }
}
.content-list--scrolling-cards__item-body.panel:has(+ .content-list--scrolling-cards__item-image) {
  margin-bottom: 0;
}
.content-list--scrolling-cards__item-link {
  margin-top: auto;
}
.content-list--scrolling-cards__item:nth-child(4n+1) .content-list--scrolling-cards__item-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-primary);
  --icon-background: var(--color-white);
  --text-color: var(--color-white);
  --color-heading: var(--color-white);
  --heading-accent-color: var(--color-teal);
  --color-stats: var(--color-white);
  --border-color: var(--color-white);
  --bullet-color: var(--color-white);
  --rule-color: var(--color-white);
  --hr-color: var(--color-white);
  --pill-heading-background: var(--color-white);
  --pill-heading-color: var(--color-primary);
  --btn-link-color: var(--color-white);
  --btn-link-icon-color: var(--color-primary);
  --btn-link-icon-bg-color: var(--color-white);
  --btn-color: var(--color-white);
  --btn-after-color: var(--color-primary);
  --btn-hover-color: var(--color-primary);
  --accordion-border-color: var(--color-white);
  --accordion-icon-color: var(--color-primary);
  --tab-color: var(--color-white);
  --tab-bg-color-active: var(--color-white);
  --tab-color-active: var(--color-primary);
  --quote-icon-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-white);
  --pagination-btn-color: var(--color-primary);
  --pagination-fraction-bg-color: var(--color-white);
  --pagination-fraction-color: var(--color-primary);
  --biogs-icon-bg-chair: var(--color-white);
  --biogs-icon-color-chair: var(--color-blue);
  --timeline-line-color: var(--color-white);
  --chart-color-1: var(--color-white);
  --chart-bar-main: var(--color-white);
  --chart-bar-main-color: var(--color-primary);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-blue);
  --chart-color-1: var(--color-primary);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  --pagination-btn-bg-color: var(--color-primary);
  --pagination-btn-color: var(--color-white);
  --pagination-fraction-bg-color: var(--color-primary);
  --pagination-fraction-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.content-list--scrolling-cards__item:nth-child(4n+2) .content-list--scrolling-cards__item-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-teal);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.content-list--scrolling-cards__item:nth-child(4n+3) .content-list--scrolling-cards__item-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-turquoise);
  --icon-background: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
.content-list--scrolling-cards__item:nth-child(4n) .content-list--scrolling-cards__item-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
  --background-color: var(--color-grey);
  --pill-heading-background: var(--color-white);
  --hr-color: var(--color-grey-mid);
  background-color: var(--background-color);
  color: var(--text-color);
}
.content-list--scrolling-cards__item-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/9;
}
.content-list--scrolling-cards__item-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 0;
}
.content-list--scrolling-cards__item-image--square {
  aspect-ratio: 1/1;
}
.background-grey .content-list--scrolling-cards__item:nth-child(4n) .background-grey .content-list--scrolling-cards__item-body.panel {
  --background-color: var(--color-white);
  --swiper-bullet-color: var(--color-primary);
  --text-color: var(--color-primary);
  --link-color: var(--text-color);
  --heading-color: var(--text-color);
  --color-heading: var(--color-primary);
  --heading-accent-color: var(--color-primary);
  --color-stats: var(--color-primary);
  --border-color: var(--color-primary);
  --bullet-color: var(--color-primary);
  --rule-color: var(--color-primary);
  --error-message-color: red;
  --hr-color: var(--color-secondary);
  --pill-heading-background: var(--color-grey);
  --pill-heading-color: var(--color-heading);
  --btn-color: var(--color-primary);
  --btn-link-color: var(--color-primary);
  --btn-link-icon-color: var(--color-white);
  --btn-link-icon-bg-color: var(--color-primary);
  --btn-border-color: var(--color-primary);
  --btn-after-bg-color: var(--color-primary);
  --btn-after-color: var(--color-white);
  --btn-hover-bg-color: var(--color-primary);
  --btn-hover-color: var(--color-white);
  --form-input-border-color: var(--border-color);
  --form-input-background: transparent;
  --form-input-color: var(--text-color);
  --table-border-color: var(--border-color);
  --accordion-border-color: var(--color-grey-mid);
  --accordion-icon-color: var(--color-white);
  --accordion-icon-background: var(--border-color);
  --tab-color: var(--text-color);
  --tab-bg-color: transparent;
  --tab-border-color: var(--color-grey-mid);
  --tab-bg-color-active: var(--color-primary);
  --tab-color-active: var(--color-white);
  --quote-icon-color: var(--color-secondary);
  --biogs-icon-bg-chair: var(--color-primary);
  --biogs-icon-color-chair: var(--color-white);
  --timeline-line-color: var(--color-secondary);
  --chart-color-1: var(--color-primary);
  --chart-color-2: var(--color-teal);
  --chart-color-3: var(--color-secondary);
  --chart-color-4: var(--color-blue);
  --chart-color-5: var(--color-grey-mid);
  --chart-bar-main: var(--color-primary);
  --chart-bar-main-color: var(--color-white);
  background-color: var(--background-color);
  color: var(--text-color);
}
@media (min-width: 992px) {
  .content-list--scrolling-cards {
    width: 100vw;
    left: 50%;
    margin-left: -50vw;
    overflow: hidden;
  }
  .content-list--scrolling-cards__nav {
    display: flex;
  }
  .content-list--scrolling-cards__track {
    flex-direction: row;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 0;
    will-change: transform;
  }
  .content-list--scrolling-cards__item {
    flex: 0 0 40vw;
    width: 40vw;
    min-width: 0;
  }
}

.content-list--swiper .swiper-slide {
  display: flex;
  flex-direction: column;
}
.content-list--swiper__item {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media (min-width: 992px) {
  .content-list--swiper__item {
    display: grid;
    grid-template-columns: 6fr 1fr 5fr;
    align-items: stretch;
  }
}
.content-list--swiper__item-image {
  overflow: hidden;
  border-radius: var(--border-radius-md);
  margin-bottom: var(--spacing-sm);
}
.content-list--swiper__item-image img {
  width: 100%;
}
.content-list--swiper__item-image--square {
  position: relative;
  aspect-ratio: 1/1;
}
.content-list--swiper__item-image--square img {
  position: absolute;
  inset: 0;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 992px) {
  .content-list--swiper__item-image {
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 0;
  }
  .content-list--swiper__item-image img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.content-list--swiper__item-image:has(+ .content-list--swiper__item-body.panel) {
  border-radius: var(--border-radius-md) var(--border-radius-md) 0 0;
}
@media (min-width: 992px) {
  .content-list--swiper__item-image:has(+ .content-list--swiper__item-body.panel) {
    border-radius: var(--border-radius-md) 0 0 var(--border-radius-md);
  }
}
.content-list--swiper__item-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.content-list--swiper__item-body.panel {
  padding: var(--panel-padding-sm);
  border-radius: var(--border-radius-md);
}
@media (min-width: 992px) {
  .content-list--swiper__item-body {
    grid-column: 3;
    grid-row: 1;
  }
}
.content-list--swiper__item-image + .content-list--swiper__item-body.panel {
  border-radius: 0 0 var(--border-radius-md) var(--border-radius-md);
}
@media (min-width: 992px) {
  .content-list--swiper__item-image + .content-list--swiper__item-body.panel {
    border-radius: 0 var(--border-radius-md) var(--border-radius-md) 0;
  }
}
@media (min-width: 992px) {
  .content-list--swiper__item:has(.content-list--swiper__item-body.panel) {
    grid-template-columns: 6fr 6fr;
  }
  .content-list--swiper__item:has(.content-list--swiper__item-body.panel) .content-list--swiper__item-body {
    grid-column: 2;
  }
}

.timeline {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
}
.timeline__item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  padding-bottom: var(--spacing-xl);
}
.timeline__item:last-child {
  padding-bottom: 0;
}
@media (min-width: 992px) {
  .timeline__item {
    display: grid;
    grid-template-columns: 1fr 80px 1fr;
    align-items: start;
    gap: 0 var(--spacing-xl);
    padding-bottom: var(--spacing-xxxl);
  }
}
.timeline__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--border-radius-md);
}
@media (min-width: 992px) {
  .timeline__image {
    grid-column: 1;
    grid-row: 1;
  }
}
.timeline__marker {
  position: relative;
  display: flex;
  justify-content: center;
}
@media (min-width: 992px) {
  .timeline__marker {
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    align-items: center;
  }
}
.timeline__line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 1px);
  width: 2px;
  background-color: var(--timeline-line-color);
  transform-origin: top;
  display: none;
}
@media (min-width: 992px) {
  .timeline__line {
    display: block;
  }
}
.timeline__year {
  position: relative;
  z-index: 1;
  display: inline-block;
  background-color: var(--color-white);
  padding: 4px 12px;
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--color-primary);
}
@media (min-width: 992px) {
  .timeline__content {
    grid-column: 3;
    grid-row: 1;
    align-self: center;
  }
}
.timeline__badge {
  margin-bottom: var(--spacing-sm);
}
.timeline__detail p:last-child {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .timeline__item:nth-child(even) .timeline__image {
    grid-column: 3;
  }
  .timeline__item:nth-child(even) .timeline__content {
    grid-column: 1;
  }
}

.masonry-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-md);
}
@media (min-width: 768px) {
  .masonry-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .masonry-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) {
  .masonry-grid--cols-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .masonry-grid--cols-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 992px) {
  .masonry-grid--cols-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
.masonry-grid__item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}
.masonry-grid__item--flipped .masonry-grid__body {
  order: 1;
}
.masonry-grid__item--flipped .masonry-grid__video {
  order: 2;
}
.masonry-grid__item--flipped .masonry-grid__image {
  order: 3;
}
.masonry-grid__image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--border-radius-md);
  order: 1;
}
@media (min-width: 768px) {
  .masonry-grid__image {
    aspect-ratio: 1/1;
    -o-object-fit: cover;
       object-fit: cover;
    flex: 1 0 auto;
  }
}
.masonry-grid__video {
  display: block;
  width: 100%;
  border-radius: var(--border-radius-md);
  overflow: hidden;
  order: 2;
}
@media (min-width: 768px) {
  .masonry-grid__video {
    flex: 1 0 auto;
  }
}
.masonry-grid__body {
  order: 3;
}
.masonry-grid__body.panel {
  flex: 0 1 auto;
  height: auto;
  padding: var(--panel-padding-sm);
  border-radius: var(--border-radius-md);
}
@media (min-width: 768px) {
  .masonry-grid__body:only-child {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
    justify-content: center;
  }
}

.map-block__map {
  width: 100%;
  display: flex;
  align-items: flex-end;
  position: relative;
}
@media (min-width: 992px) {
  .map-block__map {
    flex: 1;
  }
}
.map-block__key {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--spacing-xs);
  margin-bottom: var(--spacing-sm);
}
.map-block__pin-wrapper {
  position: relative;
  width: 100%;
}
.map-block__pin-wrapper img {
  width: 100%;
}
.map-block__background {
  display: block;
  border-radius: var(--border-radius);
}
.map-block .map-pin {
  --map-pin-color: var(--color-primary);
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  left: 0;
  transition: var(--transition);
}
.map-block .map-pin__trigger {
  width: 100%;
  height: 100%;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  position: relative;
  overflow: visible;
}
.map-block .map-pin__trigger img,
.map-block .map-pin__trigger .icomoon {
  display: none;
}
.map-block .map-pin__trigger::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.85);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 8px solid var(--map-pin-color);
  pointer-events: none;
  animation: map-pin-pulse 1.5s ease-in-out infinite;
}
.map-block .map-pin__trigger::after {
  content: var(--icon-plus);
  font-family: var(--font-family-icomoon);
  font-size: 1.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 32px;
  height: 32px;
  background-color: var(--map-pin-color);
  color: var(--color-white);
  border: 2px solid var(--color-white);
  border-radius: 50%;
}
.map-block .map-pin__tooltip {
  position: absolute;
  top: 50%;
  right: calc(100% + 6px);
  transform: translateY(-50%);
  background-color: var(--map-pin-color);
  color: var(--color-white);
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 1rem;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transition: var(--transition);
  margin: 0;
}
@media (max-width: 767.98px) {
  .map-block .map-pin__tooltip {
    top: auto;
    bottom: calc(100% + 6px);
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    white-space: normal;
    max-width: 160px;
    text-align: center;
  }
}
.map-block .map-pin:hover .map-pin__tooltip {
  opacity: 1;
}
.map-block .map-pin--hub .map-pin__trigger {
  transform: scale(1.3);
}
.map-block .map-pin--hub .map-pin__tooltip {
  right: calc(100% + 11px);
}
@media (max-width: 767.98px) {
  .map-block .map-pin--hub .map-pin__tooltip {
    right: auto;
    bottom: calc(100% + 11px);
  }
}
.map-block .map-pin--active .map-pin__tooltip {
  opacity: 1;
}

.map-key__item {
  display: flex;
  align-items: center;
  gap: var(--spacing-xxxs);
}
.map-key__item img {
  width: 24px;
  height: auto;
}

.map-card {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
}
@media (min-width: 992px) {
  .map-card {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: none;
  }
}
@media (min-width: 992px) {
  .map-card--no-image {
    grid-template-columns: 1fr;
  }
}
.map-card--no-image .map-card__body {
  background-color: var(--color-white);
}
@media (max-width: 991.98px) {
  .map-card--no-image .map-card__body {
    padding-top: calc(40px + var(--spacing-sm));
  }
}
.map-card__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 992px) {
  .map-card__image img {
    height: 100%;
    aspect-ratio: auto;
  }
}
.map-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: var(--spacing-sm);
  overflow-y: auto;
  background-color: var(--color-grey);
}
@media (min-width: 992px) {
  .map-card__body {
    padding: var(--spacing-lg);
    padding-top: calc(40px + var(--spacing-lg));
  }
}
.map-card__title {
  margin-bottom: var(--spacing-xxxs);
}
.map-card__content {
  margin-bottom: 0;
}
.map-card .button {
  margin-top: var(--spacing-md);
}

.modal-content--animate-in .map-card__image {
  animation: map-card-image-in 0.5s ease-out;
}
.modal-content--animate-in .map-card__body,
.modal-content--animate-in .btn-close {
  animation: map-card-body-in 0.5s ease-out;
}
.modal-content--animate-in .modal-content__nav {
  animation: map-card-nav-slide-in 0.5s ease-out, map-card-nav-fade-in 1s ease-out;
}

.modal-content--animate-out .map-card__image {
  animation: map-card-image-out 0.3s ease-in forwards;
}
.modal-content--animate-out .map-card__body,
.modal-content--animate-out .modal-content__nav,
.modal-content--animate-out .btn-close {
  animation: map-card-body-out 0.3s ease-in forwards;
}

.modal--map.fade .modal-dialog {
  transform: none;
  transition: none;
}
.modal--map .btn-close {
  position: absolute;
  top: var(--spacing-sm);
  right: var(--spacing-sm);
  z-index: 2;
  padding: 0;
  opacity: 1;
  background: var(--color-primary);
}
.modal--map .btn-close .icomoon {
  font-size: 1.375rem;
}
.modal--map .modal-content {
  position: relative;
  overflow: hidden;
  background-color: transparent;
}
.modal--map .modal-content__nav {
  position: absolute;
  top: var(--spacing-sm);
  left: var(--spacing-sm);
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media (min-width: 992px) {
  .modal--map .modal-content__nav {
    left: calc(50% + var(--spacing-lg));
  }
}
@media (min-width: 992px) {
  .modal--map .modal-content:has(.map-card--no-image) .modal-content__nav {
    left: var(--spacing-lg);
  }
}
.modal--map .modal-content-inner {
  flex: 1;
  min-height: 0;
  display: flex;
}
.modal--map .modal-content__measure {
  position: absolute;
  inset: 0;
  visibility: hidden;
  pointer-events: none;
}
.modal--map .modal-dialog {
  max-width: clamp(300px, 85vw, 1400px);
  margin: var(--spacing-sm) auto;
}
.modal--map .modal-dialog:has(.map-card--no-image) {
  max-width: clamp(300px, 42.5vw, 700px);
}

@keyframes map-pin-pulse {
  0% {
    transform: translate(-50%, -50%) scale(0.85);
    opacity: 0.2;
  }
  60% {
    transform: translate(-50%, -50%) scale(1.15);
    opacity: 0.4;
  }
  100% {
    transform: translate(-50%, -50%) scale(0.85);
    opacity: 0.2;
  }
}
@keyframes map-card-image-in {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes map-card-body-in {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes map-card-nav-slide-in {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes map-card-nav-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes map-card-image-out {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes map-card-body-out {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
.sitemap ul {
  margin: 0;
  padding-left: 0;
}
.sitemap li ul {
  margin-top: 8px;
  padding-left: 20px;
}
.sitemap li {
  margin-bottom: 8px;
}

/** animation */
.animation--fade-in:not(.animation--fade-in-row) {
  opacity: 0;
}
.animation--fade-in-row .row > div {
  opacity: 0;
}
.animation--fade-up:not(.animation--fade-up-row) {
  opacity: 0;
  transform: translateY(40px);
}
.animation--fade-up-row .row > div {
  opacity: 0;
  transform: translateY(40px);
}

/** pages */
.stylesheet-page {
  --dropdown-color-box-size: 20px;
  --color-box-size: 160px;
  --stylesheet-toolbar-height: 56px;
}
.stylesheet-page .color-box {
  border: 1px solid var(--border-color);
  z-index: 0;
}
.stylesheet-page .color-box > div {
  width: var(--color-box-size);
  height: var(--color-box-size);
  display: flex;
  flex-direction: column;
  padding: 10px;
  border-radius: 2px;
}
.stylesheet-page__dropdown {
  position: sticky;
  top: var(--header-height);
  background: var(--background-color);
  color: var(--text-color);
  z-index: 10;
  transition: border var(--transition-duration);
}
.stylesheet-page__dropdown .dropdown-toggle {
  display: inline-flex;
  align-items: center;
}
.stylesheet-page__dropdown .dropdown-item {
  display: flex;
  align-items: center;
}
.stylesheet-page__dropdown .color-box {
  width: var(--dropdown-color-box-size);
  height: var(--dropdown-color-box-size);
  border: 1px solid var(--border-color);
  margin-right: 10px;
}
.stylesheet-page__dropdown--active {
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
.stylesheet-page__dropdown .form-label {
  margin: 0;
}
.stylesheet-page__dropdown-wrapper {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding-block: 10px;
  min-height: var(--stylesheet-toolbar-height);
}
.stylesheet-page__dropdown-wrapper-inner {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-right: auto;
}
.stylesheet-page__dropdown .stylesheet-page__key {
  display: flex;
  align-items: center;
}
.stylesheet-page__dropdown .stylesheet-page__key .stylesheet-page-label,
.stylesheet-page__dropdown .stylesheet-page__key .stylesheet-page-setting {
  margin-bottom: 0;
}
.stylesheet-page__dropdown .stylesheet-page__key .stylesheet-page-label {
  margin-left: 0.75rem;
}
.stylesheet-page__dropdown .stylesheet-page__viewport-switcher {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}
.stylesheet-page__dropdown .stylesheet-page__viewport-buttons {
  display: flex;
  gap: 4px;
}
.stylesheet-page__dropdown .stylesheet-page__viewport-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  font-size: 0.8125rem;
  line-height: 1;
  font-family: inherit;
  cursor: pointer;
  border: 1px solid var(--border-color);
  border-radius: 6px;
  background: transparent;
  color: var(--text-color);
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  white-space: nowrap;
}
.stylesheet-page__dropdown .stylesheet-page__viewport-btn:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}
.stylesheet-page__dropdown .stylesheet-page__viewport-btn--active {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}
.stylesheet-page__iframe-wrapper {
  display: flex;
  justify-content: center;
  background: #1c1c1e;
  padding: 2rem;
  min-height: calc(100vh - var(--stylesheet-toolbar-height));
}
.stylesheet-page__iframe-device {
  flex-shrink: 0;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 24px 64px rgba(0, 0, 0, 0.6);
  border-radius: 6px;
  overflow: hidden;
  align-self: flex-start;
}
.stylesheet-page__iframe-preview {
  display: block;
  border: none;
  width: 100%;
  min-height: 600px;
}
.stylesheet-page__colors {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.stylesheet-page__colors--brand {
  margin-bottom: 60px;
}
.stylesheet-page div:has(+ .spacer--sm + .richText + .spacer--md + .richText + .spacer--lg) + .spacer--sm, .stylesheet-page div:has(+ .spacer--sm + .richText + .spacer--md + .richText + .spacer--lg) + .spacer--sm + .richText + .spacer--md, .stylesheet-page div:has(+ .spacer--sm + .richText + .spacer--md + .richText + .spacer--lg) + .spacer--sm + .richText + .spacer--md + .richText + .spacer--lg {
  background: repeating-linear-gradient(45deg, var(--border-color) 0, var(--border-color) 10px, transparent 10px, transparent 20px);
}
.stylesheet-page-label {
  background: var(--color-white);
  color: var(--color-primary);
  padding: 6px 12px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid var(--border-color);
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .stylesheet-page-label {
    display: inline-block;
    width: auto;
  }
  .stylesheet-page-label + .stylesheet-page-label, .stylesheet-page-label + .stylesheet-page-setting {
    margin-left: 10px;
  }
}
.stylesheet-page-setting {
  background: var(--color-primary);
  color: var(--color-white);
  padding: 6px 12px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid var(--border-color);
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .stylesheet-page-setting {
    display: inline-block;
    width: auto;
  }
  .stylesheet-page-setting + .stylesheet-page-setting {
    margin-left: 10px;
  }
}

body.stylesheet-page [class*=animation--] {
  opacity: 1 !important;
  transform: none !important;
}
body.stylesheet-page [class*=animation--] .row > div {
  opacity: 1 !important;
  transform: none !important;
}

.search-results__item {
  display: flex;
  gap: 30px;
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--color-grey);
}
@media (max-width: 767.98px) {
  .search-results__item {
    flex-direction: column;
  }
}
.search-results__image {
  flex: 0 1 33.333%;
}
@media (max-width: 767.98px) {
  .search-results__image {
    flex-basis: auto;
  }
}
.search-results__content {
  display: flex;
  flex: 1 1 66.666%;
  flex-direction: column;
  min-width: 0;
}
@media (max-width: 767.98px) {
  .search-results__content {
    flex-basis: auto;
  }
}
.search-results__content p:last-of-type {
  margin-bottom: 0;
}
.search-results__content .button {
  margin-top: var(--spacing-xs);
}
.search-results__description {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7O0VBU0k7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQU9BO0VDMk9JLHlCQUxJO0VEcE9SO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBSUE7RUFDQTtFQUNBO0VBSUE7RUFDQTtFQUNBO0VBQ0E7QURQRjs7QUd6R0k7RUZzSEE7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0U7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBRFBKOztBSWpLQTs7O0VBR0U7QUpvS0Y7O0FJckpJO0VBTko7SUFPTTtFSnlKSjtBQUNGOztBSTVJQTtFQUNFO0VBQ0E7RUY2T0ksbUNBTEk7RUV0T1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUorSUY7O0FJdElBO0VBQ0U7RUFDQSxjQ21uQjRCO0VEbG5CNUI7RUFDQTtFQUNBLGFDeW5CNEI7QUxoZjlCOztBSS9IQTtFQUNFO0VBQ0EscUJDd2pCNEI7RURyakI1QixnQkN3akI0QjtFRHZqQjVCLGdCQ3dqQjRCO0VEdmpCNUI7QUpnSUY7O0FJN0hBO0VGdU1RO0FGdEVSO0FFdEZJO0VFM0NKO0lGOE1RO0VGekVOO0FBQ0Y7O0FJaklBO0VGa01RO0FGN0RSO0FFL0ZJO0VFdENKO0lGeU1RO0VGaEVOO0FBQ0Y7O0FJcklBO0VGNkxRO0FGcERSO0FFeEdJO0VFakNKO0lGb01RO0VGdkROO0FBQ0Y7O0FJeklBO0VGd0xRO0FGM0NSO0FFakhJO0VFNUJKO0lGK0xRO0VGOUNOO0FBQ0Y7O0FJN0lBO0VGK0tNLGtCQUxJO0FGekJWOztBSTVJQTtFRjBLTSxlQUxJO0FGckJWOztBSXJJQTtFQUNFO0VBQ0EsbUJDd1YwQjtBTGhONUI7O0FJOUhBO0VBQ0U7VUFBQTtFQUNBO0VBQ0E7VUFBQTtBSmlJRjs7QUkzSEE7RUFDRTtFQUNBO0VBQ0E7QUo4SEY7O0FJeEhBOztFQUVFO0FKMkhGOztBSXhIQTs7O0VBR0U7RUFDQTtBSjJIRjs7QUl4SEE7Ozs7RUFJRTtBSjJIRjs7QUl4SEE7RUFDRSxnQkM2YjRCO0FMbFU5Qjs7QUl0SEE7RUFDRTtFQUNBO0FKeUhGOztBSW5IQTtFQUNFO0FKc0hGOztBSTlHQTs7RUFFRSxtQkNzYTRCO0FMclQ5Qjs7QUl6R0E7RUY2RU0sa0JBTEk7QUZxQ1Y7O0FJdEdBO0VBQ0UsaUJDcWY0QjtFRHBmNUI7RUFDQTtBSnlHRjs7QUloR0E7O0VBRUU7RUZ3REksaUJBTEk7RUVqRFI7RUFDQTtBSm1HRjs7QUloR0E7RUFBTTtBSm9HTjs7QUluR0E7RUFBTTtBSnVHTjs7QUlsR0E7RUFDRTtFQUNBLDBCQ2dOd0M7QUwzRzFDO0FJbkdFO0VBQ0U7QUpxR0o7O0FJMUZFO0VBRUU7RUFDQTtBSjRGSjs7QUlyRkE7Ozs7RUFJRSxxQ0NnVjRCO0VIbFV4QixjQUxJO0FGZ0ZWOztBSWpGQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VGRUksa0JBTEk7QUZ3RlY7QUloRkU7RUZISSxrQkFMSTtFRVVOO0VBQ0E7QUprRko7O0FJOUVBO0VGVk0sa0JBTEk7RUVpQlI7RUFDQTtBSmlGRjtBSTlFRTtFQUNFO0FKZ0ZKOztBSTVFQTtFQUNFO0VGdEJJLGtCQUxJO0VFNkJSLHdCQzI1Q2tDO0VEMTVDbEMsc0NDMjVDa0M7RUNoc0RoQztBTnFYSjtBSTdFRTtFQUNFO0VGN0JFLGNBTEk7QUZrSFY7O0FJckVBO0VBQ0U7QUp3RUY7O0FJbEVBOztFQUVFO0FKcUVGOztBSTdEQTtFQUNFO0VBQ0E7QUpnRUY7O0FJN0RBO0VBQ0UsbUJDNFg0QjtFRDNYNUIsc0JDMlg0QjtFRDFYNUIsZ0NDNFo0QjtFRDNaNUI7QUpnRUY7O0FJekRBO0VBRUU7RUFDQTtBSjJERjs7QUl4REE7Ozs7OztFQU1FO0VBQ0E7RUFDQTtBSjJERjs7QUluREE7RUFDRTtBSnNERjs7QUloREE7RUFFRTtBSmtERjs7QUkxQ0E7RUFDRTtBSjZDRjs7QUl4Q0E7Ozs7O0VBS0U7RUFDQTtFRjVISSxrQkFMSTtFRW1JUjtBSjJDRjs7QUl2Q0E7O0VBRUU7QUowQ0Y7O0FJckNBO0VBQ0U7QUp3Q0Y7O0FJckNBO0VBR0U7QUpzQ0Y7QUluQ0U7RUFDRTtBSnFDSjs7QUk5QkE7RUFDRTtBSmlDRjs7QUl6QkE7Ozs7RUFJRTtBSjRCRjtBSXpCSTs7OztFQUNFO0FKOEJOOztBSXZCQTtFQUNFO0VBQ0E7QUowQkY7O0FJckJBO0VBQ0U7QUp3QkY7O0FJZEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBSmlCRjs7QUlUQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHFCQ21ONEI7RURqTjVCO0VGbk5NO0FGK05SO0FFM1hJO0VFeVdKO0lGdE1RO0VGNE5OO0FBQ0Y7QUlkRTtFQUNFO0FKZ0JKOztBSVRBOzs7Ozs7O0VBT0U7QUpZRjs7QUlUQTtFQUNFO0FKWUY7O0FJSEE7RUFDRTtFQUNBO0FKTUY7QUlIRTtFQUNFO0VBQ0E7QUpLSjs7QUlJQTs7Ozs7OztDQUFBO0FBV0E7RUFDRTtBSkpGOztBSVNBO0VBQ0U7QUpORjs7QUlhQTtFQUNFO0VBQ0E7QUpWRjs7QUllQTtFQUNFO0FKWkY7O0FJaUJBO0VBQ0U7QUpkRjs7QUlxQkE7RUFDRTtFQUNBO0FKbEJGOztBSTBCQTtFQUNFO0FKdkJGOztBSStCQTtFQUNFO0FKNUJGOztBTy9pQkE7RUxtUU0sa0JBTEk7RUs1UFIsZ0JGd29CNEI7QUx0RjlCOztBTzdpQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRm1UUjtBRS9jSTtFS3BHRjtJTHVRTTtFRmdUTjtBQUNGOztBT3hqQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRjhUUjtBRTFkSTtFS3BHRjtJTHVRTTtFRjJUTjtBQUNGOztBT25rQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRnlVUjtBRXJlSTtFS3BHRjtJTHVRTTtFRnNVTjtBQUNGOztBTzlrQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRm9WUjtBRWhmSTtFS3BHRjtJTHVRTTtFRmlWTjtBQUNGOztBT3psQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRitWUjtBRTNmSTtFS3BHRjtJTHVRTTtFRjRWTjtBQUNGOztBT3BtQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBRjBXUjtBRXRnQkk7RUtwR0Y7SUx1UU07RUZ1V047QUFDRjs7QU92bEJBO0VDdkRFO0VBQ0E7QVJrcEJGOztBT3ZsQkE7RUM1REU7RUFDQTtBUnVwQkY7O0FPemxCQTtFQUNFO0FQNGxCRjtBTzFsQkU7RUFDRSxvQkZzb0IwQjtBTDFDOUI7O0FPbGxCQTtFTDhNTSxrQkFMSTtFS3ZNUjtBUHFsQkY7O0FPamxCQTtFQUNFLG1CRmlVTztFSDFISCxrQkFMSTtBRm1aVjtBT2xsQkU7RUFDRTtBUG9sQko7O0FPaGxCQTtFQUNFO0VBQ0EsbUJGdVRPO0VIMUhILGtCQUxJO0VLdExSLGNGdEZTO0FMeXFCWDtBT2psQkU7RUFDRTtBUG1sQko7O0FTcHJCRTs7Ozs7OztFQ0hBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FWaXNCRjs7QVczb0JJO0VGNUNFO0lBQ0UsZ0JKa2VlO0VMeU5yQjtBQUNGO0FXanBCSTtFRjVDRTtJQUNFLGdCSmtlZTtFTDhOckI7QUFDRjtBV3RwQkk7RUY1Q0U7SUFDRSxnQkprZWU7RUxtT3JCO0FBQ0Y7QVczcEJJO0VGNUNFO0lBQ0UsaUJKa2VlO0VMd09yQjtBQUNGO0FXaHFCSTtFRjVDRTtJQUNFLGlCSmtlZTtFTDZPckI7QUFDRjtBWWh1QkE7RUFFSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QVpzdUJKOztBWWp1QkU7RUNOQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBYjB1QkY7QVl4dUJJO0VDT0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0Fib3VCRjs7QWFyckJNO0VBQ0U7QWJ3ckJSOztBYXJyQk07RUFwQ0o7RUFDQTtBYjZ0QkY7O0FhL3NCRTtFQUNFO0VBQ0E7QWJrdEJKOztBYXB0QkU7RUFDRTtFQUNBO0FidXRCSjs7QWF6dEJFO0VBQ0U7RUFDQTtBYjR0Qko7O0FhOXRCRTtFQUNFO0VBQ0E7QWJpdUJKOztBYW51QkU7RUFDRTtFQUNBO0Fic3VCSjs7QWF4dUJFO0VBQ0U7RUFDQTtBYjJ1Qko7O0FhNXNCTTtFQWhESjtFQUNBO0FiZ3dCRjs7QWEzc0JVO0VBaEVOO0VBQ0E7QWIrd0JKOztBYWh0QlU7RUFoRU47RUFDQTtBYm94Qko7O0FhcnRCVTtFQWhFTjtFQUNBO0FieXhCSjs7QWExdEJVO0VBaEVOO0VBQ0E7QWI4eEJKOztBYS90QlU7RUFoRU47RUFDQTtBYm15Qko7O0FhcHVCVTtFQWhFTjtFQUNBO0Fid3lCSjs7QWF6dUJVO0VBaEVOO0VBQ0E7QWI2eUJKOztBYTl1QlU7RUFoRU47RUFDQTtBYmt6Qko7O0FhbnZCVTtFQWhFTjtFQUNBO0FidXpCSjs7QWF4dkJVO0VBaEVOO0VBQ0E7QWI0ekJKOztBYTd2QlU7RUFoRU47RUFDQTtBYmkwQko7O0FhbHdCVTtFQWhFTjtFQUNBO0FiczBCSjs7QWEvdkJZO0VBeERWO0FiMnpCRjs7QWFud0JZO0VBeERWO0FiK3pCRjs7QWF2d0JZO0VBeERWO0FibTBCRjs7QWEzd0JZO0VBeERWO0FidTBCRjs7QWEvd0JZO0VBeERWO0FiMjBCRjs7QWFueEJZO0VBeERWO0FiKzBCRjs7QWF2eEJZO0VBeERWO0FibTFCRjs7QWEzeEJZO0VBeERWO0FidTFCRjs7QWEveEJZO0VBeERWO0FiMjFCRjs7QWFueUJZO0VBeERWO0FiKzFCRjs7QWF2eUJZO0VBeERWO0FibTJCRjs7QWFoeUJROztFQUVFO0FibXlCVjs7QWFoeUJROztFQUVFO0FibXlCVjs7QWExeUJROztFQUVFO0FiNnlCVjs7QWExeUJROztFQUVFO0FiNnlCVjs7QWFwekJROztFQUVFO0FidXpCVjs7QWFwekJROztFQUVFO0FidXpCVjs7QWE5ekJROztFQUVFO0FiaTBCVjs7QWE5ekJROztFQUVFO0FiaTBCVjs7QWF4MEJROztFQUVFO0FiMjBCVjs7QWF4MEJROztFQUVFO0FiMjBCVjs7QWFsMUJROztFQUVFO0FicTFCVjs7QWFsMUJROztFQUVFO0FicTFCVjs7QVcvNEJJO0VFVUU7SUFDRTtFYnk0Qk47RWF0NEJJO0lBcENKO0lBQ0E7RWI2NkJBO0VhLzVCQTtJQUNFO0lBQ0E7RWJpNkJGO0VhbjZCQTtJQUNFO0lBQ0E7RWJxNkJGO0VhdjZCQTtJQUNFO0lBQ0E7RWJ5NkJGO0VhMzZCQTtJQUNFO0lBQ0E7RWI2NkJGO0VhLzZCQTtJQUNFO0lBQ0E7RWJpN0JGO0VhbjdCQTtJQUNFO0lBQ0E7RWJxN0JGO0VhdDVCSTtJQWhESjtJQUNBO0VieThCQTtFYXA1QlE7SUFoRU47SUFDQTtFYnU5QkY7RWF4NUJRO0lBaEVOO0lBQ0E7RWIyOUJGO0VhNTVCUTtJQWhFTjtJQUNBO0ViKzlCRjtFYWg2QlE7SUFoRU47SUFDQTtFYm0rQkY7RWFwNkJRO0lBaEVOO0lBQ0E7RWJ1K0JGO0VheDZCUTtJQWhFTjtJQUNBO0ViMitCRjtFYTU2QlE7SUFoRU47SUFDQTtFYisrQkY7RWFoN0JRO0lBaEVOO0lBQ0E7RWJtL0JGO0VhcDdCUTtJQWhFTjtJQUNBO0VidS9CRjtFYXg3QlE7SUFoRU47SUFDQTtFYjIvQkY7RWE1N0JRO0lBaEVOO0lBQ0E7RWIrL0JGO0VhaDhCUTtJQWhFTjtJQUNBO0VibWdDRjtFYTU3QlU7SUF4RFY7RWJ1L0JBO0VhLzdCVTtJQXhEVjtFYjAvQkE7RWFsOEJVO0lBeERWO0ViNi9CQTtFYXI4QlU7SUF4RFY7RWJnZ0NBO0VheDhCVTtJQXhEVjtFYm1nQ0E7RWEzOEJVO0lBeERWO0Vic2dDQTtFYTk4QlU7SUF4RFY7RWJ5Z0NBO0VhajlCVTtJQXhEVjtFYjRnQ0E7RWFwOUJVO0lBeERWO0ViK2dDQTtFYXY5QlU7SUF4RFY7RWJraENBO0VhMTlCVTtJQXhEVjtFYnFoQ0E7RWE3OUJVO0lBeERWO0Vid2hDQTtFYXI5Qk07O0lBRUU7RWJ1OUJSO0VhcDlCTTs7SUFFRTtFYnM5QlI7RWE3OUJNOztJQUVFO0ViKzlCUjtFYTU5Qk07O0lBRUU7RWI4OUJSO0VhcitCTTs7SUFFRTtFYnUrQlI7RWFwK0JNOztJQUVFO0VicytCUjtFYTcrQk07O0lBRUU7RWIrK0JSO0VhNStCTTs7SUFFRTtFYjgrQlI7RWFyL0JNOztJQUVFO0VidS9CUjtFYXAvQk07O0lBRUU7RWJzL0JSO0VhNy9CTTs7SUFFRTtFYisvQlI7RWE1L0JNOztJQUVFO0ViOC9CUjtBQUNGO0FXempDSTtFRVVFO0lBQ0U7RWJrakNOO0VhL2lDSTtJQXBDSjtJQUNBO0Vic2xDQTtFYXhrQ0E7SUFDRTtJQUNBO0ViMGtDRjtFYTVrQ0E7SUFDRTtJQUNBO0ViOGtDRjtFYWhsQ0E7SUFDRTtJQUNBO0Via2xDRjtFYXBsQ0E7SUFDRTtJQUNBO0Vic2xDRjtFYXhsQ0E7SUFDRTtJQUNBO0ViMGxDRjtFYTVsQ0E7SUFDRTtJQUNBO0ViOGxDRjtFYS9qQ0k7SUFoREo7SUFDQTtFYmtuQ0E7RWE3akNRO0lBaEVOO0lBQ0E7RWJnb0NGO0VhamtDUTtJQWhFTjtJQUNBO0Vib29DRjtFYXJrQ1E7SUFoRU47SUFDQTtFYndvQ0Y7RWF6a0NRO0lBaEVOO0lBQ0E7RWI0b0NGO0VhN2tDUTtJQWhFTjtJQUNBO0ViZ3BDRjtFYWpsQ1E7SUFoRU47SUFDQTtFYm9wQ0Y7RWFybENRO0lBaEVOO0lBQ0E7RWJ3cENGO0VhemxDUTtJQWhFTjtJQUNBO0ViNHBDRjtFYTdsQ1E7SUFoRU47SUFDQTtFYmdxQ0Y7RWFqbUNRO0lBaEVOO0lBQ0E7RWJvcUNGO0Vhcm1DUTtJQWhFTjtJQUNBO0Vid3FDRjtFYXptQ1E7SUFoRU47SUFDQTtFYjRxQ0Y7RWFybUNVO0lBeERWO0ViZ3FDQTtFYXhtQ1U7SUF4RFY7RWJtcUNBO0VhM21DVTtJQXhEVjtFYnNxQ0E7RWE5bUNVO0lBeERWO0VieXFDQTtFYWpuQ1U7SUF4RFY7RWI0cUNBO0VhcG5DVTtJQXhEVjtFYitxQ0E7RWF2bkNVO0lBeERWO0Via3JDQTtFYTFuQ1U7SUF4RFY7RWJxckNBO0VhN25DVTtJQXhEVjtFYndyQ0E7RWFob0NVO0lBeERWO0ViMnJDQTtFYW5vQ1U7SUF4RFY7RWI4ckNBO0VhdG9DVTtJQXhEVjtFYmlzQ0E7RWE5bkNNOztJQUVFO0ViZ29DUjtFYTduQ007O0lBRUU7RWIrbkNSO0VhdG9DTTs7SUFFRTtFYndvQ1I7RWFyb0NNOztJQUVFO0VidW9DUjtFYTlvQ007O0lBRUU7RWJncENSO0VhN29DTTs7SUFFRTtFYitvQ1I7RWF0cENNOztJQUVFO0Vid3BDUjtFYXJwQ007O0lBRUU7RWJ1cENSO0VhOXBDTTs7SUFFRTtFYmdxQ1I7RWE3cENNOztJQUVFO0ViK3BDUjtFYXRxQ007O0lBRUU7RWJ3cUNSO0VhcnFDTTs7SUFFRTtFYnVxQ1I7QUFDRjtBV2x1Q0k7RUVVRTtJQUNFO0ViMnRDTjtFYXh0Q0k7SUFwQ0o7SUFDQTtFYit2Q0E7RWFqdkNBO0lBQ0U7SUFDQTtFYm12Q0Y7RWFydkNBO0lBQ0U7SUFDQTtFYnV2Q0Y7RWF6dkNBO0lBQ0U7SUFDQTtFYjJ2Q0Y7RWE3dkNBO0lBQ0U7SUFDQTtFYit2Q0Y7RWFqd0NBO0lBQ0U7SUFDQTtFYm13Q0Y7RWFyd0NBO0lBQ0U7SUFDQTtFYnV3Q0Y7RWF4dUNJO0lBaERKO0lBQ0E7RWIyeENBO0VhdHVDUTtJQWhFTjtJQUNBO0VieXlDRjtFYTF1Q1E7SUFoRU47SUFDQTtFYjZ5Q0Y7RWE5dUNRO0lBaEVOO0lBQ0E7RWJpekNGO0VhbHZDUTtJQWhFTjtJQUNBO0VicXpDRjtFYXR2Q1E7SUFoRU47SUFDQTtFYnl6Q0Y7RWExdkNRO0lBaEVOO0lBQ0E7RWI2ekNGO0VhOXZDUTtJQWhFTjtJQUNBO0ViaTBDRjtFYWx3Q1E7SUFoRU47SUFDQTtFYnEwQ0Y7RWF0d0NRO0lBaEVOO0lBQ0E7RWJ5MENGO0VhMXdDUTtJQWhFTjtJQUNBO0ViNjBDRjtFYTl3Q1E7SUFoRU47SUFDQTtFYmkxQ0Y7RWFseENRO0lBaEVOO0lBQ0E7RWJxMUNGO0VhOXdDVTtJQXhEVjtFYnkwQ0E7RWFqeENVO0lBeERWO0ViNDBDQTtFYXB4Q1U7SUF4RFY7RWIrMENBO0VhdnhDVTtJQXhEVjtFYmsxQ0E7RWExeENVO0lBeERWO0VicTFDQTtFYTd4Q1U7SUF4RFY7RWJ3MUNBO0VhaHlDVTtJQXhEVjtFYjIxQ0E7RWFueUNVO0lBeERWO0ViODFDQTtFYXR5Q1U7SUF4RFY7RWJpMkNBO0VhenlDVTtJQXhEVjtFYm8yQ0E7RWE1eUNVO0lBeERWO0VidTJDQTtFYS95Q1U7SUF4RFY7RWIwMkNBO0VhdnlDTTs7SUFFRTtFYnl5Q1I7RWF0eUNNOztJQUVFO0Vid3lDUjtFYS95Q007O0lBRUU7RWJpekNSO0VhOXlDTTs7SUFFRTtFYmd6Q1I7RWF2ekNNOztJQUVFO0VieXpDUjtFYXR6Q007O0lBRUU7RWJ3ekNSO0VhL3pDTTs7SUFFRTtFYmkwQ1I7RWE5ekNNOztJQUVFO0ViZzBDUjtFYXYwQ007O0lBRUU7RWJ5MENSO0VhdDBDTTs7SUFFRTtFYncwQ1I7RWEvMENNOztJQUVFO0ViaTFDUjtFYTkwQ007O0lBRUU7RWJnMUNSO0FBQ0Y7QVczNENJO0VFVUU7SUFDRTtFYm80Q047RWFqNENJO0lBcENKO0lBQ0E7RWJ3NkNBO0VhMTVDQTtJQUNFO0lBQ0E7RWI0NUNGO0VhOTVDQTtJQUNFO0lBQ0E7RWJnNkNGO0VhbDZDQTtJQUNFO0lBQ0E7RWJvNkNGO0VhdDZDQTtJQUNFO0lBQ0E7RWJ3NkNGO0VhMTZDQTtJQUNFO0lBQ0E7RWI0NkNGO0VhOTZDQTtJQUNFO0lBQ0E7RWJnN0NGO0VhajVDSTtJQWhESjtJQUNBO0VibzhDQTtFYS80Q1E7SUFoRU47SUFDQTtFYms5Q0Y7RWFuNUNRO0lBaEVOO0lBQ0E7RWJzOUNGO0VhdjVDUTtJQWhFTjtJQUNBO0ViMDlDRjtFYTM1Q1E7SUFoRU47SUFDQTtFYjg5Q0Y7RWEvNUNRO0lBaEVOO0lBQ0E7RWJrK0NGO0VhbjZDUTtJQWhFTjtJQUNBO0VicytDRjtFYXY2Q1E7SUFoRU47SUFDQTtFYjArQ0Y7RWEzNkNRO0lBaEVOO0lBQ0E7RWI4K0NGO0VhLzZDUTtJQWhFTjtJQUNBO0Viay9DRjtFYW43Q1E7SUFoRU47SUFDQTtFYnMvQ0Y7RWF2N0NRO0lBaEVOO0lBQ0E7RWIwL0NGO0VhMzdDUTtJQWhFTjtJQUNBO0ViOC9DRjtFYXY3Q1U7SUF4RFY7RWJrL0NBO0VhMTdDVTtJQXhEVjtFYnEvQ0E7RWE3N0NVO0lBeERWO0Vidy9DQTtFYWg4Q1U7SUF4RFY7RWIyL0NBO0VhbjhDVTtJQXhEVjtFYjgvQ0E7RWF0OENVO0lBeERWO0ViaWdEQTtFYXo4Q1U7SUF4RFY7RWJvZ0RBO0VhNThDVTtJQXhEVjtFYnVnREE7RWEvOENVO0lBeERWO0ViMGdEQTtFYWw5Q1U7SUF4RFY7RWI2Z0RBO0VhcjlDVTtJQXhEVjtFYmdoREE7RWF4OUNVO0lBeERWO0VibWhEQTtFYWg5Q007O0lBRUU7RWJrOUNSO0VhLzhDTTs7SUFFRTtFYmk5Q1I7RWF4OUNNOztJQUVFO0ViMDlDUjtFYXY5Q007O0lBRUU7RWJ5OUNSO0VhaCtDTTs7SUFFRTtFYmsrQ1I7RWEvOUNNOztJQUVFO0ViaStDUjtFYXgrQ007O0lBRUU7RWIwK0NSO0VhditDTTs7SUFFRTtFYnkrQ1I7RWFoL0NNOztJQUVFO0Viay9DUjtFYS8rQ007O0lBRUU7RWJpL0NSO0VheC9DTTs7SUFFRTtFYjAvQ1I7RWF2L0NNOztJQUVFO0VieS9DUjtBQUNGO0FXcGpESTtFRVVFO0lBQ0U7RWI2aUROO0VhMWlESTtJQXBDSjtJQUNBO0ViaWxEQTtFYW5rREE7SUFDRTtJQUNBO0VicWtERjtFYXZrREE7SUFDRTtJQUNBO0VieWtERjtFYTNrREE7SUFDRTtJQUNBO0ViNmtERjtFYS9rREE7SUFDRTtJQUNBO0ViaWxERjtFYW5sREE7SUFDRTtJQUNBO0VicWxERjtFYXZsREE7SUFDRTtJQUNBO0VieWxERjtFYTFqREk7SUFoREo7SUFDQTtFYjZtREE7RWF4akRRO0lBaEVOO0lBQ0E7RWIybkRGO0VhNWpEUTtJQWhFTjtJQUNBO0ViK25ERjtFYWhrRFE7SUFoRU47SUFDQTtFYm1vREY7RWFwa0RRO0lBaEVOO0lBQ0E7RWJ1b0RGO0VheGtEUTtJQWhFTjtJQUNBO0ViMm9ERjtFYTVrRFE7SUFoRU47SUFDQTtFYitvREY7RWFobERRO0lBaEVOO0lBQ0E7RWJtcERGO0VhcGxEUTtJQWhFTjtJQUNBO0VidXBERjtFYXhsRFE7SUFoRU47SUFDQTtFYjJwREY7RWE1bERRO0lBaEVOO0lBQ0E7RWIrcERGO0VhaG1EUTtJQWhFTjtJQUNBO0VibXFERjtFYXBtRFE7SUFoRU47SUFDQTtFYnVxREY7RWFobURVO0lBeERWO0ViMnBEQTtFYW5tRFU7SUF4RFY7RWI4cERBO0VhdG1EVTtJQXhEVjtFYmlxREE7RWF6bURVO0lBeERWO0Vib3FEQTtFYTVtRFU7SUF4RFY7RWJ1cURBO0VhL21EVTtJQXhEVjtFYjBxREE7RWFsbkRVO0lBeERWO0ViNnFEQTtFYXJuRFU7SUF4RFY7RWJnckRBO0VheG5EVTtJQXhEVjtFYm1yREE7RWEzbkRVO0lBeERWO0Vic3JEQTtFYTluRFU7SUF4RFY7RWJ5ckRBO0Vham9EVTtJQXhEVjtFYjRyREE7RWF6bkRNOztJQUVFO0ViMm5EUjtFYXhuRE07O0lBRUU7RWIwbkRSO0Vham9ETTs7SUFFRTtFYm1vRFI7RWFob0RNOztJQUVFO0Via29EUjtFYXpvRE07O0lBRUU7RWIyb0RSO0VheG9ETTs7SUFFRTtFYjBvRFI7RWFqcERNOztJQUVFO0VibXBEUjtFYWhwRE07O0lBRUU7RWJrcERSO0VhenBETTs7SUFFRTtFYjJwRFI7RWF4cERNOztJQUVFO0ViMHBEUjtFYWpxRE07O0lBRUU7RWJtcURSO0VhaHFETTs7SUFFRTtFYmtxRFI7QUFDRjtBY3h4REE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxtQlRrWU87RVNqWVAsbUJUdXNCNEI7RVN0c0I1QjtBZHV4REY7QWNoeERFO0VBQ0U7RUFFQTtFQUNBO0VBQ0EsMkNUK3NCMEI7RVM5c0IxQjtBZGl4REo7QWM5d0RFO0VBQ0U7QWRneERKO0FjN3dERTtFQUNFO0FkK3dESjs7QWMzd0RBO0VBQ0U7QWQ4d0RGOztBY3Z3REE7RUFDRTtBZDB3REY7O0FjaHdERTtFQUNFO0FkbXdESjs7QWNwdkRFO0VBQ0U7QWR1dkRKO0FjcHZESTtFQUNFO0Fkc3ZETjs7QWMvdURFO0VBQ0U7QWRrdkRKO0FjL3VERTtFQUNFO0FkaXZESjs7QWN2dURFO0VBQ0U7RUFDQTtBZDB1REo7O0FjcHVERTtFQUNFO0VBQ0E7QWR1dURKOztBYy90REE7RUFDRTtFQUNBO0Fka3VERjs7QWMxdERFO0VBQ0U7RUFDQTtBZDZ0REo7O0FlejJERTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QWZxMkRKOztBZXYzREU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FmbTNESjs7QWVyNERFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBZmk0REo7O0FlbjVERTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QWYrNERKOztBZWo2REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FmNjVESjs7QWUvNkRFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBZjI2REo7O0FlNzdERTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QWZ5N0RKOztBZTM4REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FmdThESjs7QWN0ekRJO0VBQ0U7RUFDQTtBZHl6RE47O0FXcDVESTtFR3lGQTtJQUNFO0lBQ0E7RWQrekRKO0FBQ0Y7QVczNURJO0VHeUZBO0lBQ0U7SUFDQTtFZHEwREo7QUFDRjtBV2o2REk7RUd5RkE7SUFDRTtJQUNBO0VkMjBESjtBQUNGO0FXdjZESTtFR3lGQTtJQUNFO0lBQ0E7RWRpMURKO0FBQ0Y7QVc3NkRJO0VHeUZBO0lBQ0U7SUFDQTtFZHUxREo7QUFDRjtBZ0IzL0RBO0VBQ0UscUJYdTJCc0M7QUxzcEN4Qzs7QWdCcC9EQTtFQUNFO0VBQ0E7RUFDQTtFZDhRSSxrQkFMSTtFY3JRUixnQlgrbEI0QjtBTHM1QzlCOztBZ0JqL0RBO0VBQ0U7RUFDQTtFZG9RSSxrQkFMSTtBRnN2RFY7O0FnQmovREE7RUFDRTtFQUNBO0VkOFBJLG1CQUxJO0FGNHZEVjs7QWlCbGhFQTtFQUNFLG1CWisxQnNDO0VIcmtCbEMsa0JBTEk7RWVqUlIsZ0NaKzFCc0M7QUxvckN4Qzs7QWtCeGhFQTtFQUNFO0VBQ0E7RUFDQTtFaEJ3UkksZUFMSTtFZ0JoUlIsZ0Jia21CNEI7RWFqbUI1QixnQmJ5bUI0QjtFYXhtQjVCLDJCYjQzQnNDO0VhMzNCdEM7S0FBQTtVQUFBO0VBQ0EsbUNicTNCc0M7RWFwM0J0QztFQUNBO0VaR0U7RWFIRSx3RURNSjtBbEJzaEVGO0FtQnhoRU07RURoQk47SUNpQlE7RW5CMmhFTjtBQUNGO0FrQnpoRUU7RUFDRTtBbEIyaEVKO0FrQnpoRUk7RUFDRTtBbEIyaEVOO0FrQnRoRUU7RUFDRSwyQmJzMkJvQztFYXIyQnBDLG1DYmcyQm9DO0VhLzFCcEMsa0NiODJCb0M7RWE3MkJwQztFQUtFLGtEYmtoQmtCO0FMa2dEeEI7QWtCaGhFRTtFQU1FO0VBTUE7RUFLQTtBbEJvZ0VKO0FrQi8vREU7RUFDRTtFQUNBO0FsQmlnRUo7QWtCNy9ERTtFQUNFLGdDYjQwQm9DO0VhMTBCcEM7QWxCOC9ESjtBa0JqZ0VFO0VBQ0UsZ0NiNDBCb0M7RWExMEJwQztBbEI4L0RKO0FrQnQvREU7RUFFRSx3Q2I4eUJvQztFYTN5QnBDO0FsQnEvREo7QWtCai9ERTtFQUNFO0VBQ0E7RUFDQSwwQmJvckIwQjtFYW5yQjFCLDJCYnN5Qm9DO0VlcDRCdEMsdUNmcWlDZ0M7RWFyOEI5QjtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDYmdzQjBCO0VhL3JCMUI7RUN6RkUscUlEMEZGO0FsQm0vREo7QW1CemtFTTtFRDBFSjtJQ3pFTTtFbkI0a0VOO0FBQ0Y7QWtCci9ERTtFQUNFLHdDYjQ3QjhCO0FMMmpDbEM7O0FrQjkrREE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCYndmNEI7RWF2ZjVCLDJCYjJ4QnNDO0VhMXhCdEM7RUFDQTtFQUNBO0FsQmkvREY7QWtCLytERTtFQUNFO0FsQmkvREo7QWtCOStERTtFQUVFO0VBQ0E7QWxCKytESjs7QWtCcCtEQTtFQUNFLG1FYjR3QnNDO0VhM3dCdEM7RWhCeUlJLG1CQUxJO0VJdlFOO0FONG1FSjtBa0JyK0RFO0VBQ0U7RUFDQTtFQUNBLHlCYm9vQjBCO0FMbTJDOUI7O0FrQm4rREE7RUFDRSxpRWJnd0JzQztFYS92QnRDO0VoQjRISSxrQkFMSTtFSXZRTjtBTnduRUo7QWtCcCtERTtFQUNFO0VBQ0E7RUFDQSx1QmIybkIwQjtBTDIyQzlCOztBa0I5OURFO0VBQ0Usb0ViNnVCb0M7QUxvdkN4QztBa0I5OURFO0VBQ0UsbUViMHVCb0M7QUxzdkN4QztBa0I3OURFO0VBQ0UsaUVidXVCb0M7QUx3dkN4Qzs7QWtCMTlEQTtFQUNFLFdicXVCc0M7RWFwdUJ0QyxnRWI4dEJzQztFYTd0QnRDLGlCYmlsQjRCO0FMNDRDOUI7QWtCMzlERTtFQUNFO0FsQjY5REo7QWtCMTlERTtFQUNFO0VadkxBO0FOb3BFSjtBa0J6OURFO0VBQ0U7RVo1TEE7QU53cEVKO0FrQng5REU7RUFBb0IsK0RiOHNCa0I7QUw2d0N4QztBa0IxOURFO0VBQW9CLDZEYjhzQmtCO0FMK3dDeEM7O0FxQjVxRUE7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFbkJxUkksZUFMSTtFbUI3UVIsZ0JoQitsQjRCO0VnQjlsQjVCLGdCaEJzbUI0QjtFZ0JybUI1QiwyQmhCeTNCc0M7RWdCeDNCdEM7S0FBQTtVQUFBO0VBQ0EsbUNoQmszQnNDO0VnQmozQnRDO0VBQ0E7RUFDQSx5Q2hCKzlCa0M7RWdCOTlCbEMsMEJoQis5QmtDO0VnQjk5QmxDO0VmSEU7RWFIRSx3RUVTSjtBckI0cUVGO0FtQmpyRU07RUVmTjtJRmdCUTtFbkJvckVOO0FBQ0Y7QXFCL3FFRTtFQUNFLGtDaEJzM0JvQztFZ0JyM0JwQztFQUtFLGtEaEJpK0I0QjtBTDRzQ2xDO0FxQnpxRUU7RUFFRSxzQmhCNnVCMEI7RWdCNXVCMUI7QXJCMHFFSjtBcUJ2cUVFO0VBRUUsd0NoQnUxQm9DO0FMaTFDeEM7QXFCbnFFRTtFQUNFO0VBQ0E7QXJCcXFFSjs7QXFCanFFQTtFQUNFLG9CaEJzdUI0QjtFZ0JydUI1Qix1QmhCcXVCNEI7RWdCcHVCNUIsb0JoQnF1QjRCO0VIbGdCeEIsbUJBTEk7RUl2UU47QU4rc0VKOztBcUJqcUVBO0VBQ0UsbUJoQmt1QjRCO0VnQmp1QjVCLHNCaEJpdUI0QjtFZ0JodUI1QixrQmhCaXVCNEI7RUh0Z0J4QixrQkFMSTtFSXZRTjtBTnV0RUo7O0FxQi9wRUk7RUFDRTtBckJrcUVOOztBc0IxdUVBO0VBQ0U7RUFDQSxrQmpCcTZCd0M7RWlCcDZCeEMsbUJqQnE2QndDO0VpQnA2QnhDLHVCakJxNkJ3QztBTHcwQzFDO0FzQjN1RUU7RUFDRTtFQUNBO0F0QjZ1RUo7O0FzQnp1RUE7RUFDRSxvQmpCMjVCd0M7RWlCMTVCeEM7RUFDQTtBdEI0dUVGO0FzQjF1RUU7RUFDRTtFQUNBO0VBQ0E7QXRCNHVFSjs7QXNCeHVFQTtFQUNFO0VBRUE7RUFDQSxVakIwNEJ3QztFaUJ6NEJ4QyxXakJ5NEJ3QztFaUJ4NEJ4QztFQUNBO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDJEakIyNEJ3QztFaUIxNEJ4QztVQUFBO0F0QjB1RUY7QXNCdnVFRTtFaEIzQkU7QU5xd0VKO0FzQnR1RUU7RUFFRSxrQmpCbTRCc0M7QUxvMkMxQztBc0JwdUVFO0VBQ0UsdUJqQjAzQnNDO0FMNDJDMUM7QXNCbnVFRTtFQUNFLGtDakJzMUJvQztFaUJyMUJwQztFQUNBLGtEakI4Zm9CO0FMdXVEeEI7QXNCbHVFRTtFQUNFLHlCakI1Qk07RWlCNkJOLHFCakI3Qk07QUxpd0VWO0FzQmx1RUk7RUFJSTtBdEJpdUVSO0FzQjd0RUk7RUFJSTtBdEI0dEVSO0FzQnZ0RUU7RUFDRSx5QmpCakRNO0VpQmtETixxQmpCbERNO0VpQnVESjtBdEJxdEVOO0FzQmp0RUU7RUFDRTtFQUNBO0VBQ0EsWWpCazJCdUM7QUxpM0MzQztBc0I1c0VJO0VBQ0U7RUFDQSxZakJ5MUJxQztBTHEzQzNDOztBc0Joc0VBO0VBQ0UsbUJqQm8xQmdDO0FMKzJDbEM7QXNCanNFRTtFQUNFO0VBRUEsVWpCODBCOEI7RWlCNzBCOUI7RUFDQTtFQUNBO0VoQmpIQTtFYUhFLGlER3NIRjtBdEJrc0VKO0FtQnB6RU07RUcwR0o7SUh6R007RW5CdXpFTjtBQUNGO0FzQnJzRUk7RUFDRTtBdEJ1c0VOO0FzQnBzRUk7RUFDRSxpQ2pCNjBCNEI7RWlCeDBCMUI7QXRCa3NFUjtBc0I3ckVFO0VBQ0Usb0JqQnd6QjhCO0VpQnZ6QjlCO0F0QityRUo7QXNCN3JFSTtFQUNFO0VBQ0E7QXRCK3JFTjs7QXNCMXJFQTtFQUNFO0VBQ0Esa0JqQnN5QmdDO0FMdTVDbEM7O0FzQjFyRUE7RUFDRTtFQUNBO0VBQ0E7QXRCNnJFRjtBc0J6ckVJO0VBQ0U7RUFDQTtFQUNBLGFqQnNwQndCO0FMcWlEOUI7O0FzQnByRUk7RUFDRTtBdEJ1ckVOOztBdUIxMkVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7QXZCNjJFRjtBdUIzMkVFO0VBQ0U7QXZCNjJFSjtBdUJ6MkVJO0VBQTBCLGtFbEI4Z0NhO0FMODFDM0M7QXVCMzJFSTtFQUEwQixrRWxCNmdDYTtBTGkyQzNDO0F1QjMyRUU7RUFDRTtBdkI2MkVKO0F1QjEyRUU7RUFDRSxXbEIrL0J1QztFa0I5L0J2QyxZbEI4L0J1QztFa0I3L0J2QztFQUNBO1VBQUE7RUgxQkYseUJma0NRO0VrQk5OLFNsQjYvQnVDO0VDMWdDdkM7RWFIRSxvSEltQkY7RUpuQkUsNEdJbUJGO0F2QjIyRUo7QW1CMTNFTTtFSU1KO0lKTE07SUFBQTtFbkI2M0VOO0FBQ0Y7QXVCOTJFSTtFSGpDRiwwQ2Y4aEN5QztBTG8zQzNDO0F1QjUyRUU7RUFDRSxXbEJ3K0I4QjtFa0J2K0I5QixjbEJ3K0I4QjtFa0J2K0I5QjtFQUNBLGVsQnUrQjhCO0VrQnQrQjlCLHdDbEJ1K0I4QjtFa0J0K0I5QjtFakI3QkE7QU40NEVKO0F1QjEyRUU7RUFDRSxXbEJvK0J1QztFa0JuK0J2QyxZbEJtK0J1QztFa0JsK0J2QztPQUFBO0VIcERGLHlCZmtDUTtFa0JvQk4sU2xCbStCdUM7RUMxZ0N2QztFYUhFLGlISTZDRjtFSjdDRSw0R0k2Q0Y7QXZCMjJFSjtBbUJwNUVNO0VJaUNKO0lKaENNO0lBQUE7RW5CdTVFTjtBQUNGO0F1QjkyRUk7RUgzREYsMENmOGhDeUM7QUw4NEMzQztBdUI1MkVFO0VBQ0UsV2xCODhCOEI7RWtCNzhCOUIsY2xCODhCOEI7RWtCNzhCOUI7RUFDQSxlbEI2OEI4QjtFa0I1OEI5Qix3Q2xCNjhCOEI7RWtCNThCOUI7RWpCdkRBO0FOczZFSjtBdUIxMkVFO0VBQ0U7QXZCNDJFSjtBdUIxMkVJO0VBQ0UsMkNsQmc5QnFDO0FMNDVDM0M7QXVCejJFSTtFQUNFLDJDbEI0OEJxQztBTCs1QzNDOztBd0JsOEVBO0VBQ0U7QXhCcThFRjtBd0JuOEVFOzs7RUFHRSx1RG5Cd2lDb0M7RW1CdmlDcEMsMkRuQnVpQ29DO0VtQnRpQ3BDLGlCbkJ1aUNvQztBTDg1Q3hDO0F3Qmw4RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxWRSxnRUtXRjtBeEJvOEVKO0FtQjM4RU07RUtUSjtJTFVNO0VuQjg4RU47QUFDRjtBd0J0OEVFOztFQUVFO0F4Qnc4RUo7QXdCdDhFSTtFQUNFO0F4Qnk4RU47QXdCMThFSTs7RUFDRTtBeEJ5OEVOO0F3QnQ4RUk7RUFFRSxxQm5CMGdDa0M7RW1CemdDbEMsd0JuQjBnQ2tDO0FMKzdDeEM7QXdCNThFSTs7O0VBRUUscUJuQjBnQ2tDO0VtQnpnQ2xDLHdCbkIwZ0NrQztBTCs3Q3hDO0F3QnQ4RUk7O0VBQ0UscUJuQnFnQ2tDO0VtQnBnQ2xDLHdCbkJxZ0NrQztBTG84Q3hDO0F3QnI4RUU7RUFDRSxxQm5CKy9Cb0M7RW1COS9CcEMsd0JuQisvQm9DO0VtQjkvQnBDLHFCbkJndUIwQjtBTHV1RDlCO0F3Qmg4RUk7RUFDRSw4RG5CeS9Ca0M7QUw0OEN4QztBd0J0OEVJOzs7O0VBQ0UsOERuQnkvQmtDO0FMNDhDeEM7QXdCaDhFSTtFQUNFLDhEbkJtL0JrQztBTCs4Q3hDO0F3Qjc3RUk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhbkJ3K0JrQztFbUJ2K0JsQztFQUNBLG1DbkJxekJrQztFQ2gzQnBDO0FONC9FSjtBd0J2OEVJOztFQUNFO0VBQ0E7RUFDQTtFQUNBLGFuQncrQmtDO0VtQnYrQmxDO0VBQ0EsbUNuQnF6QmtDO0VDaDNCcEM7QU40L0VKO0F3Qjc3RUU7RUFDRSx3Q25Ca3pCb0M7QUw2b0R4QztBd0IzN0VJO0VBQ0U7QXhCNjdFTjtBd0J6N0VFOztFQUVFLGNuQmhGTztBTDJnRlg7O0F5QnJoRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6QndoRkY7QXlCdGhGRTs7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QXpCd2hGSjtBeUJwaEZFOzs7RUFHRTtBekJzaEZKO0F5QmhoRkU7RUFDRTtFQUNBO0F6QmtoRko7QXlCaGhGSTtFQUNFO0F6QmtoRk47O0F5QnZnRkE7RUFDRTtFQUNBO0VBQ0E7RXZCOE9JLGVBTEk7RXVCdk9SLGdCcEJ5akI0QjtFb0J4akI1QixnQnBCZ2tCNEI7RW9CL2pCNUIsMkJwQm0xQnNDO0VvQmwxQnRDO0VBQ0E7RUFDQSx1Q3BCMDZCc0M7RW9CejZCdEM7RW5CdENFO0FOaWpGSjs7QXlCamdGQTs7OztFQUlFO0V2QndOSSxrQkFMSTtFSXZRTjtBTjBqRko7O0F5QmpnRkE7Ozs7RUFJRTtFdkIrTUksbUJBTEk7RUl2UU47QU5ta0ZKOztBeUJqZ0ZBOztFQUVFO0F6Qm9nRkY7O0F5QnYvRUk7Ozs7RW5CakVBO0VBQ0E7QU4rakZKO0F5QnQvRUk7Ozs7RW5CMUVBO0VBQ0E7QU5za0ZKO0F5QmgvRUU7RUFDRTtFbkIxRUE7RUFDQTtBTjZqRko7QXlCaC9FRTs7RW5COUVFO0VBQ0E7QU5ra0ZKOztBMEIxbEZFO0VBQ0U7RUFDQTtFQUNBLG1CckJ1MEJvQztFSHJrQmxDLGtCQUxJO0V3QjFQTixpQ3JCa2pDcUI7QUwwaUR6Qjs7QTBCemxGRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V4QnFQRSxtQkFMSTtFd0I3T04sV3JCcWlDcUI7RXFCcGlDckIsbUNyQm9pQ3FCO0VDL2pDckI7QU51bkZKOztBMEJ2bEZJOzs7O0VBRUU7QTFCNGxGTjs7QTBCM29GSTtFQXFERSwrQ3JCdWhDbUI7RXFCcGhDakIsb0NyQjgxQmdDO0VxQjcxQmhDO0VBQ0E7RUFDQTtFQUNBO0ExQndsRlI7QTBCcmxGTTtFQUNFLCtDckI0Z0NpQjtFcUJ2Z0NmLDJEckJ1Z0NlO0FMNGtEekI7O0EwQnhwRkk7RUErRUksb0NyQnUwQmdDO0VxQnQwQmhDO0ExQjZrRlI7O0EwQjdwRkk7RUF1RkUsK0NyQnEvQm1CO0FMcWxEekI7QTBCdmtGUTtFQUVFO0VBQ0EsdUJyQnE1QjhCO0VxQnA1QjlCO0VBQ0E7QTFCd2tGVjtBMEJwa0ZNO0VBQ0UsK0NyQncrQmlCO0VxQm4rQmYsMkRyQm0rQmU7QUwrbER6Qjs7QTBCM3FGSTtFQWtISTtBMUI2akZSOztBMEIvcUZJO0VBeUhFLCtDckJtOUJtQjtBTHVtRHpCO0EwQnhqRk07RUFDRSw0Q3JCZzlCaUI7QUwwbUR6QjtBMEJ2akZNO0VBQ0UsMkRyQjQ4QmlCO0FMNm1EekI7QTBCdGpGTTtFQUNFLGlDckJ3OEJpQjtBTGduRHpCOztBMEJuakZJO0VBQ0U7QTFCc2pGTjs7QTBCaHNGSTs7Ozs7RUFvSk07QTFCb2pGVjs7QTBCcHJGRTtFQUNFO0VBQ0E7RUFDQSxtQnJCdTBCb0M7RUhya0JsQyxrQkFMSTtFd0IxUE4sbUNyQmtqQ3FCO0FMb29EekI7O0EwQm5yRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFeEJxUEUsbUJBTEk7RXdCN09OLFdyQnFpQ3FCO0VxQnBpQ3JCLGtDckJvaUNxQjtFQy9qQ3JCO0FOaXRGSjs7QTBCanJGSTs7OztFQUVFO0ExQnNyRk47O0EwQnJ1Rkk7RUFxREUsaURyQnVoQ21CO0VxQnBoQ2pCLG9DckI4MUJnQztFcUI3MUJoQztFQUNBO0VBQ0E7RUFDQTtBMUJrckZSO0EwQi9xRk07RUFDRSxpRHJCNGdDaUI7RXFCdmdDZiwwRHJCdWdDZTtBTHNxRHpCOztBMEJsdkZJO0VBK0VJLG9DckJ1MEJnQztFcUJ0MEJoQztBMUJ1cUZSOztBMEJ2dkZJO0VBdUZFLGlEckJxL0JtQjtBTCtxRHpCO0EwQmpxRlE7RUFFRTtFQUNBLHVCckJxNUI4QjtFcUJwNUI5QjtFQUNBO0ExQmtxRlY7QTBCOXBGTTtFQUNFLGlEckJ3K0JpQjtFcUJuK0JmLDBEckJtK0JlO0FMeXJEekI7O0EwQnJ3Rkk7RUFrSEk7QTFCdXBGUjs7QTBCendGSTtFQXlIRSxpRHJCbTlCbUI7QUxpc0R6QjtBMEJscEZNO0VBQ0UsOENyQmc5QmlCO0FMb3NEekI7QTBCanBGTTtFQUNFLDBEckI0OEJpQjtBTHVzRHpCO0EwQmhwRk07RUFDRSxtQ3JCdzhCaUI7QUwwc0R6Qjs7QTBCN29GSTtFQUNFO0ExQmdwRk47O0EwQjF4Rkk7Ozs7O0VBc0pNO0ExQjRvRlY7O0EyQnB5RkE7RUFFRTtFQUNBO0VBQ0E7RXpCdVJJLHdCQUxJO0V5QmhSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0V6QnNRSSxrQ0FMSTtFeUIvUFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtFckJqQkU7RWNmRixrQ09rQ3FCO0VSdEJqQixxSVF3Qko7QTNCa3lGRjtBbUJ0ekZNO0VRaEJOO0lSaUJRO0VuQnl6Rk47QUFDRjtBMkJyeUZFO0VBQ0U7RUFFQTtFQUNBO0EzQnN5Rko7QTJCbnlGRTtFQUVFO0VBQ0E7RUFDQTtBM0JveUZKO0EyQmp5RkU7RUFDRTtFUHJERix3Q09zRHVCO0VBQ3JCO0VBQ0E7RUFLRTtBM0IreEZOO0EyQjN4RkU7RUFDRTtFQUNBO0VBS0U7QTNCeXhGTjtBMkJyeEZFO0VBS0U7RUFDQTtFQUdBO0EzQml4Rko7QTJCOXdGSTtFQUtJO0EzQjR3RlI7QTJCdndGRTtFQUtJO0EzQnF3Rk47QTJCandGRTtFQUdFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTNCZ3dGSjs7QTJCcHZGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QnUyRkY7O0EyQnJ3RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUJ3M0ZGOztBMkJ0eEZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCeTRGRjs7QTJCdnlGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QjA1RkY7O0EyQnh6RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUIyNkZGOztBMkJ6MEZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCNDdGRjs7QTJCMTFGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QjY4RkY7O0EyQjMyRkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUI4OUZGOztBMkJsMkZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCczlGRjs7QTJCbjNGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QnUrRkY7O0EyQnA0RkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUJ3L0ZGOztBMkJyNUZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCeWdHRjs7QTJCdDZGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QjBoR0Y7O0EyQnY3RkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUIyaUdGOztBMkJ4OEZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCNGpHRjs7QTJCejlGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QjZrR0Y7O0EyQjk5RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSwwQnRCOFF3QztBTGt0RjFDO0EyQnQ5RkU7RUFDRTtBM0J3OUZKO0EyQnI5RkU7RUFDRTtBM0J1OUZKOztBMkI1OEZBO0VDakpFO0VBQ0E7RTFCOE5JLDJCQUxJO0UwQnZOUjtBNUJpbUdGOztBMkIvOEZBO0VDckpFO0VBQ0E7RTFCOE5JLDRCQUxJO0UwQnZOUjtBNUJ3bUdGOztBNkIzcUdBO0VWZ0JNLGdDVWZKO0E3QjhxR0Y7QW1CM3BHTTtFVXBCTjtJVnFCUTtFbkI4cEdOO0FBQ0Y7QTZCanJHRTtFQUNFO0E3Qm1yR0o7O0E2QjdxR0U7RUFDRTtBN0JnckdKOztBNkI1cUdBO0VBQ0U7RUFDQTtFVkRJLDZCVUVKO0E3QitxR0Y7QW1CN3FHTTtFVUxOO0lWTVE7RW5CZ3JHTjtBQUNGO0E2QmxyR0U7RUFDRTtFQUNBO0VWTkUsNEJVT0Y7QTdCb3JHSjtBbUJ2ckdNO0VVQUo7SVZDTTtFbkIwckdOO0FBQ0Y7O0E4Qi9zR0E7Ozs7OztFQU1FO0E5Qmt0R0Y7O0E4Qi9zR0E7RUFDRTtBOUJrdEdGO0ErQjFyR0k7RUFDRTtFQUNBLG9CMUI2aEJ3QjtFMEI1aEJ4Qix1QjFCMmhCd0I7RTBCMWhCeEI7RUFyQ0o7RUFDQTtFQUNBO0VBQ0E7QS9Ca3VHRjtBK0J4cUdJO0VBQ0U7QS9CMHFHTjs7QThCeHRHQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVCdVFJLDZCQUxJO0U0QmhRUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U1QjBPSSx1Q0FMSTtFNEJuT1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V4QnpDRTtBTmt3R0o7QThCcnRHRTtFQUNFO0VBQ0E7RUFDQTtBOUJ1dEdKOztBOEIvckdJO0VBQ0U7QTlCa3NHTjtBOEJoc0dNO0VBQ0U7RUFDQTtBOUJrc0dSOztBOEI5ckdJO0VBQ0U7QTlCaXNHTjtBOEIvckdNO0VBQ0U7RUFDQTtBOUJpc0dSOztBVzN1R0k7RW1CNEJBO0lBQ0U7RTlCbXRHSjtFOEJqdEdJO0lBQ0U7SUFDQTtFOUJtdEdOO0U4Qi9zR0U7SUFDRTtFOUJpdEdKO0U4Qi9zR0k7SUFDRTtJQUNBO0U5Qml0R047QUFDRjtBVzV2R0k7RW1CNEJBO0lBQ0U7RTlCbXVHSjtFOEJqdUdJO0lBQ0U7SUFDQTtFOUJtdUdOO0U4Qi90R0U7SUFDRTtFOUJpdUdKO0U4Qi90R0k7SUFDRTtJQUNBO0U5Qml1R047QUFDRjtBVzV3R0k7RW1CNEJBO0lBQ0U7RTlCbXZHSjtFOEJqdkdJO0lBQ0U7SUFDQTtFOUJtdkdOO0U4Qi91R0U7SUFDRTtFOUJpdkdKO0U4Qi91R0k7SUFDRTtJQUNBO0U5Qml2R047QUFDRjtBVzV4R0k7RW1CNEJBO0lBQ0U7RTlCbXdHSjtFOEJqd0dJO0lBQ0U7SUFDQTtFOUJtd0dOO0U4Qi92R0U7SUFDRTtFOUJpd0dKO0U4Qi92R0k7SUFDRTtJQUNBO0U5Qml3R047QUFDRjtBVzV5R0k7RW1CNEJBO0lBQ0U7RTlCbXhHSjtFOEJqeEdJO0lBQ0U7SUFDQTtFOUJteEdOO0U4Qi93R0U7SUFDRTtFOUJpeEdKO0U4Qi93R0k7SUFDRTtJQUNBO0U5Qml4R047QUFDRjtBOEJ4d0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlCMHdHSjtBK0I5MUdJO0VBQ0U7RUFDQSxvQjFCNmhCd0I7RTBCNWhCeEIsdUIxQjJoQndCO0UwQjFoQnhCO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0EvQiszR0Y7QStCNTBHSTtFQUNFO0EvQjgwR047O0E4Qjl3R0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Qml4R0o7QStCbjNHSTtFQUNFO0VBQ0Esb0IxQjZoQndCO0UwQjVoQnhCLHVCMUIyaEJ3QjtFMEIxaEJ4QjtFQXZCSjtFQUNBO0VBQ0E7RUFDQTtBL0I2NEdGO0ErQmoyR0k7RUFDRTtBL0JtMkdOO0E4Qnp4R0k7RUFDRTtBOUIyeEdOOztBOEJyeEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJ3eEdKO0ErQjM0R0k7RUFDRTtFQUNBLG9CMUI2aEJ3QjtFMEI1aEJ4Qix1QjFCMmhCd0I7RTBCMWhCeEI7QS9CNjRHTjtBK0JsNEdNO0VBQ0U7QS9CbzRHUjtBK0JqNEdNO0VBQ0U7RUFDQSxxQjFCMGdCc0I7RTBCemdCdEIsdUIxQndnQnNCO0UwQnZnQnRCO0VBbkNOO0VBQ0E7RUFDQTtBL0J1NkdGO0ErQmo0R0k7RUFDRTtBL0JtNEdOO0E4Qnh5R0k7RUFDRTtBOUIweUdOOztBOEJueUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUJzeUdGOztBOEJoeUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnpCeWI0QjtFeUJ4YjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFeEJ0S0U7QU4wOEdKO0E4Qmp5R0U7RUFFRTtFVjFMRixrRFU0THVCO0E5Qml5R3pCO0E4Qjl4R0U7RUFFRTtFQUNBO0VWbE1GLG1EVW1NdUI7QTlCK3hHekI7QThCNXhHRTtFQUVFO0VBQ0E7RUFDQTtBOUI2eEdKOztBOEJ2eEdBO0VBQ0U7QTlCMHhHRjs7QThCdHhHQTtFQUNFO0VBQ0E7RUFDQTtFNUJtRUksbUJBTEk7RTRCNURSO0VBQ0E7QTlCeXhHRjs7QThCcnhHQTtFQUNFO0VBQ0E7RUFDQTtBOUJ3eEdGOztBOEJweEdBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnN4R0Y7O0FnQ3hnSEE7RUFFRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQ3VnSEY7O0FnQ3BnSEE7RUFDRTtFQUNBO0U5QnNRSSx1Q0FMSTtFOEIvUFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFYmZJLHVHYWdCSjtBaEN1Z0hGO0FtQm5oSE07RWFHTjtJYkZRO0VuQnNoSE47QUFDRjtBZ0MxZ0hFO0VBRUU7QWhDMmdISjtBZ0N2Z0hFO0VBQ0U7RUFDQSxrRDNCa2hCb0I7QUx1L0Z4QjtBZ0NyZ0hFO0VBRUU7RUFDQTtFQUNBO0FoQ3NnSEo7O0FnQzkvR0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FoQzgvR0Y7QWdDNS9HRTtFQUNFO0VBQ0E7RTFCN0NBO0VBQ0E7QU40aUhKO0FnQzcvR0k7RUFHRTtFQUNBO0FoQzYvR047QWdDei9HRTs7RUFFRTtFQUNBO0VBQ0E7QWhDMi9HSjtBZ0N4L0dFO0VBRUU7RTFCakVBO0VBQ0E7QU4yakhKOztBZ0NoL0dBO0VBRUU7RUFDQTtFQUNBO0FoQ2svR0Y7QWdDLytHRTtFMUI1RkU7QU44a0hKO0FnQzkrR0U7O0VBRUU7RVpqSEYsb0RZa0h1QjtBaENnL0d6Qjs7QWdDditHQTtFQUVFO0VBQ0E7RUFDQTtFQUdBO0FoQ3UrR0Y7QWdDcitHRTtFQUNFO0VBQ0E7RUFDQTtBaEN1K0dKO0FnQ3IrR0k7RUFFRTtBaENzK0dOO0FnQ2wrR0U7O0VBRUUsZ0IzQjBkMEI7RTJCemQxQjtFQUNBO0FoQ28rR0o7O0FnQzE5R0U7O0VBRUU7RUFDQTtBaEM2OUdKOztBZ0N4OUdFOztFQUVFO0VBQ0E7RUFDQTtBaEMyOUdKOztBZ0NyOUdFOztFQUNFO0FoQ3k5R0o7O0FnQy84R0U7RUFDRTtBaENrOUdKO0FnQ2g5R0U7RUFDRTtBaENrOUdKOztBaUNocEhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQ2twSEY7O0FpQzlvSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UvQjRQSSxlQUxJO0UrQnJQUjtFQUNBO0VBQ0E7RUFDQTtFM0JyQkU7RTJCdUJGO0VkMUJJLDBDYzJCSjtBakNpcEhGO0FtQnhxSE07RWNVTjtJZFRRO0VuQjJxSE47QUFDRjtBaUNwcEhFO0VBQ0U7RUFDQTtFQUNBO0FqQ3NwSEo7QWlDcHBISTtFQUNFO0VBQ0E7QWpDc3BITjtBaUNqcEhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFZGpERSxtRGNrREY7QWpDbXBISjtBbUJqc0hNO0VjcUNKO0lkcENNO0VuQm9zSE47QUFDRjtBaUNycEhFO0VBQ0U7QWpDdXBISjtBaUNwcEhFO0VBQ0U7RUFDQTtFQUNBO0FqQ3NwSEo7O0FpQ2xwSEE7RUFDRTtBakNxcEhGOztBaUNscEhBO0VBQ0U7RUFDQTtFQUNBO0FqQ3FwSEY7QWlDbnBIRTtFM0I3REU7RUFDQTtBTm10SEo7QWlDcHBISTtFM0JoRUE7RUFDQTtBTnV0SEo7QWlDbnBIRTtFQUNFO0FqQ3FwSEo7QWlDanBIRTtFM0I1REU7RUFDQTtBTmd0SEo7QWlDanBITTtFM0JoRUY7RUFDQTtBTm90SEo7QWlDaHBISTtFM0JyRUE7RUFDQTtBTnd0SEo7O0FpQzlvSEE7RUFDRTtBakNpcEhGOztBaUN4b0hFO0VBQ0U7RUFDQTtFM0I5R0E7QU4wdkhKO0FpQ3pvSEk7RUFBZ0I7QWpDNG9IcEI7QWlDM29ISTtFQUFlO0FqQzhvSG5CO0FpQzNvSEk7OztFM0JySEE7QU5xd0hKOztBaUNyb0hJO0VBQ0U7RUFDQTtBakN3b0hOOztBa0N4eEhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBLFU3QnVwRDJCO0U2QnRwRDNCLFc3QnNwRDJCO0U2QnJwRDNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVCSkU7RTRCTUY7QWxDd3hIRjtBa0NyeEhFO0VBQ0U7RUFDQTtFQUNBO0FsQ3V4SEo7QWtDcHhIRTtFQUNFO0VBQ0E7RUFDQTtBbENzeEhKO0FrQ254SEU7RUFFRTtFQUNBO0tBQUE7VUFBQTtFQUNBO0FsQ294SEo7O0FrQzV3SEE7RUFIRTtBbENteEhGOztBa0M1d0hBOztFQUVFO0FsQyt3SEY7O0FHMXpISTtFK0JrQ0Y7QWxDNHhIRjs7QW1DcDBIQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FuQ2swSEY7O0FtQzN6SEE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBbkM2ekhGO0FtQzF6SEU7RUFDRSw4QjlCbThDZ0M7RWNoL0M5QixtQ2dCOENGO0FuQzR6SEo7QW1CdDJITTtFZ0J3Q0o7SWhCdkNNO0VuQnkySE47QUFDRjtBbUMvekhFO0VBQ0UsZTlCZzhDZ0M7QUxpNEVwQztBbUM3ekhFO0VBQ0Usc0I5QjY3Q2dDO0FMazRFcEM7O0FtQzN6SEE7RUFDRTtBbkM4ekhGO0FtQzV6SEU7RUFDRTtFQUNBO0FuQzh6SEo7QW1DM3pIRTtFQUNFO0FuQzZ6SEo7O0FtQ3p6SEE7RUFDRTtFQUNBO0VBQ0E7QW5DNHpIRjs7QW1DeHpIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFN0JyRkU7RTZCeUZGO0FuQ3d6SEY7O0FtQ3B6SEE7RUFFRTtFQUNBO0VBQ0E7RUNsSEE7RUFDQTtFQUNBO0VBQ0Esa0NEa0gwQjtFQ2pIMUI7RUFDQTtFQUNBLHVDRCtHNEQ7QW5DMHpIOUQ7QW9DdDZIRTtFQUFTO0FwQ3k2SFg7QW9DeDZIRTtFQUFTLG1DRDJHaUY7QW5DZzBINUY7O0FtQzN6SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U3QnJHRTtFQUNBO0FObzZISjtBbUM3ekhFO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBbkM4ekhKOztBbUN6ekhBO0VBQ0U7RUFDQTtBbkM0ekhGOztBbUN2ekhBO0VBQ0U7RUFHQTtFQUNBO0FuQ3d6SEY7O0FtQ3B6SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U3QjdIRTtFQUNBO0FOcTdISjtBbUNuekhFO0VBQ0U7QW5DcXpISjs7QVdwNkhJO0V3QnFIRjtJQUNFO0lBQ0E7RW5DbXpIRjtFbUMveUhBO0lBQ0U7SUFDQTtJQUNBO0VuQ2l6SEY7RW1DOXlIQTtJQUNFO0VuQ2d6SEY7QUFDRjtBV243SEk7RXdCdUlGOztJQUVFO0VuQyt5SEY7QUFDRjtBV3o3SEk7RXdCOElGO0lBQ0U7RW5DOHlIRjtBQUNGO0FtQ3J5SEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkN1eUhOO0FtQ3J5SE07RUFDRTtFQUNBO0U3QjdNSjtBTnEvSEo7QW1DcHlITTs7RTdCak5GO0FOeS9ISjtBbUNueUhNO0VBQ0U7QW5DcXlIUjs7QVduOEhJO0V3QjRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuQzJ6SEo7RW1DenpISTtJQUNFO0lBQ0E7STdCN01KO0VOeWdJRjtFbUN4ekhJOztJN0JqTkY7RU42Z0lGO0VtQ3Z6SEk7SUFDRTtFbkN5ekhOO0FBQ0Y7QVd4OUhJO0V3QjRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuQyswSEo7RW1DNzBISTtJQUNFO0lBQ0E7STdCN01KO0VONmhJRjtFbUM1MEhJOztJN0JqTkY7RU5paUlGO0VtQzMwSEk7SUFDRTtFbkM2MEhOO0FBQ0Y7QVc1K0hJO0V3QjRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuQ20ySEo7RW1DajJISTtJQUNFO0lBQ0E7STdCN01KO0VOaWpJRjtFbUNoMkhJOztJN0JqTkY7RU5xaklGO0VtQy8xSEk7SUFDRTtFbkNpMkhOO0FBQ0Y7QVdoZ0lJO0V3QjRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuQ3UzSEo7RW1DcjNISTtJQUNFO0lBQ0E7STdCN01KO0VOcWtJRjtFbUNwM0hJOztJN0JqTkY7RU55a0lGO0VtQ24zSEk7SUFDRTtFbkNxM0hOO0FBQ0Y7QVdwaElJO0V3QjRJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuQzI0SEo7RW1DejRISTtJQUNFO0lBQ0E7STdCN01KO0VOeWxJRjtFbUN4NEhJOztJN0JqTkY7RU42bElGO0VtQ3Y0SEk7SUFDRTtFbkN5NEhOO0FBQ0Y7QXFDaG5JQTs7RUNJRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Q2duSUY7QXNDN21JRTs7RUFDRTtBdENnbklKO0FzQzVtSUU7O0VBQ0U7QXRDK21JSjs7QXVDcm9JQTtFQUNFO0VBQ0E7QXZDd29JRjtBdUN0b0lFO0VBQ0U7RUFDQTtFQUNBO0F2Q3dvSUo7QXVDcm9JRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDdW9JSjs7QXVDbG9JRTtFQUNFO0F2Q3FvSUo7O0F1Q3RvSUU7RUFDRTtBdkN5b0lKOztBdUMxb0lFO0VBQ0U7QXZDNm9JSjs7QXVDOW9JRTtFQUNFO0F2Q2lwSUo7O0F3Q3RtSVE7RUFPSTtBeENtbUlaOztBd0MxbUlRO0VBT0k7QXhDdW1JWjs7QXdDOW1JUTtFQU9JO0F4QzJtSVo7O0F3Q2xuSVE7RUFPSTtBeEMrbUlaOztBd0N0bklRO0VBT0k7QXhDbW5JWjs7QXdDMW5JUTtFQU9JO0F4Q3VuSVo7O0F3QzluSVE7RUFPSTtBeEMybklaOztBd0Nsb0lRO0VBT0k7QXhDK25JWjs7QXdDdG9JUTtFQU9JO0F4Q21vSVo7O0F3QzFvSVE7RUFPSTtLQUFBO0F4Q3VvSVo7O0F3QzlvSVE7RUFPSTtLQUFBO0F4QzJvSVo7O0F3Q2xwSVE7RUFPSTtLQUFBO0F4QytvSVo7O0F3Q3RwSVE7RUFPSTtLQUFBO0F4Q21wSVo7O0F3QzFwSVE7RUFPSTtLQUFBO0F4Q3VwSVo7O0F3QzlwSVE7RUFPSTtBeEMycElaOztBd0NscUlRO0VBT0k7QXhDK3BJWjs7QXdDdHFJUTtFQU9JO0F4Q21xSVo7O0F3QzFxSVE7RUFPSTtBeEN1cUlaOztBd0M5cUlRO0VBT0k7QXhDMnFJWjs7QXdDbHJJUTtFQU9JO0F4QytxSVo7O0F3Q3RySVE7RUFPSTtBeENtcklaOztBd0MxcklRO0VBT0k7QXhDdXJJWjs7QXdDOXJJUTtFQU9JO0F4QzJySVo7O0F3Q2xzSVE7RUFPSTtBeEMrcklaOztBd0N0c0lRO0VBT0k7QXhDbXNJWjs7QXdDMXNJUTtFQU9JO0F4Q3VzSVo7O0F3QzlzSVE7RUFPSTtBeEMyc0laOztBd0NsdElRO0VBT0k7QXhDK3NJWjs7QXdDdHRJUTtFQU9JO0F4Q210SVo7O0F3QzF0SVE7RUFPSTtBeEN1dElaOztBd0M5dElRO0VBT0k7QXhDMnRJWjs7QXdDbHVJUTtFQU9JO0F4Qyt0SVo7O0F3Q3R1SVE7RUFPSTtBeENtdUlaOztBd0MxdUlRO0VBT0k7QXhDdXVJWjs7QXdDOXVJUTtFQU9JO0F4QzJ1SVo7O0F3Q2x2SVE7RUFPSTtBeEMrdUlaOztBd0N0dklRO0VBT0k7QXhDbXZJWjs7QXdDMXZJUTtFQU9JO0F4Q3V2SVo7O0F3Qzl2SVE7RUFPSTtBeEMydklaOztBd0Nsd0lRO0VBT0k7QXhDK3ZJWjs7QXdDdHdJUTtFQU9JO0F4Q213SVo7O0F3QzF3SVE7RUFPSTtBeEN1d0laOztBd0M5d0lRO0VBT0k7QXhDMndJWjs7QXdDbHhJUTtFQU9JO0F4Qyt3SVo7O0F3Q3R4SVE7RUFPSTtBeENteElaOztBd0MxeElRO0VBT0k7QXhDdXhJWjs7QXdDeHlJUTtFQUNFO0F4QzJ5SVY7O0F3QzV5SVE7RUFDRTtBeEMreUlWOztBd0NoeklRO0VBQ0U7QXhDbXpJVjs7QXdDcHpJUTtFQUNFO0F4Q3V6SVY7O0F3Q3h6SVE7RUFDRTtBeEMyeklWOztBd0M1eklRO0VBQ0U7QXhDK3pJVjs7QXdDaDBJUTtFQUNFO0F4Q20wSVY7O0F3Q3AwSVE7RUFDRTtBeEN1MElWOztBd0M5eklRO0VBT0k7QXhDMnpJWjs7QXdDbDBJUTtFQU9JO0F4Qyt6SVo7O0F3Q3QwSVE7RUFPSTtBeENtMElaOztBd0MxMElRO0VBT0k7QXhDdTBJWjs7QXdDOTBJUTtFQU9JO0F4QzIwSVo7O0F3Q2wxSVE7RUFPSTtBeEMrMElaOztBd0N0MUlRO0VBT0k7QXhDbTFJWjs7QXdDMTFJUTtFQU9JO0F4Q3UxSVo7O0F3QzkxSVE7RUFPSTtBeEMyMUlaOztBd0NsMklRO0VBT0k7QXhDKzFJWjs7QXdDdDJJUTtFQU9JO0F4Q20ySVo7O0F3QzEySVE7RUFPSTtBeEN1MklaOztBd0M5MklRO0VBT0k7QXhDMjJJWjs7QXdDbDNJUTtFQU9JO0F4QysySVo7O0F3Q3QzSVE7RUFPSTtBeENtM0laOztBd0MxM0lRO0VBT0k7QXhDdTNJWjs7QXdDOTNJUTtFQU9JO0F4QzIzSVo7O0F3Q2w0SVE7RUFPSTtBeEMrM0laOztBd0N0NElRO0VBT0k7QXhDbTRJWjs7QXdDMTRJUTtFQU9JO0F4Q3U0SVo7O0F3Qzk0SVE7RUFPSTtBeEMyNElaOztBd0NsNUlRO0VBT0k7QXhDKzRJWjs7QXdDdDVJUTtFQU9JO0F4Q201SVo7O0F3QzE1SVE7RUFPSTtBeEN1NUlaOztBd0M5NUlRO0VBT0k7QXhDMjVJWjs7QXdDbDZJUTtFQU9JO0F4Qys1SVo7O0F3Q3Q2SVE7RUFPSTtBeENtNklaOztBd0MxNklRO0VBT0k7QXhDdTZJWjs7QXdDOTZJUTtFQU9JO0F4QzI2SVo7O0F3Q2w3SVE7RUFPSTtBeEMrNklaOztBd0N0N0lRO0VBSVE7RUFHSjtBeENvN0laOztBd0MzN0lRO0VBSVE7RUFHSjtBeEN5N0laOztBd0NoOElRO0VBSVE7RUFHSjtBeEM4N0laOztBd0NyOElRO0VBSVE7RUFHSjtBeENtOElaOztBd0MxOElRO0VBSVE7RUFHSjtBeEN3OElaOztBd0MvOElRO0VBSVE7RUFHSjtBeEM2OElaOztBd0NwOUlRO0VBSVE7RUFHSjtBeENrOUlaOztBd0N6OUlRO0VBSVE7RUFHSjtBeEN1OUlaOztBd0M5OUlRO0VBSVE7RUFHSjtBeEM0OUlaOztBd0NuK0lRO0VBSVE7RUFHSjtBeENpK0laOztBd0N4K0lRO0VBT0k7QXhDcStJWjs7QXdDNStJUTtFQU9JO0F4Q3krSVo7O0F3Q2gvSVE7RUFPSTtBeEM2K0laOztBd0NwL0lRO0VBT0k7QXhDaS9JWjs7QXdDeC9JUTtFQU9JO0F4Q3EvSVo7O0F3QzUvSVE7RUFPSTtBeEN5L0laOztBd0NoZ0pRO0VBT0k7QXhDNi9JWjs7QXdDcGdKUTtFQU9JO0F4Q2lnSlo7O0F3Q3hnSlE7RUFPSTtBeENxZ0paOztBd0M1Z0pRO0VBT0k7QXhDeWdKWjs7QXdDaGhKUTtFQU9JO0F4QzZnSlo7O0F3Q3BoSlE7RUFPSTtBeENpaEpaOztBd0N4aEpRO0VBT0k7QXhDcWhKWjs7QXdDdGlKUTtFQUNFO0F4Q3lpSlY7O0F3QzFpSlE7RUFDRTtBeEM2aUpWOztBd0M5aUpRO0VBQ0U7QXhDaWpKVjs7QXdDbGpKUTtFQUNFO0F4Q3FqSlY7O0F3Q3RqSlE7RUFDRTtBeEN5akpWOztBd0NoakpRO0VBT0k7QXhDNmlKWjs7QXdDcGpKUTtFQU9JO0F4Q2lqSlo7O0F3Q3hqSlE7RUFPSTtBeENxakpaOztBd0M1akpRO0VBT0k7QXhDeWpKWjs7QXdDaGtKUTtFQU9JO0F4QzZqSlo7O0F3Q3BrSlE7RUFPSTtBeENpa0paOztBd0N4a0pRO0VBT0k7QXhDcWtKWjs7QXdDNWtKUTtFQU9JO0F4Q3lrSlo7O0F3Q2hsSlE7RUFPSTtBeEM2a0paOztBd0NwbEpRO0VBT0k7QXhDaWxKWjs7QXdDeGxKUTtFQU9JO0F4Q3FsSlo7O0F3QzVsSlE7RUFPSTtBeEN5bEpaOztBd0NobUpRO0VBT0k7QXhDNmxKWjs7QXdDcG1KUTtFQU9JO0F4Q2ltSlo7O0F3Q3htSlE7RUFPSTtBeENxbUpaOztBd0M1bUpRO0VBT0k7QXhDeW1KWjs7QXdDaG5KUTtFQU9JO0F4QzZtSlo7O0F3Q3BuSlE7RUFPSTtBeENpbkpaOztBd0N4bkpRO0VBT0k7QXhDcW5KWjs7QXdDNW5KUTtFQU9JO0F4Q3luSlo7O0F3Q2hvSlE7RUFPSTtBeEM2bkpaOztBd0Nwb0pRO0VBT0k7QXhDaW9KWjs7QXdDeG9KUTtFQU9JO0F4Q3FvSlo7O0F3QzVvSlE7RUFPSTtBeEN5b0paOztBd0NocEpRO0VBT0k7QXhDNm9KWjs7QXdDcHBKUTtFQU9JO0F4Q2lwSlo7O0F3Q3hwSlE7RUFPSTtBeENxcEpaOztBd0M1cEpRO0VBT0k7QXhDeXBKWjs7QXdDaHFKUTtFQU9JO0F4QzZwSlo7O0F3Q3BxSlE7RUFPSTtBeENpcUpaOztBd0N4cUpRO0VBT0k7QXhDcXFKWjs7QXdDNXFKUTtFQU9JO0F4Q3lxSlo7O0F3Q2hySlE7RUFPSTtBeEM2cUpaOztBd0NwckpRO0VBT0k7QXhDaXJKWjs7QXdDeHJKUTtFQU9JO0F4Q3FySlo7O0F3QzVySlE7RUFPSTtBeEN5ckpaOztBd0Noc0pRO0VBT0k7QXhDNnJKWjs7QXdDcHNKUTtFQU9JO0F4Q2lzSlo7O0F3Q3hzSlE7RUFPSTtBeENxc0paOztBd0M1c0pRO0VBT0k7QXhDeXNKWjs7QXdDaHRKUTtFQU9JO0F4QzZzSlo7O0F3Q3B0SlE7RUFPSTtBeENpdEpaOztBd0N4dEpRO0VBT0k7QXhDcXRKWjs7QXdDNXRKUTtFQU9JO0F4Q3l0Slo7O0F3Q2h1SlE7RUFPSTtBeEM2dEpaOztBd0NwdUpRO0VBT0k7QXhDaXVKWjs7QXdDeHVKUTtFQU9JO0F4Q3F1Slo7O0F3QzV1SlE7RUFPSTtBeEN5dUpaOztBd0NodkpRO0VBT0k7QXhDNnVKWjs7QXdDcHZKUTtFQU9JO0F4Q2l2Slo7O0F3Q3h2SlE7RUFPSTtBeENxdkpaOztBd0M1dkpRO0VBT0k7QXhDeXZKWjs7QXdDaHdKUTtFQU9JO0F4QzZ2Slo7O0F3Q3B3SlE7RUFPSTtBeENpd0paOztBd0N4d0pRO0VBT0k7QXhDcXdKWjs7QXdDNXdKUTtFQU9JO0F4Q3l3Slo7O0F3Q2h4SlE7RUFPSTtBeEM2d0paOztBd0NweEpRO0VBT0k7QXhDaXhKWjs7QXdDeHhKUTtFQU9JO0F4Q3F4Slo7O0F3QzV4SlE7RUFPSTtBeEN5eEpaOztBd0NoeUpRO0VBT0k7QXhDNnhKWjs7QXdDcHlKUTtFQU9JO0F4Q2l5Slo7O0F3Q3h5SlE7RUFPSTtBeENxeUpaOztBd0M1eUpRO0VBT0k7QXhDeXlKWjs7QXdDaHpKUTtFQU9JO0F4QzZ5Slo7O0F3Q3B6SlE7RUFPSTtBeENpekpaOztBd0N4ekpRO0VBT0k7RUFBQTtBeENzekpaOztBd0M3ekpRO0VBT0k7RUFBQTtBeEMyekpaOztBd0NsMEpRO0VBT0k7RUFBQTtBeENnMEpaOztBd0N2MEpRO0VBT0k7RUFBQTtBeENxMEpaOztBd0M1MEpRO0VBT0k7RUFBQTtBeEMwMEpaOztBd0NqMUpRO0VBT0k7RUFBQTtBeEMrMEpaOztBd0N0MUpRO0VBT0k7RUFBQTtBeENvMUpaOztBd0MzMUpRO0VBT0k7RUFBQTtBeEN5MUpaOztBd0NoMkpRO0VBT0k7RUFBQTtBeEM4MUpaOztBd0NyMkpRO0VBT0k7RUFBQTtBeENtMkpaOztBd0MxMkpRO0VBT0k7RUFBQTtBeEN3MkpaOztBd0MvMkpRO0VBT0k7RUFBQTtBeEM2MkpaOztBd0NwM0pRO0VBT0k7RUFBQTtBeENrM0paOztBd0N6M0pRO0VBT0k7RUFBQTtBeEN1M0paOztBd0M5M0pRO0VBT0k7QXhDMjNKWjs7QXdDbDRKUTtFQU9JO0F4QyszSlo7O0F3Q3Q0SlE7RUFPSTtBeENtNEpaOztBd0MxNEpRO0VBT0k7QXhDdTRKWjs7QXdDOTRKUTtFQU9JO0F4QzI0Slo7O0F3Q2w1SlE7RUFPSTtBeEMrNEpaOztBd0N0NUpRO0VBT0k7QXhDbTVKWjs7QXdDMTVKUTtFQU9JO0F4Q3U1Slo7O0F3Qzk1SlE7RUFPSTtBeEMyNUpaOztBd0NsNkpRO0VBT0k7QXhDKzVKWjs7QXdDdDZKUTtFQU9JO0F4Q202Slo7O0F3QzE2SlE7RUFPSTtBeEN1NkpaOztBd0M5NkpRO0VBT0k7QXhDMjZKWjs7QXdDbDdKUTtFQU9JO0F4Qys2Slo7O0F3Q3Q3SlE7RUFPSTtBeENtN0paOztBd0MxN0pRO0VBT0k7QXhDdTdKWjs7QXdDOTdKUTtFQU9JO0F4QzI3Slo7O0F3Q2w4SlE7RUFPSTtBeEMrN0paOztBd0N0OEpRO0VBT0k7QXhDbThKWjs7QXdDMThKUTtFQU9JO0F4Q3U4Slo7O0F3Qzk4SlE7RUFPSTtBeEMyOEpaOztBd0NsOUpRO0VBT0k7QXhDKzhKWjs7QXdDdDlKUTtFQU9JO0F4Q205Slo7O0F3QzE5SlE7RUFPSTtBeEN1OUpaOztBd0M5OUpRO0VBT0k7QXhDMjlKWjs7QXdDbCtKUTtFQU9JO0F4Qys5Slo7O0F3Q3QrSlE7RUFPSTtBeENtK0paOztBd0MxK0pRO0VBT0k7QXhDdStKWjs7QXdDOStKUTtFQU9JO0F4QzIrSlo7O0F3Q2wvSlE7RUFPSTtBeEMrK0paOztBd0N0L0pRO0VBT0k7QXhDbS9KWjs7QXdDMS9KUTtFQU9JO0F4Q3UvSlo7O0F3QzkvSlE7RUFPSTtBeEMyL0paOztBd0NsZ0tRO0VBT0k7QXhDKy9KWjs7QXdDdGdLUTtFQU9JO0VBQUE7QXhDb2dLWjs7QXdDM2dLUTtFQU9JO0VBQUE7QXhDeWdLWjs7QXdDaGhLUTtFQU9JO0VBQUE7QXhDOGdLWjs7QXdDcmhLUTtFQU9JO0VBQUE7QXhDbWhLWjs7QXdDMWhLUTtFQU9JO0VBQUE7QXhDd2hLWjs7QXdDL2hLUTtFQU9JO0VBQUE7QXhDNmhLWjs7QXdDcGlLUTtFQU9JO0VBQUE7QXhDa2lLWjs7QXdDemlLUTtFQU9JO0VBQUE7QXhDdWlLWjs7QXdDOWlLUTtFQU9JO0VBQUE7QXhDNGlLWjs7QXdDbmpLUTtFQU9JO0VBQUE7QXhDaWpLWjs7QXdDeGpLUTtFQU9JO0VBQUE7QXhDc2pLWjs7QXdDN2pLUTtFQU9JO0VBQUE7QXhDMmpLWjs7QXdDbGtLUTtFQU9JO0F4QytqS1o7O0F3Q3RrS1E7RUFPSTtBeENta0taOztBd0Mxa0tRO0VBT0k7QXhDdWtLWjs7QXdDOWtLUTtFQU9JO0F4QzJrS1o7O0F3Q2xsS1E7RUFPSTtBeEMra0taOztBd0N0bEtRO0VBT0k7QXhDbWxLWjs7QXdDMWxLUTtFQU9JO0F4Q3VsS1o7O0F3QzlsS1E7RUFPSTtBeEMybEtaOztBd0NsbUtRO0VBT0k7QXhDK2xLWjs7QXdDdG1LUTtFQU9JO0F4Q21tS1o7O0F3QzFtS1E7RUFPSTtBeEN1bUtaOztBd0M5bUtRO0VBT0k7QXhDMm1LWjs7QXdDbG5LUTtFQU9JO0F4QyttS1o7O0F3Q3RuS1E7RUFPSTtBeENtbktaOztBd0MxbktRO0VBT0k7QXhDdW5LWjs7QXdDOW5LUTtFQU9JO0F4QzJuS1o7O0F3Q2xvS1E7RUFPSTtBeEMrbktaOztBd0N0b0tRO0VBT0k7QXhDbW9LWjs7QXdDMW9LUTtFQU9JO0F4Q3VvS1o7O0F3QzlvS1E7RUFPSTtBeEMyb0taOztBd0NscEtRO0VBT0k7QXhDK29LWjs7QXdDdHBLUTtFQU9JO0F4Q21wS1o7O0F3QzFwS1E7RUFPSTtBeEN1cEtaOztBd0M5cEtRO0VBT0k7QXhDMnBLWjs7QXdDbHFLUTtFQU9JO0F4QytwS1o7O0F3Q3RxS1E7RUFPSTtBeENtcUtaOztBd0MxcUtRO0VBT0k7QXhDdXFLWjs7QXdDOXFLUTtFQU9JO0F4QzJxS1o7O0F3Q2xyS1E7RUFPSTtBeEMrcUtaOztBd0N0cktRO0VBT0k7QXhDbXJLWjs7QXdDMXJLUTtFQU9JO0F4Q3VyS1o7O0F3QzlyS1E7RUFPSTtBeEMycktaOztBd0Nsc0tRO0VBT0k7QXhDK3JLWjs7QXdDdHNLUTtFQU9JO0F4Q21zS1o7O0F3QzFzS1E7RUFPSTtBeEN1c0taOztBd0M5c0tRO0VBT0k7QXhDMnNLWjs7QXdDbHRLUTtFQU9JO09BQUE7QXhDK3NLWjs7QXdDdHRLUTtFQU9JO09BQUE7QXhDbXRLWjs7QXdDMXRLUTtFQU9JO09BQUE7QXhDdXRLWjs7QXdDOXRLUTtFQU9JO09BQUE7QXhDMnRLWjs7QXdDbHVLUTtFQU9JO09BQUE7QXhDK3RLWjs7QXdDdHVLUTtFQU9JO09BQUE7QXhDbXVLWjs7QXdDMXVLUTtFQU9JO0F4Q3V1S1o7O0F3Qzl1S1E7RUFPSTtBeEMydUtaOztBd0NsdktRO0VBT0k7QXhDK3VLWjs7QXdDdHZLUTtFQU9JO0F4Q212S1o7O0F3QzF2S1E7RUFPSTtBeEN1dktaOztBd0M5dktRO0VBT0k7QXhDMnZLWjs7QXdDbHdLUTtFQU9JO0F4Qyt2S1o7O0F3Q3R3S1E7RUFPSTtBeENtd0taOztBd0Mxd0tRO0VBT0k7QXhDdXdLWjs7QXdDOXdLUTtFQU9JO0F4QzJ3S1o7O0F3Q2x4S1E7RUFPSTtBeEMrd0taOztBd0N0eEtRO0VBT0k7QXhDbXhLWjs7QXdDMXhLUTtFQU9JO0F4Q3V4S1o7O0F3Qzl4S1E7RUFPSTtBeEMyeEtaOztBd0NseUtRO0VBT0k7QXhDK3hLWjs7QXdDdHlLUTtFQU9JO0F4Q215S1o7O0F3QzF5S1E7RUFPSTtBeEN1eUtaOztBd0M5eUtRO0VBT0k7QXhDMnlLWjs7QXdDbHpLUTtFQU9JO0F4Qyt5S1o7O0F3Q3R6S1E7RUFPSTtBeENtektaOztBd0MxektRO0VBT0k7QXhDdXpLWjs7QXdDOXpLUTtFQU9JO0F4QzJ6S1o7O0F3Q2wwS1E7RUFPSTtBeEMrektaOztBd0N0MEtRO0VBT0k7QXhDbTBLWjs7QXdDMTBLUTtFQU9JO0F4Q3UwS1o7O0F3QzkwS1E7RUFPSTtBeEMyMEtaOztBd0NsMUtRO0VBT0k7QXhDKzBLWjs7QXdDdDFLUTtFQU9JO0F4Q20xS1o7O0F3QzExS1E7RUFPSTtBeEN1MUtaOztBd0M5MUtRO0VBT0k7QXhDMjFLWjs7QXdDbDJLUTtFQU9JO0F4QysxS1o7O0F3Q3AzS1E7QUFjQTtFQU9JO0VBQUE7QXhDcTJLWjs7QXdDbDFLUTtBQTFCQTtFQUlRO0VBR0o7QXhDMjJLWjs7QXdDbDNLUTtFQUlRO0VBR0o7QXhDZzNLWjs7QXdDdjNLUTtFQUlRO0VBR0o7QXhDcTNLWjs7QXdDNTNLUTtFQUlRO0VBR0o7QXhDMDNLWjs7QXdDajRLUTtFQUlRO0VBR0o7QXhDKzNLWjs7QXdDdDRLUTtFQUlRO0VBR0o7QXhDbzRLWjs7QXdDMzRLUTtFQUlRO0VBR0o7QXhDeTRLWjs7QXdDaDVLUTtFQUlRO0VBR0o7QXhDODRLWjs7QXdDcjVLUTtFQUlRO0VBR0o7QXhDbTVLWjs7QXdDMTVLUTtFQUlRO0VBR0o7QXhDdzVLWjs7QXdDLzVLUTtFQUlRO0VBR0o7QXhDNjVLWjs7QXdDcDZLUTtFQUlRO0VBR0o7QXhDazZLWjs7QXdDejZLUTtFQUlRO0VBR0o7QXhDdTZLWjs7QXdDOTZLUTtFQUlRO0VBR0o7QXhDNDZLWjs7QXdDbjdLUTtFQUlRO0VBR0o7QXhDaTdLWjs7QXdDeDdLUTtFQUlRO0VBR0o7QXhDczdLWjs7QXdDNzdLUTtFQUlRO0VBR0o7QXhDMjdLWjs7QXdDbDhLUTtFQUlRO0VBR0o7QXhDZzhLWjs7QXdDajlLUTtFQUNFO0F4Q285S1Y7O0F3Q3I5S1E7RUFDRTtBeEN3OUtWOztBd0N6OUtRO0VBQ0U7QXhDNDlLVjs7QXdDNzlLUTtFQUNFO0F4Q2crS1Y7O0F3Q3Y5S1E7RUFPSTtBeENvOUtaOztBd0MzOUtRO0VBT0k7QXhDdzlLWjs7QXdDLzlLUTtFQU9JO0F4QzQ5S1o7O0F3Q24rS1E7RUFPSTtBeENnK0taOztBd0N2K0tRO0VBT0k7QXhDbytLWjs7QXdDMytLUTtFQU9JO0F4Q3crS1o7O0F3Qy8rS1E7RUFPSTtBeEM0K0taOztBd0NuL0tRO0VBT0k7QXhDZy9LWjs7QXdDamdMUTtFQUNFO0F4Q29nTFY7O0F3Q2hnTFU7RUFDRTtBeENtZ0xaOztBd0N6Z0xRO0VBQ0U7QXhDNGdMVjs7QXdDeGdMVTtFQUNFO0F4QzJnTFo7O0F3Q2poTFE7RUFDRTtBeENvaExWOztBd0NoaExVO0VBQ0U7QXhDbWhMWjs7QXdDemhMUTtFQUNFO0F4QzRoTFY7O0F3Q3hoTFU7RUFDRTtBeEMyaExaOztBd0NqaUxRO0VBQ0U7QXhDb2lMVjs7QXdDaGlMVTtFQUNFO0F4Q21pTFo7O0F3Qy9oTFE7RUFPSTtBeEM0aExaOztBd0N2aExVO0VBT0k7QXhDb2hMZDs7QXdDdmlMUTtFQU9JO0F4Q29pTFo7O0F3Qy9oTFU7RUFPSTtBeEM0aExkOztBd0MvaUxRO0VBT0k7QXhDNGlMWjs7QXdDdmlMVTtFQU9JO0F4Q29pTGQ7O0F3Q3ZqTFE7RUFJUTtFQUdKO0F4Q3FqTFo7O0F3QzVqTFE7RUFJUTtFQUdKO0F4QzBqTFo7O0F3Q2prTFE7RUFJUTtFQUdKO0F4QytqTFo7O0F3Q3RrTFE7RUFJUTtFQUdKO0F4Q29rTFo7O0F3QzNrTFE7RUFJUTtFQUdKO0F4Q3lrTFo7O0F3Q2hsTFE7RUFJUTtFQUdKO0F4QzhrTFo7O0F3Q3JsTFE7RUFJUTtFQUdKO0F4Q21sTFo7O0F3QzFsTFE7RUFJUTtFQUdKO0F4Q3dsTFo7O0F3Qy9sTFE7RUFJUTtFQUdKO0F4QzZsTFo7O0F3QzltTFE7RUFDRTtBeENpbkxWOztBd0M3bUxVO0VBQ0U7QXhDZ25MWjs7QXdDdG5MUTtFQUNFO0F4Q3luTFY7O0F3Q3JuTFU7RUFDRTtBeEN3bkxaOztBd0M5bkxRO0VBQ0U7QXhDaW9MVjs7QXdDN25MVTtFQUNFO0F4Q2dvTFo7O0F3Q3RvTFE7RUFDRTtBeEN5b0xWOztBd0Nyb0xVO0VBQ0U7QXhDd29MWjs7QXdDOW9MUTtFQUNFO0F4Q2lwTFY7O0F3QzdvTFU7RUFDRTtBeENncExaOztBd0N0cExRO0VBQ0U7QXhDeXBMVjs7QXdDcnBMVTtFQUNFO0F4Q3dwTFo7O0F3Q3BwTFE7RUFJUTtFQUdKO0F4Q2twTFo7O0F3Q3pwTFE7RUFJUTtFQUdKO0F4Q3VwTFo7O0F3QzlwTFE7RUFJUTtFQUdKO0F4QzRwTFo7O0F3Q25xTFE7RUFJUTtFQUdKO0F4Q2lxTFo7O0F3Q3hxTFE7RUFJUTtFQUdKO0F4Q3NxTFo7O0F3QzdxTFE7RUFJUTtFQUdKO0F4QzJxTFo7O0F3Q2xyTFE7RUFJUTtFQUdKO0F4Q2dyTFo7O0F3Q3ZyTFE7RUFJUTtFQUdKO0F4Q3FyTFo7O0F3QzVyTFE7RUFJUTtFQUdKO0F4QzByTFo7O0F3Q2pzTFE7RUFJUTtFQUdKO0F4QytyTFo7O0F3Q3RzTFE7RUFJUTtFQUdKO0F4Q29zTFo7O0F3QzNzTFE7RUFJUTtFQUdKO0F4Q3lzTFo7O0F3Q2h0TFE7RUFJUTtFQUdKO0F4QzhzTFo7O0F3Q3J0TFE7RUFJUTtFQUdKO0F4Q210TFo7O0F3Q3B1TFE7RUFDRTtBeEN1dUxWOztBd0N4dUxRO0VBQ0U7QXhDMnVMVjs7QXdDNXVMUTtFQUNFO0F4Qyt1TFY7O0F3Q2h2TFE7RUFDRTtBeENtdkxWOztBd0NwdkxRO0VBQ0U7QXhDdXZMVjs7QXdDOXVMUTtFQU9JO0F4QzJ1TFo7O0F3Q2x2TFE7RUFPSTtBeEMrdUxaOztBd0N0dkxRO0VBT0k7QXhDbXZMWjs7QXdDMXZMUTtFQU9JO0F4Q3V2TFo7O0F3Qzl2TFE7RUFPSTtBeEMydkxaOztBd0Nsd0xRO0VBT0k7QXhDK3ZMWjs7QXdDdHdMUTtFQU9JO0F4Q213TFo7O0F3QzF3TFE7RUFPSTtBeEN1d0xaOztBd0M5d0xRO0VBT0k7QXhDMndMWjs7QXdDbHhMUTtFQU9JO0tBQUE7VUFBQTtBeEMrd0xaOztBd0N0eExRO0VBT0k7S0FBQTtVQUFBO0F4Q214TFo7O0F3QzF4TFE7RUFPSTtLQUFBO1VBQUE7QXhDdXhMWjs7QXdDOXhMUTtFQU9JO0F4QzJ4TFo7O0F3Q2x5TFE7RUFPSTtBeEMreExaOztBd0N0eUxRO0VBT0k7QXhDbXlMWjs7QXdDMXlMUTtFQU9JO0F4Q3V5TFo7O0F3Qzl5TFE7RUFPSTtBeEMyeUxaOztBd0NsekxRO0VBT0k7QXhDK3lMWjs7QXdDdHpMUTtFQU9JO0F4Q216TFo7O0F3QzF6TFE7RUFPSTtBeEN1ekxaOztBd0M5ekxRO0VBT0k7QXhDMnpMWjs7QXdDbDBMUTtFQU9JO0F4Qyt6TFo7O0F3Q3QwTFE7RUFPSTtBeENtMExaOztBd0MxMExRO0VBT0k7RUFBQTtBeEN3MExaOztBd0MvMExRO0VBT0k7RUFBQTtBeEM2MExaOztBd0NwMUxRO0VBT0k7RUFBQTtBeENrMUxaOztBd0N6MUxRO0VBT0k7RUFBQTtBeEN1MUxaOztBd0M5MUxRO0VBT0k7RUFBQTtBeEM0MUxaOztBd0NuMkxRO0VBT0k7RUFBQTtBeENpMkxaOztBd0N4MkxRO0VBT0k7RUFBQTtBeENzMkxaOztBd0M3MkxRO0VBT0k7RUFBQTtBeEMyMkxaOztBd0NsM0xRO0VBT0k7RUFBQTtBeENnM0xaOztBd0N2M0xRO0VBT0k7RUFBQTtBeENxM0xaOztBd0M1M0xRO0VBT0k7RUFBQTtBeEMwM0xaOztBd0NqNExRO0VBT0k7RUFBQTtBeEMrM0xaOztBd0N0NExRO0VBT0k7RUFBQTtBeENvNExaOztBd0MzNExRO0VBT0k7RUFBQTtBeEN5NExaOztBd0NoNUxRO0VBT0k7RUFBQTtBeEM4NExaOztBd0NyNUxRO0VBT0k7RUFBQTtBeENtNUxaOztBd0MxNUxRO0VBT0k7RUFBQTtBeEN3NUxaOztBd0MvNUxRO0VBT0k7RUFBQTtBeEM2NUxaOztBd0NwNkxRO0VBT0k7RUFBQTtBeENrNkxaOztBd0N6NkxRO0VBT0k7RUFBQTtBeEN1NkxaOztBd0M5NkxRO0VBT0k7RUFBQTtBeEM0NkxaOztBd0NuN0xRO0VBT0k7RUFBQTtBeENpN0xaOztBd0N4N0xRO0VBT0k7RUFBQTtBeENzN0xaOztBd0M3N0xRO0VBT0k7RUFBQTtBeEMyN0xaOztBd0NsOExRO0VBT0k7RUFBQTtBeENnOExaOztBd0N2OExRO0VBT0k7RUFBQTtBeENxOExaOztBd0M1OExRO0VBT0k7RUFBQTtBeEMwOExaOztBd0NqOUxRO0VBT0k7RUFBQTtBeEMrOExaOztBd0N0OUxRO0VBT0k7RUFBQTtBeENvOUxaOztBd0MzOUxRO0VBT0k7RUFBQTtBeEN5OUxaOztBd0NoK0xRO0VBT0k7RUFBQTtBeEM4OUxaOztBd0NyK0xRO0VBT0k7RUFBQTtBeENtK0xaOztBd0MxK0xRO0VBT0k7RUFBQTtBeEN3K0xaOztBd0MvK0xRO0VBT0k7RUFBQTtBeEM2K0xaOztBd0NwL0xRO0VBT0k7RUFBQTtBeENrL0xaOztBd0N6L0xRO0VBT0k7RUFBQTtBeEN1L0xaOztBd0M5L0xRO0VBT0k7QXhDMi9MWjs7QXdDbGdNUTtFQU9JO0F4QysvTFo7O0F3Q3RnTVE7RUFPSTtBeENtZ01aOztBd0MxZ01RO0VBT0k7QXhDdWdNWjs7QXdDOWdNUTtFQU9JO0F4QzJnTVo7O0F3Q2xoTVE7RUFPSTtBeEMrZ01aOztBd0N0aE1RO0VBT0k7QXhDbWhNWjs7QVc3aE1JO0U2QkdJO0lBT0k7RXhDd2hNVjtFd0MvaE1NO0lBT0k7RXhDMmhNVjtFd0NsaU1NO0lBT0k7RXhDOGhNVjtFd0NyaU1NO0lBT0k7T0FBQTtFeENpaU1WO0V3Q3hpTU07SUFPSTtPQUFBO0V4Q29pTVY7RXdDM2lNTTtJQU9JO09BQUE7RXhDdWlNVjtFd0M5aU1NO0lBT0k7T0FBQTtFeEMwaU1WO0V3Q2pqTU07SUFPSTtPQUFBO0V4QzZpTVY7RXdDcGpNTTtJQU9JO0V4Q2dqTVY7RXdDdmpNTTtJQU9JO0V4Q21qTVY7RXdDMWpNTTtJQU9JO0V4Q3NqTVY7RXdDN2pNTTtJQU9JO0V4Q3lqTVY7RXdDaGtNTTtJQU9JO0V4QzRqTVY7RXdDbmtNTTtJQU9JO0V4QytqTVY7RXdDdGtNTTtJQU9JO0V4Q2trTVY7RXdDemtNTTtJQU9JO0V4Q3FrTVY7RXdDNWtNTTtJQU9JO0V4Q3drTVY7RXdDL2tNTTtJQU9JO0V4QzJrTVY7RXdDbGxNTTtJQU9JO0V4QzhrTVY7RXdDcmxNTTtJQU9JO0V4Q2lsTVY7RXdDeGxNTTtJQU9JO0V4Q29sTVY7RXdDM2xNTTtJQU9JO0V4Q3VsTVY7RXdDOWxNTTtJQU9JO0V4QzBsTVY7RXdDam1NTTtJQU9JO0V4QzZsTVY7RXdDcG1NTTtJQU9JO0V4Q2dtTVY7RXdDdm1NTTtJQU9JO0V4Q21tTVY7RXdDMW1NTTtJQU9JO0V4Q3NtTVY7RXdDN21NTTtJQU9JO0V4Q3ltTVY7RXdDaG5NTTtJQU9JO0V4QzRtTVY7RXdDbm5NTTtJQU9JO0V4QyttTVY7RXdDdG5NTTtJQU9JO0V4Q2tuTVY7RXdDem5NTTtJQU9JO0V4Q3FuTVY7RXdDNW5NTTtJQU9JO0V4Q3duTVY7RXdDL25NTTtJQU9JO0V4QzJuTVY7RXdDbG9NTTtJQU9JO0V4QzhuTVY7RXdDcm9NTTtJQU9JO0V4Q2lvTVY7RXdDeG9NTTtJQU9JO0V4Q29vTVY7RXdDM29NTTtJQU9JO0V4Q3VvTVY7RXdDOW9NTTtJQU9JO0V4QzBvTVY7RXdDanBNTTtJQU9JO0V4QzZvTVY7RXdDcHBNTTtJQU9JO0V4Q2dwTVY7RXdDdnBNTTtJQU9JO0V4Q21wTVY7RXdDMXBNTTtJQU9JO0V4Q3NwTVY7RXdDN3BNTTtJQU9JO0V4Q3lwTVY7RXdDaHFNTTtJQU9JO0V4QzRwTVY7RXdDbnFNTTtJQU9JO0V4QytwTVY7RXdDdHFNTTtJQU9JO0V4Q2txTVY7RXdDenFNTTtJQU9JO0V4Q3FxTVY7RXdDNXFNTTtJQU9JO0V4Q3dxTVY7RXdDL3FNTTtJQU9JO0V4QzJxTVY7RXdDbHJNTTtJQU9JO0V4QzhxTVY7RXdDcnJNTTtJQU9JO0V4Q2lyTVY7RXdDeHJNTTtJQU9JO0V4Q29yTVY7RXdDM3JNTTtJQU9JO0V4Q3VyTVY7RXdDOXJNTTtJQU9JO0V4QzByTVY7RXdDanNNTTtJQU9JO0V4QzZyTVY7RXdDcHNNTTtJQU9JO0V4Q2dzTVY7RXdDdnNNTTtJQU9JO0V4Q21zTVY7RXdDMXNNTTtJQU9JO0V4Q3NzTVY7RXdDN3NNTTtJQU9JO0V4Q3lzTVY7RXdDaHRNTTtJQU9JO0V4QzRzTVY7RXdDbnRNTTtJQU9JO0V4QytzTVY7RXdDdHRNTTtJQU9JO0V4Q2t0TVY7RXdDenRNTTtJQU9JO0V4Q3F0TVY7RXdDNXRNTTtJQU9JO0V4Q3d0TVY7RXdDL3RNTTtJQU9JO0V4QzJ0TVY7RXdDbHVNTTtJQU9JO0V4Qzh0TVY7RXdDcnVNTTtJQU9JO0V4Q2l1TVY7RXdDeHVNTTtJQU9JO0V4Q291TVY7RXdDM3VNTTtJQU9JO0lBQUE7RXhDd3VNVjtFd0MvdU1NO0lBT0k7SUFBQTtFeEM0dU1WO0V3Q252TU07SUFPSTtJQUFBO0V4Q2d2TVY7RXdDdnZNTTtJQU9JO0lBQUE7RXhDb3ZNVjtFd0Mzdk1NO0lBT0k7SUFBQTtFeEN3dk1WO0V3Qy92TU07SUFPSTtJQUFBO0V4QzR2TVY7RXdDbndNTTtJQU9JO0lBQUE7RXhDZ3dNVjtFd0N2d01NO0lBT0k7SUFBQTtFeENvd01WO0V3QzN3TU07SUFPSTtJQUFBO0V4Q3d3TVY7RXdDL3dNTTtJQU9JO0lBQUE7RXhDNHdNVjtFd0NueE1NO0lBT0k7SUFBQTtFeENneE1WO0V3Q3Z4TU07SUFPSTtJQUFBO0V4Q294TVY7RXdDM3hNTTtJQU9JO0lBQUE7RXhDd3hNVjtFd0MveE1NO0lBT0k7SUFBQTtFeEM0eE1WO0V3Q255TU07SUFPSTtFeEMreE1WO0V3Q3R5TU07SUFPSTtFeENreU1WO0V3Q3p5TU07SUFPSTtFeENxeU1WO0V3QzV5TU07SUFPSTtFeEN3eU1WO0V3Qy95TU07SUFPSTtFeEMyeU1WO0V3Q2x6TU07SUFPSTtFeEM4eU1WO0V3Q3J6TU07SUFPSTtFeENpek1WO0V3Q3h6TU07SUFPSTtFeENvek1WO0V3QzN6TU07SUFPSTtFeEN1ek1WO0V3Qzl6TU07SUFPSTtFeEMwek1WO0V3Q2owTU07SUFPSTtFeEM2ek1WO0V3Q3AwTU07SUFPSTtFeENnME1WO0V3Q3YwTU07SUFPSTtFeENtME1WO0V3QzEwTU07SUFPSTtFeENzME1WO0V3QzcwTU07SUFPSTtFeEN5ME1WO0V3Q2gxTU07SUFPSTtFeEM0ME1WO0V3Q24xTU07SUFPSTtFeEMrME1WO0V3Q3QxTU07SUFPSTtFeENrMU1WO0V3Q3oxTU07SUFPSTtFeENxMU1WO0V3QzUxTU07SUFPSTtFeEN3MU1WO0V3Qy8xTU07SUFPSTtFeEMyMU1WO0V3Q2wyTU07SUFPSTtFeEM4MU1WO0V3Q3IyTU07SUFPSTtFeENpMk1WO0V3Q3gyTU07SUFPSTtFeENvMk1WO0V3QzMyTU07SUFPSTtFeEN1Mk1WO0V3QzkyTU07SUFPSTtFeEMwMk1WO0V3Q2ozTU07SUFPSTtFeEM2Mk1WO0V3Q3AzTU07SUFPSTtFeENnM01WO0V3Q3YzTU07SUFPSTtFeENtM01WO0V3QzEzTU07SUFPSTtFeENzM01WO0V3QzczTU07SUFPSTtFeEN5M01WO0V3Q2g0TU07SUFPSTtFeEM0M01WO0V3Q240TU07SUFPSTtFeEMrM01WO0V3Q3Q0TU07SUFPSTtFeENrNE1WO0V3Q3o0TU07SUFPSTtJQUFBO0V4Q3M0TVY7RXdDNzRNTTtJQU9JO0lBQUE7RXhDMDRNVjtFd0NqNU1NO0lBT0k7SUFBQTtFeEM4NE1WO0V3Q3I1TU07SUFPSTtJQUFBO0V4Q2s1TVY7RXdDejVNTTtJQU9JO0lBQUE7RXhDczVNVjtFd0M3NU1NO0lBT0k7SUFBQTtFeEMwNU1WO0V3Q2o2TU07SUFPSTtJQUFBO0V4Qzg1TVY7RXdDcjZNTTtJQU9JO0lBQUE7RXhDazZNVjtFd0N6Nk1NO0lBT0k7SUFBQTtFeENzNk1WO0V3Qzc2TU07SUFPSTtJQUFBO0V4QzA2TVY7RXdDajdNTTtJQU9JO0lBQUE7RXhDODZNVjtFd0NyN01NO0lBT0k7SUFBQTtFeENrN01WO0V3Q3o3TU07SUFPSTtFeENxN01WO0V3QzU3TU07SUFPSTtFeEN3N01WO0V3Qy83TU07SUFPSTtFeEMyN01WO0V3Q2w4TU07SUFPSTtFeEM4N01WO0V3Q3I4TU07SUFPSTtFeENpOE1WO0V3Q3g4TU07SUFPSTtFeENvOE1WO0V3QzM4TU07SUFPSTtFeEN1OE1WO0V3Qzk4TU07SUFPSTtFeEMwOE1WO0V3Q2o5TU07SUFPSTtFeEM2OE1WO0V3Q3A5TU07SUFPSTtFeENnOU1WO0V3Q3Y5TU07SUFPSTtFeENtOU1WO0V3QzE5TU07SUFPSTtFeENzOU1WO0V3Qzc5TU07SUFPSTtFeEN5OU1WO0V3Q2grTU07SUFPSTtFeEM0OU1WO0V3Q24rTU07SUFPSTtFeEMrOU1WO0V3Q3QrTU07SUFPSTtFeENrK01WO0V3Q3orTU07SUFPSTtFeENxK01WO0V3QzUrTU07SUFPSTtFeEN3K01WO0V3Qy8rTU07SUFPSTtFeEMyK01WO0V3Q2wvTU07SUFPSTtFeEM4K01WO0V3Q3IvTU07SUFPSTtFeENpL01WO0V3Q3gvTU07SUFPSTtFeENvL01WO0V3QzMvTU07SUFPSTtFeEN1L01WO0V3QzkvTU07SUFPSTtFeEMwL01WO0V3Q2pnTk07SUFPSTtFeEM2L01WO0V3Q3BnTk07SUFPSTtFeENnZ05WO0V3Q3ZnTk07SUFPSTtFeENtZ05WO0V3QzFnTk07SUFPSTtFeENzZ05WO0V3QzdnTk07SUFPSTtFeEN5Z05WO0V3Q2hoTk07SUFPSTtFeEM0Z05WO0V3Q25oTk07SUFPSTtFeEMrZ05WO0V3Q3RoTk07SUFPSTtFeENraE5WO0V3Q3poTk07SUFPSTtFeENxaE5WO0V3QzVoTk07SUFPSTtFeEN3aE5WO0V3Qy9oTk07SUFPSTtFeEMyaE5WO0V3Q2xpTk07SUFPSTtFeEM4aE5WO0V3Q3JpTk07SUFPSTtTQUFBO0V4Q2lpTlY7RXdDeGlOTTtJQU9JO1NBQUE7RXhDb2lOVjtFd0MzaU5NO0lBT0k7U0FBQTtFeEN1aU5WO0V3QzlpTk07SUFPSTtTQUFBO0V4QzBpTlY7RXdDampOTTtJQU9JO1NBQUE7RXhDNmlOVjtFd0Nwak5NO0lBT0k7U0FBQTtFeENnak5WO0V3Q3ZqTk07SUFPSTtFeENtak5WO0V3QzFqTk07SUFPSTtFeENzak5WO0V3QzdqTk07SUFPSTtFeEN5ak5WO0FBQ0Y7QVdwa05JO0U2QkdJO0lBT0k7RXhDOGpOVjtFd0Nya05NO0lBT0k7RXhDaWtOVjtFd0N4a05NO0lBT0k7RXhDb2tOVjtFd0Mza05NO0lBT0k7T0FBQTtFeEN1a05WO0V3QzlrTk07SUFPSTtPQUFBO0V4QzBrTlY7RXdDamxOTTtJQU9JO09BQUE7RXhDNmtOVjtFd0NwbE5NO0lBT0k7T0FBQTtFeENnbE5WO0V3Q3ZsTk07SUFPSTtPQUFBO0V4Q21sTlY7RXdDMWxOTTtJQU9JO0V4Q3NsTlY7RXdDN2xOTTtJQU9JO0V4Q3lsTlY7RXdDaG1OTTtJQU9JO0V4QzRsTlY7RXdDbm1OTTtJQU9JO0V4QytsTlY7RXdDdG1OTTtJQU9JO0V4Q2ttTlY7RXdDem1OTTtJQU9JO0V4Q3FtTlY7RXdDNW1OTTtJQU9JO0V4Q3dtTlY7RXdDL21OTTtJQU9JO0V4QzJtTlY7RXdDbG5OTTtJQU9JO0V4QzhtTlY7RXdDcm5OTTtJQU9JO0V4Q2luTlY7RXdDeG5OTTtJQU9JO0V4Q29uTlY7RXdDM25OTTtJQU9JO0V4Q3VuTlY7RXdDOW5OTTtJQU9JO0V4QzBuTlY7RXdDam9OTTtJQU9JO0V4QzZuTlY7RXdDcG9OTTtJQU9JO0V4Q2dvTlY7RXdDdm9OTTtJQU9JO0V4Q21vTlY7RXdDMW9OTTtJQU9JO0V4Q3NvTlY7RXdDN29OTTtJQU9JO0V4Q3lvTlY7RXdDaHBOTTtJQU9JO0V4QzRvTlY7RXdDbnBOTTtJQU9JO0V4QytvTlY7RXdDdHBOTTtJQU9JO0V4Q2twTlY7RXdDenBOTTtJQU9JO0V4Q3FwTlY7RXdDNXBOTTtJQU9JO0V4Q3dwTlY7RXdDL3BOTTtJQU9JO0V4QzJwTlY7RXdDbHFOTTtJQU9JO0V4QzhwTlY7RXdDcnFOTTtJQU9JO0V4Q2lxTlY7RXdDeHFOTTtJQU9JO0V4Q29xTlY7RXdDM3FOTTtJQU9JO0V4Q3VxTlY7RXdDOXFOTTtJQU9JO0V4QzBxTlY7RXdDanJOTTtJQU9JO0V4QzZxTlY7RXdDcHJOTTtJQU9JO0V4Q2dyTlY7RXdDdnJOTTtJQU9JO0V4Q21yTlY7RXdDMXJOTTtJQU9JO0V4Q3NyTlY7RXdDN3JOTTtJQU9JO0V4Q3lyTlY7RXdDaHNOTTtJQU9JO0V4QzRyTlY7RXdDbnNOTTtJQU9JO0V4QytyTlY7RXdDdHNOTTtJQU9JO0V4Q2tzTlY7RXdDenNOTTtJQU9JO0V4Q3FzTlY7RXdDNXNOTTtJQU9JO0V4Q3dzTlY7RXdDL3NOTTtJQU9JO0V4QzJzTlY7RXdDbHROTTtJQU9JO0V4QzhzTlY7RXdDcnROTTtJQU9JO0V4Q2l0TlY7RXdDeHROTTtJQU9JO0V4Q290TlY7RXdDM3ROTTtJQU9JO0V4Q3V0TlY7RXdDOXROTTtJQU9JO0V4QzB0TlY7RXdDanVOTTtJQU9JO0V4QzZ0TlY7RXdDcHVOTTtJQU9JO0V4Q2d1TlY7RXdDdnVOTTtJQU9JO0V4Q211TlY7RXdDMXVOTTtJQU9JO0V4Q3N1TlY7RXdDN3VOTTtJQU9JO0V4Q3l1TlY7RXdDaHZOTTtJQU9JO0V4QzR1TlY7RXdDbnZOTTtJQU9JO0V4Qyt1TlY7RXdDdHZOTTtJQU9JO0V4Q2t2TlY7RXdDenZOTTtJQU9JO0V4Q3F2TlY7RXdDNXZOTTtJQU9JO0V4Q3d2TlY7RXdDL3ZOTTtJQU9JO0V4QzJ2TlY7RXdDbHdOTTtJQU9JO0V4Qzh2TlY7RXdDcndOTTtJQU9JO0V4Q2l3TlY7RXdDeHdOTTtJQU9JO0V4Q293TlY7RXdDM3dOTTtJQU9JO0V4Q3V3TlY7RXdDOXdOTTtJQU9JO0V4QzB3TlY7RXdDanhOTTtJQU9JO0lBQUE7RXhDOHdOVjtFd0NyeE5NO0lBT0k7SUFBQTtFeENreE5WO0V3Q3p4Tk07SUFPSTtJQUFBO0V4Q3N4TlY7RXdDN3hOTTtJQU9JO0lBQUE7RXhDMHhOVjtFd0NqeU5NO0lBT0k7SUFBQTtFeEM4eE5WO0V3Q3J5Tk07SUFPSTtJQUFBO0V4Q2t5TlY7RXdDenlOTTtJQU9JO0lBQUE7RXhDc3lOVjtFd0M3eU5NO0lBT0k7SUFBQTtFeEMweU5WO0V3Q2p6Tk07SUFPSTtJQUFBO0V4Qzh5TlY7RXdDcnpOTTtJQU9JO0lBQUE7RXhDa3pOVjtFd0N6ek5NO0lBT0k7SUFBQTtFeENzek5WO0V3Qzd6Tk07SUFPSTtJQUFBO0V4QzB6TlY7RXdDajBOTTtJQU9JO0lBQUE7RXhDOHpOVjtFd0NyME5NO0lBT0k7SUFBQTtFeENrME5WO0V3Q3owTk07SUFPSTtFeENxME5WO0V3QzUwTk07SUFPSTtFeEN3ME5WO0V3Qy8wTk07SUFPSTtFeEMyME5WO0V3Q2wxTk07SUFPSTtFeEM4ME5WO0V3Q3IxTk07SUFPSTtFeENpMU5WO0V3Q3gxTk07SUFPSTtFeENvMU5WO0V3QzMxTk07SUFPSTtFeEN1MU5WO0V3QzkxTk07SUFPSTtFeEMwMU5WO0V3Q2oyTk07SUFPSTtFeEM2MU5WO0V3Q3AyTk07SUFPSTtFeENnMk5WO0V3Q3YyTk07SUFPSTtFeENtMk5WO0V3QzEyTk07SUFPSTtFeENzMk5WO0V3QzcyTk07SUFPSTtFeEN5Mk5WO0V3Q2gzTk07SUFPSTtFeEM0Mk5WO0V3Q24zTk07SUFPSTtFeEMrMk5WO0V3Q3QzTk07SUFPSTtFeENrM05WO0V3Q3ozTk07SUFPSTtFeENxM05WO0V3QzUzTk07SUFPSTtFeEN3M05WO0V3Qy8zTk07SUFPSTtFeEMyM05WO0V3Q2w0Tk07SUFPSTtFeEM4M05WO0V3Q3I0Tk07SUFPSTtFeENpNE5WO0V3Q3g0Tk07SUFPSTtFeENvNE5WO0V3QzM0Tk07SUFPSTtFeEN1NE5WO0V3Qzk0Tk07SUFPSTtFeEMwNE5WO0V3Q2o1Tk07SUFPSTtFeEM2NE5WO0V3Q3A1Tk07SUFPSTtFeENnNU5WO0V3Q3Y1Tk07SUFPSTtFeENtNU5WO0V3QzE1Tk07SUFPSTtFeENzNU5WO0V3Qzc1Tk07SUFPSTtFeEN5NU5WO0V3Q2g2Tk07SUFPSTtFeEM0NU5WO0V3Q242Tk07SUFPSTtFeEMrNU5WO0V3Q3Q2Tk07SUFPSTtFeENrNk5WO0V3Q3o2Tk07SUFPSTtFeENxNk5WO0V3QzU2Tk07SUFPSTtFeEN3Nk5WO0V3Qy82Tk07SUFPSTtJQUFBO0V4QzQ2TlY7RXdDbjdOTTtJQU9JO0lBQUE7RXhDZzdOVjtFd0N2N05NO0lBT0k7SUFBQTtFeENvN05WO0V3QzM3Tk07SUFPSTtJQUFBO0V4Q3c3TlY7RXdDLzdOTTtJQU9JO0lBQUE7RXhDNDdOVjtFd0NuOE5NO0lBT0k7SUFBQTtFeENnOE5WO0V3Q3Y4Tk07SUFPSTtJQUFBO0V4Q284TlY7RXdDMzhOTTtJQU9JO0lBQUE7RXhDdzhOVjtFd0MvOE5NO0lBT0k7SUFBQTtFeEM0OE5WO0V3Q245Tk07SUFPSTtJQUFBO0V4Q2c5TlY7RXdDdjlOTTtJQU9JO0lBQUE7RXhDbzlOVjtFd0MzOU5NO0lBT0k7SUFBQTtFeEN3OU5WO0V3Qy85Tk07SUFPSTtFeEMyOU5WO0V3Q2wrTk07SUFPSTtFeEM4OU5WO0V3Q3IrTk07SUFPSTtFeENpK05WO0V3Q3grTk07SUFPSTtFeENvK05WO0V3QzMrTk07SUFPSTtFeEN1K05WO0V3QzkrTk07SUFPSTtFeEMwK05WO0V3Q2ovTk07SUFPSTtFeEM2K05WO0V3Q3AvTk07SUFPSTtFeENnL05WO0V3Q3YvTk07SUFPSTtFeENtL05WO0V3QzEvTk07SUFPSTtFeENzL05WO0V3QzcvTk07SUFPSTtFeEN5L05WO0V3Q2hnT007SUFPSTtFeEM0L05WO0V3Q25nT007SUFPSTtFeEMrL05WO0V3Q3RnT007SUFPSTtFeENrZ09WO0V3Q3pnT007SUFPSTtFeENxZ09WO0V3QzVnT007SUFPSTtFeEN3Z09WO0V3Qy9nT007SUFPSTtFeEMyZ09WO0V3Q2xoT007SUFPSTtFeEM4Z09WO0V3Q3JoT007SUFPSTtFeENpaE9WO0V3Q3hoT007SUFPSTtFeENvaE9WO0V3QzNoT007SUFPSTtFeEN1aE9WO0V3QzloT007SUFPSTtFeEMwaE9WO0V3Q2ppT007SUFPSTtFeEM2aE9WO0V3Q3BpT007SUFPSTtFeENnaU9WO0V3Q3ZpT007SUFPSTtFeENtaU9WO0V3QzFpT007SUFPSTtFeENzaU9WO0V3QzdpT007SUFPSTtFeEN5aU9WO0V3Q2hqT007SUFPSTtFeEM0aU9WO0V3Q25qT007SUFPSTtFeEMraU9WO0V3Q3RqT007SUFPSTtFeENrak9WO0V3Q3pqT007SUFPSTtFeENxak9WO0V3QzVqT007SUFPSTtFeEN3ak9WO0V3Qy9qT007SUFPSTtFeEMyak9WO0V3Q2xrT007SUFPSTtFeEM4ak9WO0V3Q3JrT007SUFPSTtFeENpa09WO0V3Q3hrT007SUFPSTtFeENva09WO0V3QzNrT007SUFPSTtTQUFBO0V4Q3VrT1Y7RXdDOWtPTTtJQU9JO1NBQUE7RXhDMGtPVjtFd0NqbE9NO0lBT0k7U0FBQTtFeEM2a09WO0V3Q3BsT007SUFPSTtTQUFBO0V4Q2dsT1Y7RXdDdmxPTTtJQU9JO1NBQUE7RXhDbWxPVjtFd0MxbE9NO0lBT0k7U0FBQTtFeENzbE9WO0V3QzdsT007SUFPSTtFeEN5bE9WO0V3Q2htT007SUFPSTtFeEM0bE9WO0V3Q25tT007SUFPSTtFeEMrbE9WO0FBQ0Y7QVcxbU9JO0U2QkdJO0lBT0k7RXhDb21PVjtFd0MzbU9NO0lBT0k7RXhDdW1PVjtFd0M5bU9NO0lBT0k7RXhDMG1PVjtFd0Nqbk9NO0lBT0k7T0FBQTtFeEM2bU9WO0V3Q3BuT007SUFPSTtPQUFBO0V4Q2duT1Y7RXdDdm5PTTtJQU9JO09BQUE7RXhDbW5PVjtFd0Mxbk9NO0lBT0k7T0FBQTtFeENzbk9WO0V3QzduT007SUFPSTtPQUFBO0V4Q3luT1Y7RXdDaG9PTTtJQU9JO0V4QzRuT1Y7RXdDbm9PTTtJQU9JO0V4QytuT1Y7RXdDdG9PTTtJQU9JO0V4Q2tvT1Y7RXdDem9PTTtJQU9JO0V4Q3FvT1Y7RXdDNW9PTTtJQU9JO0V4Q3dvT1Y7RXdDL29PTTtJQU9JO0V4QzJvT1Y7RXdDbHBPTTtJQU9JO0V4QzhvT1Y7RXdDcnBPTTtJQU9JO0V4Q2lwT1Y7RXdDeHBPTTtJQU9JO0V4Q29wT1Y7RXdDM3BPTTtJQU9JO0V4Q3VwT1Y7RXdDOXBPTTtJQU9JO0V4QzBwT1Y7RXdDanFPTTtJQU9JO0V4QzZwT1Y7RXdDcHFPTTtJQU9JO0V4Q2dxT1Y7RXdDdnFPTTtJQU9JO0V4Q21xT1Y7RXdDMXFPTTtJQU9JO0V4Q3NxT1Y7RXdDN3FPTTtJQU9JO0V4Q3lxT1Y7RXdDaHJPTTtJQU9JO0V4QzRxT1Y7RXdDbnJPTTtJQU9JO0V4QytxT1Y7RXdDdHJPTTtJQU9JO0V4Q2tyT1Y7RXdDenJPTTtJQU9JO0V4Q3FyT1Y7RXdDNXJPTTtJQU9JO0V4Q3dyT1Y7RXdDL3JPTTtJQU9JO0V4QzJyT1Y7RXdDbHNPTTtJQU9JO0V4QzhyT1Y7RXdDcnNPTTtJQU9JO0V4Q2lzT1Y7RXdDeHNPTTtJQU9JO0V4Q29zT1Y7RXdDM3NPTTtJQU9JO0V4Q3VzT1Y7RXdDOXNPTTtJQU9JO0V4QzBzT1Y7RXdDanRPTTtJQU9JO0V4QzZzT1Y7RXdDcHRPTTtJQU9JO0V4Q2d0T1Y7RXdDdnRPTTtJQU9JO0V4Q210T1Y7RXdDMXRPTTtJQU9JO0V4Q3N0T1Y7RXdDN3RPTTtJQU9JO0V4Q3l0T1Y7RXdDaHVPTTtJQU9JO0V4QzR0T1Y7RXdDbnVPTTtJQU9JO0V4Qyt0T1Y7RXdDdHVPTTtJQU9JO0V4Q2t1T1Y7RXdDenVPTTtJQU9JO0V4Q3F1T1Y7RXdDNXVPTTtJQU9JO0V4Q3d1T1Y7RXdDL3VPTTtJQU9JO0V4QzJ1T1Y7RXdDbHZPTTtJQU9JO0V4Qzh1T1Y7RXdDcnZPTTtJQU9JO0V4Q2l2T1Y7RXdDeHZPTTtJQU9JO0V4Q292T1Y7RXdDM3ZPTTtJQU9JO0V4Q3V2T1Y7RXdDOXZPTTtJQU9JO0V4QzB2T1Y7RXdDandPTTtJQU9JO0V4QzZ2T1Y7RXdDcHdPTTtJQU9JO0V4Q2d3T1Y7RXdDdndPTTtJQU9JO0V4Q213T1Y7RXdDMXdPTTtJQU9JO0V4Q3N3T1Y7RXdDN3dPTTtJQU9JO0V4Q3l3T1Y7RXdDaHhPTTtJQU9JO0V4QzR3T1Y7RXdDbnhPTTtJQU9JO0V4Qyt3T1Y7RXdDdHhPTTtJQU9JO0V4Q2t4T1Y7RXdDenhPTTtJQU9JO0V4Q3F4T1Y7RXdDNXhPTTtJQU9JO0V4Q3d4T1Y7RXdDL3hPTTtJQU9JO0V4QzJ4T1Y7RXdDbHlPTTtJQU9JO0V4Qzh4T1Y7RXdDcnlPTTtJQU9JO0V4Q2l5T1Y7RXdDeHlPTTtJQU9JO0V4Q295T1Y7RXdDM3lPTTtJQU9JO0V4Q3V5T1Y7RXdDOXlPTTtJQU9JO0V4QzB5T1Y7RXdDanpPTTtJQU9JO0V4QzZ5T1Y7RXdDcHpPTTtJQU9JO0V4Q2d6T1Y7RXdDdnpPTTtJQU9JO0lBQUE7RXhDb3pPVjtFd0Mzek9NO0lBT0k7SUFBQTtFeEN3ek9WO0V3Qy96T007SUFPSTtJQUFBO0V4QzR6T1Y7RXdDbjBPTTtJQU9JO0lBQUE7RXhDZzBPVjtFd0N2ME9NO0lBT0k7SUFBQTtFeENvME9WO0V3QzMwT007SUFPSTtJQUFBO0V4Q3cwT1Y7RXdDLzBPTTtJQU9JO0lBQUE7RXhDNDBPVjtFd0NuMU9NO0lBT0k7SUFBQTtFeENnMU9WO0V3Q3YxT007SUFPSTtJQUFBO0V4Q28xT1Y7RXdDMzFPTTtJQU9JO0lBQUE7RXhDdzFPVjtFd0MvMU9NO0lBT0k7SUFBQTtFeEM0MU9WO0V3Q24yT007SUFPSTtJQUFBO0V4Q2cyT1Y7RXdDdjJPTTtJQU9JO0lBQUE7RXhDbzJPVjtFd0MzMk9NO0lBT0k7SUFBQTtFeEN3Mk9WO0V3Qy8yT007SUFPSTtFeEMyMk9WO0V3Q2wzT007SUFPSTtFeEM4Mk9WO0V3Q3IzT007SUFPSTtFeENpM09WO0V3Q3gzT007SUFPSTtFeENvM09WO0V3QzMzT007SUFPSTtFeEN1M09WO0V3QzkzT007SUFPSTtFeEMwM09WO0V3Q2o0T007SUFPSTtFeEM2M09WO0V3Q3A0T007SUFPSTtFeENnNE9WO0V3Q3Y0T007SUFPSTtFeENtNE9WO0V3QzE0T007SUFPSTtFeENzNE9WO0V3Qzc0T007SUFPSTtFeEN5NE9WO0V3Q2g1T007SUFPSTtFeEM0NE9WO0V3Q241T007SUFPSTtFeEMrNE9WO0V3Q3Q1T007SUFPSTtFeENrNU9WO0V3Q3o1T007SUFPSTtFeENxNU9WO0V3QzU1T007SUFPSTtFeEN3NU9WO0V3Qy81T007SUFPSTtFeEMyNU9WO0V3Q2w2T007SUFPSTtFeEM4NU9WO0V3Q3I2T007SUFPSTtFeENpNk9WO0V3Q3g2T007SUFPSTtFeENvNk9WO0V3QzM2T007SUFPSTtFeEN1Nk9WO0V3Qzk2T007SUFPSTtFeEMwNk9WO0V3Q2o3T007SUFPSTtFeEM2Nk9WO0V3Q3A3T007SUFPSTtFeENnN09WO0V3Q3Y3T007SUFPSTtFeENtN09WO0V3QzE3T007SUFPSTtFeENzN09WO0V3Qzc3T007SUFPSTtFeEN5N09WO0V3Q2g4T007SUFPSTtFeEM0N09WO0V3Q244T007SUFPSTtFeEMrN09WO0V3Q3Q4T007SUFPSTtFeENrOE9WO0V3Q3o4T007SUFPSTtFeENxOE9WO0V3QzU4T007SUFPSTtFeEN3OE9WO0V3Qy84T007SUFPSTtFeEMyOE9WO0V3Q2w5T007SUFPSTtFeEM4OE9WO0V3Q3I5T007SUFPSTtJQUFBO0V4Q2s5T1Y7RXdDejlPTTtJQU9JO0lBQUE7RXhDczlPVjtFd0M3OU9NO0lBT0k7SUFBQTtFeEMwOU9WO0V3Q2orT007SUFPSTtJQUFBO0V4Qzg5T1Y7RXdDcitPTTtJQU9JO0lBQUE7RXhDaytPVjtFd0N6K09NO0lBT0k7SUFBQTtFeENzK09WO0V3QzcrT007SUFPSTtJQUFBO0V4QzArT1Y7RXdDai9PTTtJQU9JO0lBQUE7RXhDOCtPVjtFd0NyL09NO0lBT0k7SUFBQTtFeENrL09WO0V3Q3ovT007SUFPSTtJQUFBO0V4Q3MvT1Y7RXdDNy9PTTtJQU9JO0lBQUE7RXhDMC9PVjtFd0NqZ1BNO0lBT0k7SUFBQTtFeEM4L09WO0V3Q3JnUE07SUFPSTtFeENpZ1BWO0V3Q3hnUE07SUFPSTtFeENvZ1BWO0V3QzNnUE07SUFPSTtFeEN1Z1BWO0V3QzlnUE07SUFPSTtFeEMwZ1BWO0V3Q2poUE07SUFPSTtFeEM2Z1BWO0V3Q3BoUE07SUFPSTtFeENnaFBWO0V3Q3ZoUE07SUFPSTtFeENtaFBWO0V3QzFoUE07SUFPSTtFeENzaFBWO0V3QzdoUE07SUFPSTtFeEN5aFBWO0V3Q2hpUE07SUFPSTtFeEM0aFBWO0V3Q25pUE07SUFPSTtFeEMraFBWO0V3Q3RpUE07SUFPSTtFeENraVBWO0V3Q3ppUE07SUFPSTtFeENxaVBWO0V3QzVpUE07SUFPSTtFeEN3aVBWO0V3Qy9pUE07SUFPSTtFeEMyaVBWO0V3Q2xqUE07SUFPSTtFeEM4aVBWO0V3Q3JqUE07SUFPSTtFeENpalBWO0V3Q3hqUE07SUFPSTtFeENvalBWO0V3QzNqUE07SUFPSTtFeEN1alBWO0V3QzlqUE07SUFPSTtFeEMwalBWO0V3Q2prUE07SUFPSTtFeEM2alBWO0V3Q3BrUE07SUFPSTtFeENna1BWO0V3Q3ZrUE07SUFPSTtFeENta1BWO0V3QzFrUE07SUFPSTtFeENza1BWO0V3QzdrUE07SUFPSTtFeEN5a1BWO0V3Q2hsUE07SUFPSTtFeEM0a1BWO0V3Q25sUE07SUFPSTtFeEMra1BWO0V3Q3RsUE07SUFPSTtFeENrbFBWO0V3Q3psUE07SUFPSTtFeENxbFBWO0V3QzVsUE07SUFPSTtFeEN3bFBWO0V3Qy9sUE07SUFPSTtFeEMybFBWO0V3Q2xtUE07SUFPSTtFeEM4bFBWO0V3Q3JtUE07SUFPSTtFeENpbVBWO0V3Q3htUE07SUFPSTtFeENvbVBWO0V3QzNtUE07SUFPSTtFeEN1bVBWO0V3QzltUE07SUFPSTtFeEMwbVBWO0V3Q2puUE07SUFPSTtTQUFBO0V4QzZtUFY7RXdDcG5QTTtJQU9JO1NBQUE7RXhDZ25QVjtFd0N2blBNO0lBT0k7U0FBQTtFeENtblBWO0V3QzFuUE07SUFPSTtTQUFBO0V4Q3NuUFY7RXdDN25QTTtJQU9JO1NBQUE7RXhDeW5QVjtFd0Nob1BNO0lBT0k7U0FBQTtFeEM0blBWO0V3Q25vUE07SUFPSTtFeEMrblBWO0V3Q3RvUE07SUFPSTtFeENrb1BWO0V3Q3pvUE07SUFPSTtFeENxb1BWO0FBQ0Y7QVdocFBJO0U2QkdJO0lBT0k7RXhDMG9QVjtFd0NqcFBNO0lBT0k7RXhDNm9QVjtFd0NwcFBNO0lBT0k7RXhDZ3BQVjtFd0N2cFBNO0lBT0k7T0FBQTtFeENtcFBWO0V3QzFwUE07SUFPSTtPQUFBO0V4Q3NwUFY7RXdDN3BQTTtJQU9JO09BQUE7RXhDeXBQVjtFd0NocVBNO0lBT0k7T0FBQTtFeEM0cFBWO0V3Q25xUE07SUFPSTtPQUFBO0V4QytwUFY7RXdDdHFQTTtJQU9JO0V4Q2txUFY7RXdDenFQTTtJQU9JO0V4Q3FxUFY7RXdDNXFQTTtJQU9JO0V4Q3dxUFY7RXdDL3FQTTtJQU9JO0V4QzJxUFY7RXdDbHJQTTtJQU9JO0V4QzhxUFY7RXdDcnJQTTtJQU9JO0V4Q2lyUFY7RXdDeHJQTTtJQU9JO0V4Q29yUFY7RXdDM3JQTTtJQU9JO0V4Q3VyUFY7RXdDOXJQTTtJQU9JO0V4QzByUFY7RXdDanNQTTtJQU9JO0V4QzZyUFY7RXdDcHNQTTtJQU9JO0V4Q2dzUFY7RXdDdnNQTTtJQU9JO0V4Q21zUFY7RXdDMXNQTTtJQU9JO0V4Q3NzUFY7RXdDN3NQTTtJQU9JO0V4Q3lzUFY7RXdDaHRQTTtJQU9JO0V4QzRzUFY7RXdDbnRQTTtJQU9JO0V4QytzUFY7RXdDdHRQTTtJQU9JO0V4Q2t0UFY7RXdDenRQTTtJQU9JO0V4Q3F0UFY7RXdDNXRQTTtJQU9JO0V4Q3d0UFY7RXdDL3RQTTtJQU9JO0V4QzJ0UFY7RXdDbHVQTTtJQU9JO0V4Qzh0UFY7RXdDcnVQTTtJQU9JO0V4Q2l1UFY7RXdDeHVQTTtJQU9JO0V4Q291UFY7RXdDM3VQTTtJQU9JO0V4Q3V1UFY7RXdDOXVQTTtJQU9JO0V4QzB1UFY7RXdDanZQTTtJQU9JO0V4QzZ1UFY7RXdDcHZQTTtJQU9JO0V4Q2d2UFY7RXdDdnZQTTtJQU9JO0V4Q212UFY7RXdDMXZQTTtJQU9JO0V4Q3N2UFY7RXdDN3ZQTTtJQU9JO0V4Q3l2UFY7RXdDaHdQTTtJQU9JO0V4QzR2UFY7RXdDbndQTTtJQU9JO0V4Qyt2UFY7RXdDdHdQTTtJQU9JO0V4Q2t3UFY7RXdDendQTTtJQU9JO0V4Q3F3UFY7RXdDNXdQTTtJQU9JO0V4Q3d3UFY7RXdDL3dQTTtJQU9JO0V4QzJ3UFY7RXdDbHhQTTtJQU9JO0V4Qzh3UFY7RXdDcnhQTTtJQU9JO0V4Q2l4UFY7RXdDeHhQTTtJQU9JO0V4Q294UFY7RXdDM3hQTTtJQU9JO0V4Q3V4UFY7RXdDOXhQTTtJQU9JO0V4QzB4UFY7RXdDanlQTTtJQU9JO0V4QzZ4UFY7RXdDcHlQTTtJQU9JO0V4Q2d5UFY7RXdDdnlQTTtJQU9JO0V4Q215UFY7RXdDMXlQTTtJQU9JO0V4Q3N5UFY7RXdDN3lQTTtJQU9JO0V4Q3l5UFY7RXdDaHpQTTtJQU9JO0V4QzR5UFY7RXdDbnpQTTtJQU9JO0V4Qyt5UFY7RXdDdHpQTTtJQU9JO0V4Q2t6UFY7RXdDenpQTTtJQU9JO0V4Q3F6UFY7RXdDNXpQTTtJQU9JO0V4Q3d6UFY7RXdDL3pQTTtJQU9JO0V4QzJ6UFY7RXdDbDBQTTtJQU9JO0V4Qzh6UFY7RXdDcjBQTTtJQU9JO0V4Q2kwUFY7RXdDeDBQTTtJQU9JO0V4Q28wUFY7RXdDMzBQTTtJQU9JO0V4Q3UwUFY7RXdDOTBQTTtJQU9JO0V4QzAwUFY7RXdDajFQTTtJQU9JO0V4QzYwUFY7RXdDcDFQTTtJQU9JO0V4Q2cxUFY7RXdDdjFQTTtJQU9JO0V4Q20xUFY7RXdDMTFQTTtJQU9JO0V4Q3MxUFY7RXdDNzFQTTtJQU9JO0lBQUE7RXhDMDFQVjtFd0NqMlBNO0lBT0k7SUFBQTtFeEM4MVBWO0V3Q3IyUE07SUFPSTtJQUFBO0V4Q2syUFY7RXdDejJQTTtJQU9JO0lBQUE7RXhDczJQVjtFd0M3MlBNO0lBT0k7SUFBQTtFeEMwMlBWO0V3Q2ozUE07SUFPSTtJQUFBO0V4QzgyUFY7RXdDcjNQTTtJQU9JO0lBQUE7RXhDazNQVjtFd0N6M1BNO0lBT0k7SUFBQTtFeENzM1BWO0V3QzczUE07SUFPSTtJQUFBO0V4QzAzUFY7RXdDajRQTTtJQU9JO0lBQUE7RXhDODNQVjtFd0NyNFBNO0lBT0k7SUFBQTtFeENrNFBWO0V3Q3o0UE07SUFPSTtJQUFBO0V4Q3M0UFY7RXdDNzRQTTtJQU9JO0lBQUE7RXhDMDRQVjtFd0NqNVBNO0lBT0k7SUFBQTtFeEM4NFBWO0V3Q3I1UE07SUFPSTtFeENpNVBWO0V3Q3g1UE07SUFPSTtFeENvNVBWO0V3QzM1UE07SUFPSTtFeEN1NVBWO0V3Qzk1UE07SUFPSTtFeEMwNVBWO0V3Q2o2UE07SUFPSTtFeEM2NVBWO0V3Q3A2UE07SUFPSTtFeENnNlBWO0V3Q3Y2UE07SUFPSTtFeENtNlBWO0V3QzE2UE07SUFPSTtFeENzNlBWO0V3Qzc2UE07SUFPSTtFeEN5NlBWO0V3Q2g3UE07SUFPSTtFeEM0NlBWO0V3Q243UE07SUFPSTtFeEMrNlBWO0V3Q3Q3UE07SUFPSTtFeENrN1BWO0V3Q3o3UE07SUFPSTtFeENxN1BWO0V3QzU3UE07SUFPSTtFeEN3N1BWO0V3Qy83UE07SUFPSTtFeEMyN1BWO0V3Q2w4UE07SUFPSTtFeEM4N1BWO0V3Q3I4UE07SUFPSTtFeENpOFBWO0V3Q3g4UE07SUFPSTtFeENvOFBWO0V3QzM4UE07SUFPSTtFeEN1OFBWO0V3Qzk4UE07SUFPSTtFeEMwOFBWO0V3Q2o5UE07SUFPSTtFeEM2OFBWO0V3Q3A5UE07SUFPSTtFeENnOVBWO0V3Q3Y5UE07SUFPSTtFeENtOVBWO0V3QzE5UE07SUFPSTtFeENzOVBWO0V3Qzc5UE07SUFPSTtFeEN5OVBWO0V3Q2grUE07SUFPSTtFeEM0OVBWO0V3Q24rUE07SUFPSTtFeEMrOVBWO0V3Q3QrUE07SUFPSTtFeENrK1BWO0V3Q3orUE07SUFPSTtFeENxK1BWO0V3QzUrUE07SUFPSTtFeEN3K1BWO0V3Qy8rUE07SUFPSTtFeEMyK1BWO0V3Q2wvUE07SUFPSTtFeEM4K1BWO0V3Q3IvUE07SUFPSTtFeENpL1BWO0V3Q3gvUE07SUFPSTtFeENvL1BWO0V3QzMvUE07SUFPSTtJQUFBO0V4Q3cvUFY7RXdDLy9QTTtJQU9JO0lBQUE7RXhDNC9QVjtFd0NuZ1FNO0lBT0k7SUFBQTtFeENnZ1FWO0V3Q3ZnUU07SUFPSTtJQUFBO0V4Q29nUVY7RXdDM2dRTTtJQU9JO0lBQUE7RXhDd2dRVjtFd0MvZ1FNO0lBT0k7SUFBQTtFeEM0Z1FWO0V3Q25oUU07SUFPSTtJQUFBO0V4Q2doUVY7RXdDdmhRTTtJQU9JO0lBQUE7RXhDb2hRVjtFd0MzaFFNO0lBT0k7SUFBQTtFeEN3aFFWO0V3Qy9oUU07SUFPSTtJQUFBO0V4QzRoUVY7RXdDbmlRTTtJQU9JO0lBQUE7RXhDZ2lRVjtFd0N2aVFNO0lBT0k7SUFBQTtFeENvaVFWO0V3QzNpUU07SUFPSTtFeEN1aVFWO0V3QzlpUU07SUFPSTtFeEMwaVFWO0V3Q2pqUU07SUFPSTtFeEM2aVFWO0V3Q3BqUU07SUFPSTtFeENnalFWO0V3Q3ZqUU07SUFPSTtFeENtalFWO0V3QzFqUU07SUFPSTtFeENzalFWO0V3QzdqUU07SUFPSTtFeEN5alFWO0V3Q2hrUU07SUFPSTtFeEM0alFWO0V3Q25rUU07SUFPSTtFeEMralFWO0V3Q3RrUU07SUFPSTtFeENra1FWO0V3Q3prUU07SUFPSTtFeENxa1FWO0V3QzVrUU07SUFPSTtFeEN3a1FWO0V3Qy9rUU07SUFPSTtFeEMya1FWO0V3Q2xsUU07SUFPSTtFeEM4a1FWO0V3Q3JsUU07SUFPSTtFeENpbFFWO0V3Q3hsUU07SUFPSTtFeENvbFFWO0V3QzNsUU07SUFPSTtFeEN1bFFWO0V3QzlsUU07SUFPSTtFeEMwbFFWO0V3Q2ptUU07SUFPSTtFeEM2bFFWO0V3Q3BtUU07SUFPSTtFeENnbVFWO0V3Q3ZtUU07SUFPSTtFeENtbVFWO0V3QzFtUU07SUFPSTtFeENzbVFWO0V3QzdtUU07SUFPSTtFeEN5bVFWO0V3Q2huUU07SUFPSTtFeEM0bVFWO0V3Q25uUU07SUFPSTtFeEMrbVFWO0V3Q3RuUU07SUFPSTtFeENrblFWO0V3Q3puUU07SUFPSTtFeENxblFWO0V3QzVuUU07SUFPSTtFeEN3blFWO0V3Qy9uUU07SUFPSTtFeEMyblFWO0V3Q2xvUU07SUFPSTtFeEM4blFWO0V3Q3JvUU07SUFPSTtFeENpb1FWO0V3Q3hvUU07SUFPSTtFeENvb1FWO0V3QzNvUU07SUFPSTtFeEN1b1FWO0V3QzlvUU07SUFPSTtFeEMwb1FWO0V3Q2pwUU07SUFPSTtFeEM2b1FWO0V3Q3BwUU07SUFPSTtFeENncFFWO0V3Q3ZwUU07SUFPSTtTQUFBO0V4Q21wUVY7RXdDMXBRTTtJQU9JO1NBQUE7RXhDc3BRVjtFd0M3cFFNO0lBT0k7U0FBQTtFeEN5cFFWO0V3Q2hxUU07SUFPSTtTQUFBO0V4QzRwUVY7RXdDbnFRTTtJQU9JO1NBQUE7RXhDK3BRVjtFd0N0cVFNO0lBT0k7U0FBQTtFeENrcVFWO0V3Q3pxUU07SUFPSTtFeENxcVFWO0V3QzVxUU07SUFPSTtFeEN3cVFWO0V3Qy9xUU07SUFPSTtFeEMycVFWO0FBQ0Y7QVd0clFJO0U2QkdJO0lBT0k7RXhDZ3JRVjtFd0N2clFNO0lBT0k7RXhDbXJRVjtFd0MxclFNO0lBT0k7RXhDc3JRVjtFd0M3clFNO0lBT0k7T0FBQTtFeEN5clFWO0V3Q2hzUU07SUFPSTtPQUFBO0V4QzRyUVY7RXdDbnNRTTtJQU9JO09BQUE7RXhDK3JRVjtFd0N0c1FNO0lBT0k7T0FBQTtFeENrc1FWO0V3Q3pzUU07SUFPSTtPQUFBO0V4Q3FzUVY7RXdDNXNRTTtJQU9JO0V4Q3dzUVY7RXdDL3NRTTtJQU9JO0V4QzJzUVY7RXdDbHRRTTtJQU9JO0V4QzhzUVY7RXdDcnRRTTtJQU9JO0V4Q2l0UVY7RXdDeHRRTTtJQU9JO0V4Q290UVY7RXdDM3RRTTtJQU9JO0V4Q3V0UVY7RXdDOXRRTTtJQU9JO0V4QzB0UVY7RXdDanVRTTtJQU9JO0V4QzZ0UVY7RXdDcHVRTTtJQU9JO0V4Q2d1UVY7RXdDdnVRTTtJQU9JO0V4Q211UVY7RXdDMXVRTTtJQU9JO0V4Q3N1UVY7RXdDN3VRTTtJQU9JO0V4Q3l1UVY7RXdDaHZRTTtJQU9JO0V4QzR1UVY7RXdDbnZRTTtJQU9JO0V4Qyt1UVY7RXdDdHZRTTtJQU9JO0V4Q2t2UVY7RXdDenZRTTtJQU9JO0V4Q3F2UVY7RXdDNXZRTTtJQU9JO0V4Q3d2UVY7RXdDL3ZRTTtJQU9JO0V4QzJ2UVY7RXdDbHdRTTtJQU9JO0V4Qzh2UVY7RXdDcndRTTtJQU9JO0V4Q2l3UVY7RXdDeHdRTTtJQU9JO0V4Q293UVY7RXdDM3dRTTtJQU9JO0V4Q3V3UVY7RXdDOXdRTTtJQU9JO0V4QzB3UVY7RXdDanhRTTtJQU9JO0V4QzZ3UVY7RXdDcHhRTTtJQU9JO0V4Q2d4UVY7RXdDdnhRTTtJQU9JO0V4Q214UVY7RXdDMXhRTTtJQU9JO0V4Q3N4UVY7RXdDN3hRTTtJQU9JO0V4Q3l4UVY7RXdDaHlRTTtJQU9JO0V4QzR4UVY7RXdDbnlRTTtJQU9JO0V4Qyt4UVY7RXdDdHlRTTtJQU9JO0V4Q2t5UVY7RXdDenlRTTtJQU9JO0V4Q3F5UVY7RXdDNXlRTTtJQU9JO0V4Q3d5UVY7RXdDL3lRTTtJQU9JO0V4QzJ5UVY7RXdDbHpRTTtJQU9JO0V4Qzh5UVY7RXdDcnpRTTtJQU9JO0V4Q2l6UVY7RXdDeHpRTTtJQU9JO0V4Q296UVY7RXdDM3pRTTtJQU9JO0V4Q3V6UVY7RXdDOXpRTTtJQU9JO0V4QzB6UVY7RXdDajBRTTtJQU9JO0V4QzZ6UVY7RXdDcDBRTTtJQU9JO0V4Q2cwUVY7RXdDdjBRTTtJQU9JO0V4Q20wUVY7RXdDMTBRTTtJQU9JO0V4Q3MwUVY7RXdDNzBRTTtJQU9JO0V4Q3kwUVY7RXdDaDFRTTtJQU9JO0V4QzQwUVY7RXdDbjFRTTtJQU9JO0V4QyswUVY7RXdDdDFRTTtJQU9JO0V4Q2sxUVY7RXdDejFRTTtJQU9JO0V4Q3ExUVY7RXdDNTFRTTtJQU9JO0V4Q3cxUVY7RXdDLzFRTTtJQU9JO0V4QzIxUVY7RXdDbDJRTTtJQU9JO0V4QzgxUVY7RXdDcjJRTTtJQU9JO0V4Q2kyUVY7RXdDeDJRTTtJQU9JO0V4Q28yUVY7RXdDMzJRTTtJQU9JO0V4Q3UyUVY7RXdDOTJRTTtJQU9JO0V4QzAyUVY7RXdDajNRTTtJQU9JO0V4QzYyUVY7RXdDcDNRTTtJQU9JO0V4Q2czUVY7RXdDdjNRTTtJQU9JO0V4Q20zUVY7RXdDMTNRTTtJQU9JO0V4Q3MzUVY7RXdDNzNRTTtJQU9JO0V4Q3kzUVY7RXdDaDRRTTtJQU9JO0V4QzQzUVY7RXdDbjRRTTtJQU9JO0lBQUE7RXhDZzRRVjtFd0N2NFFNO0lBT0k7SUFBQTtFeENvNFFWO0V3QzM0UU07SUFPSTtJQUFBO0V4Q3c0UVY7RXdDLzRRTTtJQU9JO0lBQUE7RXhDNDRRVjtFd0NuNVFNO0lBT0k7SUFBQTtFeENnNVFWO0V3Q3Y1UU07SUFPSTtJQUFBO0V4Q281UVY7RXdDMzVRTTtJQU9JO0lBQUE7RXhDdzVRVjtFd0MvNVFNO0lBT0k7SUFBQTtFeEM0NVFWO0V3Q242UU07SUFPSTtJQUFBO0V4Q2c2UVY7RXdDdjZRTTtJQU9JO0lBQUE7RXhDbzZRVjtFd0MzNlFNO0lBT0k7SUFBQTtFeEN3NlFWO0V3Qy82UU07SUFPSTtJQUFBO0V4QzQ2UVY7RXdDbjdRTTtJQU9JO0lBQUE7RXhDZzdRVjtFd0N2N1FNO0lBT0k7SUFBQTtFeENvN1FWO0V3QzM3UU07SUFPSTtFeEN1N1FWO0V3Qzk3UU07SUFPSTtFeEMwN1FWO0V3Q2o4UU07SUFPSTtFeEM2N1FWO0V3Q3A4UU07SUFPSTtFeENnOFFWO0V3Q3Y4UU07SUFPSTtFeENtOFFWO0V3QzE4UU07SUFPSTtFeENzOFFWO0V3Qzc4UU07SUFPSTtFeEN5OFFWO0V3Q2g5UU07SUFPSTtFeEM0OFFWO0V3Q245UU07SUFPSTtFeEMrOFFWO0V3Q3Q5UU07SUFPSTtFeENrOVFWO0V3Q3o5UU07SUFPSTtFeENxOVFWO0V3QzU5UU07SUFPSTtFeEN3OVFWO0V3Qy85UU07SUFPSTtFeEMyOVFWO0V3Q2wrUU07SUFPSTtFeEM4OVFWO0V3Q3IrUU07SUFPSTtFeENpK1FWO0V3Q3grUU07SUFPSTtFeENvK1FWO0V3QzMrUU07SUFPSTtFeEN1K1FWO0V3QzkrUU07SUFPSTtFeEMwK1FWO0V3Q2ovUU07SUFPSTtFeEM2K1FWO0V3Q3AvUU07SUFPSTtFeENnL1FWO0V3Q3YvUU07SUFPSTtFeENtL1FWO0V3QzEvUU07SUFPSTtFeENzL1FWO0V3QzcvUU07SUFPSTtFeEN5L1FWO0V3Q2hnUk07SUFPSTtFeEM0L1FWO0V3Q25nUk07SUFPSTtFeEMrL1FWO0V3Q3RnUk07SUFPSTtFeENrZ1JWO0V3Q3pnUk07SUFPSTtFeENxZ1JWO0V3QzVnUk07SUFPSTtFeEN3Z1JWO0V3Qy9nUk07SUFPSTtFeEMyZ1JWO0V3Q2xoUk07SUFPSTtFeEM4Z1JWO0V3Q3JoUk07SUFPSTtFeENpaFJWO0V3Q3hoUk07SUFPSTtFeENvaFJWO0V3QzNoUk07SUFPSTtFeEN1aFJWO0V3QzloUk07SUFPSTtFeEMwaFJWO0V3Q2ppUk07SUFPSTtJQUFBO0V4QzhoUlY7RXdDcmlSTTtJQU9JO0lBQUE7RXhDa2lSVjtFd0N6aVJNO0lBT0k7SUFBQTtFeENzaVJWO0V3QzdpUk07SUFPSTtJQUFBO0V4QzBpUlY7RXdDampSTTtJQU9JO0lBQUE7RXhDOGlSVjtFd0NyalJNO0lBT0k7SUFBQTtFeENralJWO0V3Q3pqUk07SUFPSTtJQUFBO0V4Q3NqUlY7RXdDN2pSTTtJQU9JO0lBQUE7RXhDMGpSVjtFd0Nqa1JNO0lBT0k7SUFBQTtFeEM4alJWO0V3Q3JrUk07SUFPSTtJQUFBO0V4Q2trUlY7RXdDemtSTTtJQU9JO0lBQUE7RXhDc2tSVjtFd0M3a1JNO0lBT0k7SUFBQTtFeEMwa1JWO0V3Q2psUk07SUFPSTtFeEM2a1JWO0V3Q3BsUk07SUFPSTtFeENnbFJWO0V3Q3ZsUk07SUFPSTtFeENtbFJWO0V3QzFsUk07SUFPSTtFeENzbFJWO0V3QzdsUk07SUFPSTtFeEN5bFJWO0V3Q2htUk07SUFPSTtFeEM0bFJWO0V3Q25tUk07SUFPSTtFeEMrbFJWO0V3Q3RtUk07SUFPSTtFeENrbVJWO0V3Q3ptUk07SUFPSTtFeENxbVJWO0V3QzVtUk07SUFPSTtFeEN3bVJWO0V3Qy9tUk07SUFPSTtFeEMybVJWO0V3Q2xuUk07SUFPSTtFeEM4bVJWO0V3Q3JuUk07SUFPSTtFeENpblJWO0V3Q3huUk07SUFPSTtFeENvblJWO0V3QzNuUk07SUFPSTtFeEN1blJWO0V3QzluUk07SUFPSTtFeEMwblJWO0V3Q2pvUk07SUFPSTtFeEM2blJWO0V3Q3BvUk07SUFPSTtFeENnb1JWO0V3Q3ZvUk07SUFPSTtFeENtb1JWO0V3QzFvUk07SUFPSTtFeENzb1JWO0V3QzdvUk07SUFPSTtFeEN5b1JWO0V3Q2hwUk07SUFPSTtFeEM0b1JWO0V3Q25wUk07SUFPSTtFeEMrb1JWO0V3Q3RwUk07SUFPSTtFeENrcFJWO0V3Q3pwUk07SUFPSTtFeENxcFJWO0V3QzVwUk07SUFPSTtFeEN3cFJWO0V3Qy9wUk07SUFPSTtFeEMycFJWO0V3Q2xxUk07SUFPSTtFeEM4cFJWO0V3Q3JxUk07SUFPSTtFeENpcVJWO0V3Q3hxUk07SUFPSTtFeENvcVJWO0V3QzNxUk07SUFPSTtFeEN1cVJWO0V3QzlxUk07SUFPSTtFeEMwcVJWO0V3Q2pyUk07SUFPSTtFeEM2cVJWO0V3Q3ByUk07SUFPSTtFeENnclJWO0V3Q3ZyUk07SUFPSTtFeENtclJWO0V3QzFyUk07SUFPSTtFeENzclJWO0V3QzdyUk07SUFPSTtTQUFBO0V4Q3lyUlY7RXdDaHNSTTtJQU9JO1NBQUE7RXhDNHJSVjtFd0Nuc1JNO0lBT0k7U0FBQTtFeEMrclJWO0V3Q3RzUk07SUFPSTtTQUFBO0V4Q2tzUlY7RXdDenNSTTtJQU9JO1NBQUE7RXhDcXNSVjtFd0M1c1JNO0lBT0k7U0FBQTtFeEN3c1JWO0V3Qy9zUk07SUFPSTtFeEMyc1JWO0V3Q2x0Uk07SUFPSTtFeEM4c1JWO0V3Q3J0Uk07SUFPSTtFeENpdFJWO0FBQ0Y7QXlDeHdSQTtFRCtDUTtJQU9JO0V4Q3N0UlY7RXdDN3RSTTtJQU9JO0V4Q3l0UlY7RXdDaHVSTTtJQU9JO0V4QzR0UlY7RXdDbnVSTTtJQU9JO0V4Qyt0UlY7QUFDRjtBeUNud1JBO0VENEJRO0lBT0k7RXhDb3VSVjtFd0MzdVJNO0lBT0k7RXhDdXVSVjtFd0M5dVJNO0lBT0k7RXhDMHVSVjtFd0NqdlJNO0lBT0k7RXhDNnVSVjtFd0NwdlJNO0lBT0k7RXhDZ3ZSVjtFd0N2dlJNO0lBT0k7RXhDbXZSVjtFd0MxdlJNO0lBT0k7RXhDc3ZSVjtFd0M3dlJNO0lBT0k7RXhDeXZSVjtFd0Nod1JNO0lBT0k7RXhDNHZSVjtFd0Nud1JNO0lBT0k7RXhDK3ZSVjtFd0N0d1JNO0lBT0k7RXhDa3dSVjtBQUNGO0EwQzUwUkE7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7QTFDMDBSSjtBMEN2MFJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQ3kwUko7QTBDdjBSSTtFQUNJO0ExQ3kwUlI7QTBDdDBSSTtFQUNJO0ExQ3cwUlI7QTBDcjBSSTtFQUNJO0ExQ3UwUlI7QTBDcDBSSTtFQUNJO0ExQ3MwUlI7QTBDbjBSSTtFQUNJO0ExQ3EwUlI7QTBDbDBSSTtFQUNJO0ExQ28wUlI7QTBDajBSSTtFQUNJO0ExQ20wUlI7QTBDaDBSSTtFQUNJO0ExQ2swUlI7QTBDL3pSSTtFQUNJO0ExQ2kwUlI7QTBDOXpSSTtFQUNJO0ExQ2cwUlI7QTBDN3pSSTtFQUNJO0ExQyt6UlI7QTBDNXpSSTtFQUNJO0ExQzh6UlI7QTBDM3pSSTtFQUNJO0ExQzZ6UlI7QTBDM3pSSTtFQUNJO0ExQzZ6UlI7O0EyQ3g0UkE7Ozs7OztFQUFBO0FDR0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUM0NFJGO0E0QzE0UkU7RUFLSSxVQ3BCb0I7QTdDNDVSMUI7QTRDbjRSSTtFQUtJLFVDOUJrQjtBN0MrNVIxQjtBNEM3M1JJOzs7RUFHRSx1QkN2Q2tCO0E3Q3M2UnhCOztBNEMxM1JBO0VBQ0UsV0NoRHNCO0VEaUR0QjtFQUNBO0VBQ0E7QTVDNjNSRjs7QTRDMTNSQTtFQUNFO0VBQ0E7RUFDQTtBNUM2M1JGO0E0QzMzUkU7RUFHRSxXQzlEb0I7RUQrRHBCLFdDOURxQjtFRCtEckIsdUJDN0RvQjtFRDhEcEIsa0JDN0Q0QjtFRDhENUI7RUFDQTtFQUNBO0VBQ0E7QTVDMjNSSjtBNEN4M1JFO0VBRUU7RUFDQTtBNUN5M1JKO0E0Q3QzUkU7RUFDRTtBNUN3M1JKO0E0Q3IzUkU7RUFDRTtBNUN1M1JKOztBOEMzOFJFOztFQUFBO0FBSUU7RUFDRTtBOUM2OFJOO0E4QzE4Ukk7RUFDRTtBOUM0OFJOO0E4Q3o4Uk07RUFFRTtBOUMwOFJSO0E4Q3I4Uk07RUFDRTtFQUNBO0E5Q3U4UlI7QThDcjhSUTtFQUNFO0E5Q3U4UlY7QThDcDhSUTtFQUNFO0E5Q3M4UlY7O0ErQ2wrUkU7O0VBQUE7QUFJRTtFQUNFO0EvQ28rUk47QStDaitSSTtFQUNFO0EvQ20rUk47QStDaCtSTTtFQUVFO0EvQ2krUlI7QStDNTlSTTtFQUNFO0VBQ0E7QS9DODlSUjtBK0M1OVJRO0VBQ0U7QS9DODlSVjtBK0MzOVJRO0VBQ0U7QS9DNjlSVjs7QWdEei9SRTs7RUFBQTtBQUlFO0VBQ0U7QWhEMi9STjtBZ0R4L1JJO0VBQ0U7QWhEMC9STjtBZ0R2L1JNO0VBRUU7QWhEdy9SUjtBZ0RuL1JNO0VBQ0U7RUFDQTtBaERxL1JSO0FnRG4vUlE7RUFDRTtBaERxL1JWO0FnRGwvUlE7RUFDRTtBaERvL1JWOztBaURoaFNFOztFQUFBO0FBSUU7RUFDRTtBakRraFNOO0FpRC9nU0k7RUFDRTtBakRpaFNOO0FpRDlnU007RUFFRTtBakQrZ1NSO0FpRDFnU007RUFDRTtFQUNBO0FqRDRnU1I7QWlEMWdTUTtFQUNFO0FqRDRnU1Y7QWlEemdTUTtFQUNFO0FqRDJnU1Y7O0FrRHZpU0U7O0VBQUE7QUFJRTtFQUNFO0FsRHlpU047QWtEdGlTSTtFQUNFO0FsRHdpU047QWtEcmlTTTtFQUVFO0FsRHNpU1I7QWtEamlTTTtFQUNFO0VBQ0E7QWxEbWlTUjtBa0RqaVNRO0VBQ0U7QWxEbWlTVjtBa0RoaVNRO0VBQ0U7QWxEa2lTVjs7QW1EOWpTRTs7RUFBQTtBQUlFO0VBQ0U7QW5EZ2tTTjtBbUQ3alNJO0VBQ0U7QW5EK2pTTjtBbUQ1alNNO0VBRUU7QW5ENmpTUjtBbUR4alNNO0VBQ0U7RUFDQTtBbkQwalNSO0FtRHhqU1E7RUFDRTtBbkQwalNWO0FtRHZqU1E7RUFDRTtBbkR5alNWOztBb0RybFNFOztFQUFBO0FBS0k7RUFDRTtBcERzbFNSO0FvRG5sU007RUFDRTtBcERxbFNSOztBcUQvbFNFOztFQUFBO0FBS0k7RUFDRTtBckRnbVNSO0FxRDdsU007RUFDRTtBckQrbFNSOztBc0R6bVNFOztFQUFBO0FBS0k7RUFDRTtBdEQwbVNSO0FzRHRtU007RUFDRTtBdER3bVNSO0FzRGptU1E7RUFDRTtFQUNBO0VBQ0E7QXREbW1TVjtBc0QvbFNRO0VBQ0U7RUFDQTtFQUNBO0F0RGltU1Y7O0F1RDduU0U7O0VBQUE7QUFLSTtFQUNFO0F2RDhuU1I7QXVEMW5TTTtFQUNFO0F2RDRuU1I7QXVEcm5TUTtFQUNFO0VBQ0E7RUFDQTtBdkR1blNWO0F1RG5uU1E7RUFDRTtFQUNBO0VBQ0E7QXZEcW5TVjs7QXdEanBTRTs7RUFBQTtBQUlFO0VBQ0U7QXhEbXBTTjtBd0RqcFNNO0VBQ0U7QXhEbXBTUjtBd0RocFNNO0VBQ0U7QXhEa3BTUjs7QXlEOXBTRTs7RUFBQTtBQUlFO0VBQ0U7QXpEZ3FTTjtBeUQ5cFNNO0VBQ0U7QXpEZ3FTUjtBeUQ3cFNNO0VBQ0U7QXpEK3BTUjs7QTBEM3FTRTs7RUFBQTtBQUtJO0VBR0U7QTFEMHFTUjtBMERycVNNO0VBQ0U7QTFEdXFTUjtBMERycVNRO0VBQ0U7RUFDQTtBMUR1cVNWO0EwRHBxU1E7RUFDRTtFQUNBO0ExRHNxU1Y7O0EyRDdyU0U7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEK3JTTjtBMkQ3clNNO0VBQ0U7RUFDQTtBM0QrclNSO0EyRDNyU007RUFDRTtBM0Q2clNSO0EyRHZyU007RUFDRTtFQUNBO0VBQ0E7QTNEeXJTUjtBMkR2clNRO0VBQ0U7RUFDQTtFQUNBO0EzRHlyU1Y7QTJEcnJTUTtFQUNFO0VBQ0E7RUFDQTtBM0R1clNWOztBNEQ5dFNFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RGd1U047QTREOXRTTTtFQUNFO0VBQ0E7QTVEZ3VTUjtBNEQ1dFNNO0VBQ0U7QTVEOHRTUjtBNER4dFNNO0VBQ0U7RUFDQTtFQUNBO0E1RDB0U1I7QTREeHRTUTtFQUNFO0VBQ0E7RUFDQTtBNUQwdFNWO0E0RHR0U1E7RUFDRTtFQUNBO0VBQ0E7QTVEd3RTVjs7QTZEN3ZTRTs7RUFBQTtBQUlFO0VBQ0U7RUFDQTtFQUNBO0E3RCt2U047QTZEN3ZTTTtFQUNFO0VBQ0E7QTdEK3ZTUjtBNkQ1dlNNO0VBQ0U7RUFDQTtBN0Q4dlNSO0E2RHp2U007RUFHRTtFQUNBO0E3RHl2U1I7QTZEdnZTUTtFQUNFO0VBQ0E7QTdEeXZTVjtBNkR0dlNRO0VBQ0U7RUFDQTtBN0R3dlNWOztBOEQxeFNFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0VBQ0E7QTlENHhTTjtBOEQxeFNNO0VBQ0U7RUFDQTtBOUQ0eFNSO0E4RHp4U007RUFDRTtFQUNBO0E5RDJ4U1I7QThEdHhTTTtFQUdFO0VBQ0E7QTlEc3hTUjtBOERweFNRO0VBQ0U7RUFDQTtBOURzeFNWO0E4RG54U1E7RUFDRTtFQUNBO0E5RHF4U1Y7O0ErRHp6U0U7O0VBQUE7QUFHQTtFQUNFO0EvRDR6U0o7QStEMXpTSTtFQUNFO0EvRDR6U047QStEMXpTTTtFQUNFO0VBQ0E7QS9ENHpTUjtBK0R2elNNO0VBQ0U7RUFDQTtFQUNBO0EvRHl6U1I7QStEbHpTTTtFQUNFO0VBQ0E7RUFDQTtBL0RvelNSO0ErRGx6U1E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0RvelNWO0ErRC95U1E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0RpelNWOztBZ0U3MVNFOztFQUFBO0FBR0E7RUFDRTtBaEVnMlNKO0FnRTkxU0k7RUFDRTtBaEVnMlNOO0FnRTkxU007RUFDRTtFQUNBO0FoRWcyU1I7QWdFMzFTTTtFQUNFO0VBQ0E7RUFDQTtBaEU2MVNSO0FnRXQxU007RUFDRTtFQUNBO0VBQ0E7QWhFdzFTUjtBZ0V0MVNRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhFdzFTVjtBZ0VuMVNRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhFcTFTVjs7QWlFajRTRTs7RUFBQTtBQUtJO0VBRUU7QWpFaTRTUjtBaUV6M1NRO0VBRUU7RUFDQTtBakUwM1NWO0FpRXQzU1E7RUFDRTtBakV3M1NWO0FpRXIzU1E7RUFDRTtBakV1M1NWOztBa0VoNVNFOztFQUFBO0FBSUU7RUFDRTtBbEVrNVNOO0FrRWg1U007RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEVrNVNSO0FrRS80U007RUFDRTtBbEVpNVNSO0FrRTU0U007RUFHRTtBbEU0NFNSO0FrRTE0U1E7RUFDRTtFQUNBO0FsRTQ0U1Y7QWtFejRTUTtFQUNFO0FsRTI0U1Y7O0FtRTE2U0U7O0VBQUE7QUFJRTtFQUNFO0FuRTQ2U047QW1FMTZTTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRTQ2U1I7QW1FejZTTTtFQUNFO0FuRTI2U1I7QW1FdDZTTTtFQUdFO0FuRXM2U1I7QW1FcDZTUTtFQUNFO0VBQ0E7QW5FczZTVjtBbUVuNlNRO0VBQ0U7QW5FcTZTVjs7QW9FdDhTRTs7RUFBQTtBQUlFO0VBQ0U7RUFDQTtBcEV3OFNOO0FvRXQ4U007RUFDRTtBcEV3OFNSO0FvRXA4U007RUFDRTtBcEVzOFNSO0FvRWg4U007RUFDRTtFQUNBO0VBQ0E7QXBFazhTUjtBb0VoOFNRO0VBQ0U7RUFDQTtFQUNBO0FwRWs4U1Y7QW9FOTdTUTtFQUNFO0VBQ0E7RUFDQTtBcEVnOFNWOztBcUVuK1NFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0FyRXErU047QXFFbitTTTtFQUNFO0FyRXErU1I7QXFFaitTTTtFQUNFO0FyRW0rU1I7QXFFNzlTTTtFQUNFO0VBQ0E7RUFDQTtBckUrOVNSO0FxRTc5U1E7RUFDRTtFQUNBO0VBQ0E7QXJFKzlTVjtBcUUzOVNRO0VBQ0U7RUFDQTtFQUNBO0FyRTY5U1Y7O0FzRTkvU0U7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7QXRFZ2dUTjtBc0U5L1NNO0VBQ0U7RUFDQTtBdEVnZ1RSO0FzRTUvU007RUFDRTtFQUNBO0F0RTgvU1I7QXNFeC9TTTtFQUNFO0VBQ0E7QXRFMC9TUjtBc0V4L1NRO0VBQ0U7RUFDQTtFQUVBO0F0RXkvU1Y7QXNFdC9TUTtFQUNFO0VBQ0E7RUFFQTtBdEV1L1NWOztBdUU5aFRFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RWdpVE47QXVFOWhUTTtFQUNFO0VBQ0E7QXZFZ2lUUjtBdUU1aFRNO0VBQ0U7QXZFOGhUUjtBdUV4aFRNO0VBQ0U7RUFDQTtFQUNBO0F2RTBoVFI7QXVFeGhUUTtFQUNFO0VBQ0E7RUFDQTtBdkUwaFRWO0F1RXRoVFE7RUFDRTtFQUNBO0VBQ0E7QXZFd2hUVjs7QXdFL2pURTs7RUFBQTtBQUlFO0VBQ0U7QXhFaWtUTjtBd0U5alRNO0VBQ0U7QXhFZ2tUUjtBd0U1alRNO0VBQ0U7QXhFOGpUUjtBd0V4alRNO0VBQ0U7RUFDQTtFQUVBO0F4RXlqVFI7QXdFdGpUUTtFQUNFO0VBQ0E7RUFDQTtBeEV3alRWO0F3RXBqVFE7RUFDRTtFQUNBO0VBQ0E7QXhFc2pUVjs7QXlFM2xURTs7RUFBQTtBQUlFO0VBQ0U7QXpFNmxUTjtBeUUxbFRNO0VBQ0U7QXpFNGxUUjtBeUV4bFRNO0VBQ0U7QXpFMGxUUjtBeUVwbFRNO0VBQ0U7RUFDQTtFQUVBO0F6RXFsVFI7QXlFbGxUUTtFQUNFO0VBQ0E7RUFDQTtBekVvbFRWO0F5RWhsVFE7RUFDRTtFQUNBO0VBQ0E7QXpFa2xUVjs7QTBFdm5URTs7RUFBQTtBQUlFO0VBQ0U7RUFDQTtBMUV5blROO0EwRXZuVE07RUFDRTtBMUV5blRSO0EwRXJuVE07RUFDRTtBMUV1blRSO0EwRWpuVE07RUFDRTtFQUNBO0VBQ0E7QTFFbW5UUjtBMEVqblRRO0VBQ0U7RUFDQTtFQUNBO0ExRW1uVFY7QTBFL21UUTtFQUNFO0VBQ0E7RUFDQTtBMUVpblRWOztBMkVwcFRFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0EzRXNwVE47QTJFcHBUTTtFQUVFO0VBQ0E7RUFDQTtBM0VxcFRSO0EyRWxwVE07RUFDRTtBM0VvcFRSO0EyRWpwVE07RUFDRTtBM0VtcFRSO0EyRTlvVE07RUFDRTtFQUNBO0EzRWdwVFI7QTJFOW9UUTtFQUVFO0EzRStvVFY7QTJFNW9UUTtFQUNFO0VBQ0E7QTNFOG9UVjtBMkUzb1RRO0VBQ0U7RUFDQTtBM0U2b1RWOztBNEV0clRFOztFQUFBO0FBSUU7RUFDRTtFQUNBO0E1RXdyVE47QTRFdHJUTTtFQUVFO0VBQ0E7RUFDQTtBNUV1clRSO0E0RXByVE07RUFDRTtBNUVzclRSO0E0RW5yVE07RUFDRTtBNUVxclRSO0E0RWhyVE07RUFDRTtFQUNBO0E1RWtyVFI7QTRFaHJUUTtFQUVFO0E1RWlyVFY7QTRFOXFUUTtFQUNFO0VBQ0E7QTVFZ3JUVjtBNEU3cVRRO0VBQ0U7RUFDQTtBNUUrcVRWOztBNkV6dFRBOzs7Ozs7O0VBT0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U0dFRKO0E2RTF0VEk7Ozs7Ozs7RUFDSTtFQUNBO0E3RWt1VFI7O0E2RTN0VEk7OztFQUNJO0E3RWd1VFI7O0E2RTV0VEE7Ozs7RUFJSTtBN0UrdFRKOztBNkU1dFRBO0VBQ0k7RUFDQTtBN0UrdFRKOztBNkU1dFRBOztFQUVJO0VBQ0E7QTdFK3RUSjs7QTZFNXRUQTs7RUFFSTtBN0UrdFRKOztBNkU1dFRBO0VBQ0k7RUFDQTtBN0UrdFRKOztBNkU1dFRBOzs7O0VBSUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtBN0UrdFRKO0E2RTd0VEk7Ozs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VrdVRSO0E2RS90VEk7Ozs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VvdVRSO0E2RWx1VFE7Ozs7RUFDSTtBN0V1dVRaOztBNkVsdVRBOztFQUVJO0VBQ0E7QTdFcXVUSjs7QTZFbHVUQTtFQUNJO0VBQ0E7QTdFcXVUSjs7QTZFanVUSTtFQUNJO0E3RW91VFI7O0E2RWh1VEE7RUFDSTtBN0VtdVRKOztBNkVodVRBO0VBQ0k7QTdFbXVUSjs7QTZFaHVUQTtFQUNJO0E3RW11VEo7O0FBaDJUQTtBOEVMQTtFQUNJO2lGQUFBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7aUZBQUE7RUMxRkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUR1QkE7aUZBQUE7QTlFKzNUSjtBV2g2VEk7RW1FL0RKO0lBbUdRO0U5RWc0VE47QUFDRjs7QThFNzNUQTs7RUFFSTtBOUVnNFRKOztBOEU3M1RBO0VBQ0k7RUFDQTtBOUVnNFRKOztBOEU3M1RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RWc0VEo7QThFOTNUSTtFQUNJO0E5RWc0VFI7O0FnRjcvVEE7RUFDSTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7QWhGOC9USjtBZ0YzL1RBO0VBQ0k7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0FoRjIvVEo7QWdGeC9UQTtFQUNJO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtBaEZ3L1RKO0FnRnIvVEE7RUFDSTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7QWhGcS9USjtBaUY5aFVBO0VGRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QS9Fd2dVSjs7QWlGN2tVQTtFRkZJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0EvRW1pVUo7O0FpRmpxVUE7RUZOSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWtFQTtFQUdBO0VBR0E7RUFFQTtFQUNBO0EvRThrVUo7O0FpRnR0VUE7RUZWSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWdGQTtFQUNBO0VBRUE7RUFDQTtBL0U2blVKOztBaUYxd1VBO0VGZEk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUF5RkE7RUFDQTtFQUVBO0VBQ0E7QS9FNHFVSjs7QWlGOXpVQTtFRmxCSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWtHQTtFQUNBO0VBRUE7RUFDQTtBL0UydFVKOztBaUZsM1VBO0VGdEJJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBOENBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0EvRTB5VUo7O0FpRmg5VUE7RUYxQkk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUE4SEE7RUFDQTtFQUVBO0VBQ0E7QS9FeTFVSjs7QWlGcGdWQTtFRjlCSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQXVJQTtFQUNBO0VBRUE7RUFDQTtBL0V3NFVKOztBaUZ4alZBO0VGbENJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBbUZBO0VBRUE7RUFDQTtBL0UyOVVKOztBa0Z2clZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEYwclZKO0FXbm9WSTtFdUUvREo7SUFXUTtJQUNBO0VsRjJyVk47QUFDRjs7QWtGeHJWQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEYyclZKOztBa0Z4clZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjJyVko7QVczcFZJO0V1RXRDSjtJQVNRO0lBQ0E7RWxGNHJWTjtBQUNGOztBa0Z6clZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjRyVko7QVcxcVZJO0V1RXhCSjtJQVNRO0lBQ0E7RWxGNnJWTjtBQUNGOztBa0YxclZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGNnJWSjtBVzFyVkk7RXVFVko7SUFVUTtJQUNBO0VsRjhyVk47QUFDRjs7QWtGM3JWQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY4clZKO0FXenNWSTtFdUVLSjtJQVNRO0lBQ0E7RWxGK3JWTjtBQUNGOztBa0Y1clZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRityVko7QVd4dFZJO0V1RW1CSjtJQVNRO0lBQ0E7RWxGZ3NWTjtBQUNGOztBa0Y3clZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZnc1ZKO0FrRjlyVkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZ3NWUjtBV3Z2Vkk7RXVFaUNKO0lBMEJRO0lBQ0E7SUFDQTtFbEZnc1ZOO0FBQ0Y7O0FrRjdyVkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZ3NWSjtBV3Z3Vkk7RXVFaUVKO0lBU1E7SUFDQTtFbEZpc1ZOO0FBQ0Y7O0FrRjlyVkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGaXNWSjs7QWtGOXJWQTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZrc1ZKOztBa0YvclZBOztFQUNDO0VBQ0c7RUFDQTtFQUNBO0FsRm1zVko7O0FrRmhzVkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZtc1ZKOztBa0Zoc1ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm1zVko7QWtGaHNWUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZrc1ZaO0FXajBWSTtFdUV5SEk7SUFTUTtFbEZtc1ZkO0FBQ0Y7QVd0MFZJO0V1RXlISTtJQWFRO0VsRm9zVmQ7QUFDRjtBVzMwVkk7RXVFZ0hKO0lBNEJRO0lBQ0E7RWxGbXNWTjtBQUNGOztBa0Zoc1ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZtc1ZKOztBa0Zoc1ZBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGbXNWSjs7QWtGaHNWQTtFQUNJO0VBQ0E7QWxGbXNWSjs7QWtGNXJWQTs7RUFFSTtFQUNBO0FsRityVko7O0FrRjVvVkE7RUFDSTtFQUNBO0FsRitvVko7QWtGN29WSTtFQUNJO0VBQ0E7RUFDQTtBbEYrb1ZSOztBa0Yzb1ZBO0VBQ0k7RUFDQTtFQUNBO0FsRjhvVko7QVczM1ZJO0V1RTBPSjtJQU1RO0lBQ0E7U0FBQTtJQUNBO0VsRitvVk47QUFDRjs7QVdyM1ZJO0V1RTZPSjtJQUVRO0VsRjJvVk47QUFDRjtBa0Z6b1ZJO0VBQ0k7QWxGMm9WUjs7QW1GMThWQTs7Ozs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZrOVZKOztBbUZ6OFZBOytFQUFBO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GNDhWSjtBbUYxOFZJO0VBQ0k7QW5GNDhWUjs7QW1GdDhWQTsrRUFBQTtBQU9BO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0FuRm04Vko7QW1GajhWSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm04VlI7QW1GaDhWSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GazhWUjtBbUYvN1ZJO0VBQ0k7RUFDQTtFQUNBO0FuRmk4VlI7QW1GLzdWUTtFQUNJO0FuRmk4Vlo7O0FtRjU3VkE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GODdWSjtBbUY1N1ZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY4N1ZSO0FtRjM3Vkk7RUFDSTtFQUNBO0FuRjY3VlI7O0FtRi82VlE7RUFDSTtFQUNBO0FuRms3Vlo7QW1GMzZWUTtFQUNJO0VBQ0E7QW5GNjZWWjtBbUZ0NlZRO0VBQ0k7RUFDQTtBbkZ3NlZaO0FtRjc1VlE7RUFDSTtFQUNBO0FuRis1Vlo7QW1GeDVWUTtFQUNJO0VBQ0E7QW5GMDVWWjtBbUZuNVZRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GcTVWWjs7QW9GdGxXQTs7Ozs7O0VBTUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRnlsV0o7QW9GdmxXSTtFQUNJO0VBQ0E7QXBGOGxXUjtBb0ZobVdJOzs7Ozs7RUFDSTtFQUNBO0FwRjhsV1I7O0FvRnhsV0E7RUFDSTtBcEYybFdKOztBb0Z2bFdJO0VBRUk7RUFDQTtBcEZ5bFdSOztBb0ZybFdBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0FwRndsV0o7O0FvRnJsV0E7RUFDSTtBcEZ3bFdKO0FvRnRsV0k7RUFDSTtLQUFBO1VBQUE7RUFDQTtFQUNBO0FwRndsV1I7QW9GcmxXSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZ1bFdSOztBb0ZubFdBO0VBRUk7RUFDQTtBcEZxbFdKOztBb0ZqbFdJO0VBQ0k7QXBGb2xXUjs7QXFGNXBXQTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGK3BXSjtBcUY1cFdROzs7RUFDSTtBckZncVdaO0FxRjlwV1k7OztFQUNJO0FyRmtxV2hCO0FxRi9wV1k7Ozs7O0VBQ0k7QXJGcXFXaEI7QXFGbnFXZ0I7Ozs7O0VBQ0k7QXJGeXFXcEI7QXFGcHFXZ0I7OztFQUNJO0FyRndxV3BCO0FxRm5xV2dCOzs7RUFDSTtBckZ1cVdwQjtBcUZocVdROztFQUNJO0VBQ0E7QXJGbXFXWjtBcUYzcFdJOztFQUNJO0VBQ0E7QXJGOHBXUjtBcUY1cFdROzs7RUFDSTtBckZncVdaO0FxRjNwV1E7OztFQUNJO0FyRitwV1o7QXFGMXBXUTs7O0VBQ0k7QXJGOHBXWjs7QVcxcFdJO0UwRUNKO0lBRVE7SUFDQTtJQUNBO0VyRjRwV047QUFDRjs7QVdscVdJO0UwRXFDQTtJQTNCQTtFckY2cFdGO0VxRjNwV0U7SUFDSTtFckY2cFdOO0VxRjFwV0U7SUFDSTtFckY0cFdOO0VxRnpwV0U7SUFDSTtFckYycFdOO0VxRnhwV0U7SUFDSTtJQUNBO0lBQ0E7RXJGMHBXTjtFcUZ2cFdFO0lBQ0k7SUFDQTtFckZ5cFdOO0FBQ0Y7QVcxcldJO0UwRWdEWTtJQXRDWjtFckZvcldGO0VxRmxyV0U7SUFDSTtFckZvcldOO0VxRmpyV0U7SUFDSTtFckZtcldOO0VxRmhyV0U7SUFDSTtFckZrcldOO0VxRi9xV0U7SUFDSTtJQUNBO0lBQ0E7RXJGaXJXTjtFcUY5cVdFO0lBQ0k7SUFDQTtFckZncldOO0FBQ0Y7QVdqdFdJO0UwRWdEWTtJQXRDWjtFckYyc1dGO0VxRnpzV0U7SUFDSTtFckYyc1dOO0VxRnhzV0U7SUFDSTtFckYwc1dOO0VxRnZzV0U7SUFDSTtFckZ5c1dOO0VxRnRzV0U7SUFDSTtJQUNBO0lBQ0E7RXJGd3NXTjtFcUZyc1dFO0lBQ0k7SUFDQTtFckZ1c1dOO0FBQ0Y7QVd4dVdJO0UwRWdEWTtJQXRDWjtFckZrdVdGO0VxRmh1V0U7SUFDSTtFckZrdVdOO0VxRi90V0U7SUFDSTtFckZpdVdOO0VxRjl0V0U7SUFDSTtFckZndVdOO0VxRjd0V0U7SUFDSTtJQUNBO0lBQ0E7RXJGK3RXTjtFcUY1dFdFO0lBQ0k7SUFDQTtFckY4dFdOO0FBQ0Y7QVcvdldJO0UwRWdEWTtJQXRDWjtFckZ5dldGO0VxRnZ2V0U7SUFDSTtFckZ5dldOO0VxRnR2V0U7SUFDSTtFckZ3dldOO0VxRnJ2V0U7SUFDSTtFckZ1dldOO0VxRnB2V0U7SUFDSTtJQUNBO0lBQ0E7RXJGc3ZXTjtFcUZudldFO0lBQ0k7SUFDQTtFckZxdldOO0FBQ0Y7QXNGbDJXQTtFQUNJO0VBQ0E7QXRGbzJXSjs7QUE5MVdBO0F1Rk5BO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZ3MldKO0F1RnQyV0k7RUFDSTtBdkZ3MldSO0F1RnQyV1E7RUFDSTtFQUNBO0VBQ0E7QXZGdzJXWjtBdUZyMldRO0VBQ0k7QXZGdTJXWjtBdUZyMldZO0VBQ0k7RUFDQTtFQUNBO0F2RnUyV2hCO0F1RnAyV1k7RUFDSTtBdkZzMldoQjtBdUZuMldhO0VBQ0c7RUFDQTtFQUNBO0F2RnEyV2hCO0F1RmgyV1k7RUFDSTtFQUNBO0F2RmsyV2hCO0F1RjUxV1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RjgxV1o7QXVGMTFXSTtFQUNJO0VBQ0E7QXZGNDFXUjtBdUZ6MVdJO0VBQ0k7QXZGMjFXUjtBdUZ4MVdJO0VBQ0k7RUFDQTtFQUNBO0F2RjAxV1I7QXVGdjFXSTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0F2RncxV1I7QXVGdDFXUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZ3MVdaO0F1RnIxV1E7RUFDSTtBdkZ1MVdaO0F1Rm4xV0k7RUFDSTtFQUNBO0VBQ0E7QXZGcTFXUjtBdUZsMVdJO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZGbTFXUjtBdUZqMVdRO0VBQ0k7RUFDQTtBdkZtMVdaO0F1RmoxV1k7RUFDSTtBdkZtMVdoQjtBdUY5MFdJO0VBQ0k7RUFDQTtBdkZnMVdSO0F1RjcwV0k7RUFDSTtFQUNBO0F2RiswV1I7O0F3Rmo5V0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGbzlXUjtBd0ZsOVdRO0VBRUk7RUFDQTtBeEZtOVdaO0F3Rmg5V1E7RUFDSTtFQUNBO0F4Rms5V1o7QXdGNzhXUTtFQUNJO0F4Ris4V1o7QXdGMzhXSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEY2OFdSO0F3RjM4V1E7RUFFSTtFQUNBO0VBQ0E7QXhGNDhXWjtBd0Z6OFdRO0VBQ0k7RUFDQTtBeEYyOFdaO0F3RnY4V0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEZ5OFdSO0FXNzdXSTtFNkV0QkE7SUFhUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V4RjA4V1Y7QUFDRjtBd0Z4OFdRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEYwOFdaO0F3RnY4V1E7RUFDSTtFQUNBO0F4Rnk4V1o7QXdGdDhXUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGdzhXWjtBd0Z0OFdZO0VBQ0k7QXhGdzhXaEI7O0F5RjFpWEE7RUFDSTtFQUNBO0F6RjZpWEo7O0F5RjFpWEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RjZpWEo7O0F5RjFpWEE7RUFDSTtFQUNBO0F6RjZpWEo7O0F5RjFpWEE7RUFDSTtFQUNBO0F6RjZpWEo7O0EwRi9qWEE7RUFDSTtBMUZra1hKO0EwRmhrWEk7RUFFSTtBMUZpa1hSO0EwRjlqWEk7RUFDSTtBMUZna1hSO0EwRjlqWFE7RUFDSTtFQUNBO0tBQUE7RUFDQTtLQUFBO0VBQ0E7QTFGZ2tYWjtBMEY1alhJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExRjhqWFI7QTBGMWpYUTs7OztFQUlJO0ExRjRqWFo7QTBGempYUTtFQUNJO0VBQ0E7QTFGMmpYWjtBMEZ6alhZO0VBQ0k7QTFGMmpYaEI7QTBGdmpYUTtFQUNJO0VBQ0E7QTFGeWpYWjtBMEZyalhZOzs7RUFHSTtBMUZ1alhoQjtBMEZsalhZOztFQUVJO0VBQ0E7QTFGb2pYaEI7QTBGaGpYUTtFQUNJO0VBQ0E7QTFGa2pYWjtBMEYvaVhRO0VBQ0k7RUFDQTtFQUNBO0tBQUE7RUFDQTtLQUFBO0ExRmlqWFo7QTBGOWlYUTtFQUNJO0VBQ0E7RUFDQTtBMUZnalhaO0EwRjdpWFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUYraVhaO0EwRjdpWFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGK2lYaEI7QTBGemlYUTtFQUNJO0ExRjJpWFo7QTBGdmlYSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGeWlYUjtBMEZoaVhJO0VBQ0k7RUFDQTtBMUZraVhSO0EwRmhpWFE7Ozs7RUFJSTtBMUZraVhaO0EwRi9oWFE7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0tBQUE7QTFGaWlYWjtBMEY5aFhRO0VBQ0k7RUFDQTtFQUNBO0ExRmdpWFo7QTBGN2hYUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0ExRitoWFo7QTBGN2hYWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUYraFhoQjtBMEYzaFhRO0VBQ0k7RUFDQTtBMUY2aFhaO0EwRnpoWFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUYyaFhaO0FXbHBYSTtFK0VtSEk7SUFPUTtFMUY0aFhkO0FBQ0Y7O0EyRnR0WEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z5dFhKO0EyRnZ0WEk7RUFDSTtFQUNBO0EzRnl0WFI7QTJGdnRYUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGeXRYWjtBMkZydFhJO0VBQ0k7RUFDQTtFQUNBO0EzRnV0WFI7QTJGcnRYUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z1dFhaO0EyRnB0WFE7RUFDSTtBM0ZzdFhaOztBMkZodFhJO0VBQ0k7RUFDQTtBM0ZtdFhSOztBNEZ2d1hBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RjB3WEo7QTRGeHdYSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUYwd1hSO0E0Rnh3WFE7RUFDSTtBNUYwd1haO0E0Rnh3WFk7RUFDSTtBNUYwd1hoQjtBNEZ4d1hnQjtFQUNJO0E1RjB3WHBCO0E0RnJ3WFE7RUFDSTtBNUZ1d1haO0E0RnJ3WFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBNUZ1d1hoQjtBNEZyd1hnQjtFQUNJO0VBQ0E7QTVGdXdYcEI7QTRGcHdYZ0I7RUFDSTtFQUNBO0VBQ0E7QTVGc3dYcEI7QTRGbndYZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUZxd1hwQjtBNEZqd1hvQjtFQUNJO0VBQ0E7RUFDQTtBNUZtd1h4QjtBNEY5dlhvQjtFQUNJO0VBQ0E7RUFDQTtBNUZnd1h4QjtBNEY1dlh3QjtFQUNJO0VBQ0E7RUFDQTtBNUY4dlg1QjtBNEZ4dlhvQjtFQUNJO0E1RjB2WHhCOztBNkY1dVhBO0VBL0dJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0YrMVhKO0E2RjcxWEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0YrMVhSO0E2RjcxWFE7RUFDSTtFQUNBO0VBQ0E7QTdGKzFYWjtBNkY1MVhRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Y4MVhaO0E2RjMxWFE7RUFDSTtFQUNBO0VBQ0E7QTdGNjFYWjtBNkZ6MVhJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdGMjFYUjtBNkZ6MVhRO0VBQ0k7QTdGMjFYWjtBNkZ6MVhZOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0YyMVhoQjtBNkZ6MVhnQjs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0Y0MVhwQjtBNkZ6MVhnQjs7O0VBRUk7QTdGNDFYcEI7QTZGMTFYb0I7OztFQUNJO0E3RjgxWHhCO0E2RjExWGdCOztFQUNJO0VBQ0E7QTdGNjFYcEI7QTZGMzFYb0I7O0VBQ0k7QTdGODFYeEI7QTZGdDFYQTtFQUVJO0VBQUE7RUFDQTtBN0Z1MVhKO0E2RnIxWEk7RUFDSTtBN0Z1MVhSOztBNkZsMVhJO0VBQ0k7RUFDQTtFQUNBO0E3RnExWFI7QTZGajFYUTtFQUNJO0VBQ0E7QTdGbTFYWjs7QThGdDlYSTtFQUNJO0VBQ0E7QTlGeTlYUjs7QThGcjlYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQUE7RUFDQTtBOUZ3OVhKO0E4RnQ5WEk7RUFDSTtFQUNBO0E5Rnc5WFI7QThGdDlYUTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RnU5WFo7QThGcjlYWTtFQUVJO0VBQ0E7RUFDQTtBOUZzOVhoQjtBOEZuOVhZO0VBQ0k7RUFDQTtBOUZxOVhoQjtBOEZuOVhnQjtFQUNJO0E5RnE5WHBCO0E4Rmo5WFk7RUFDSTtFQUNBO0E5Rm05WGhCO0E4Rjc4WEk7RUFDSTtBOUYrOFhSO0FXajhYSTtFbUZyRUo7SUROSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdGZ2hZRjtFNkY5Z1lFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdGZ2hZTjtFNkY5Z1lNO0lBQ0k7SUFDQTtJQUNBO0U3RmdoWVY7RTZGN2dZTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdGK2dZVjtFNkY1Z1lNO0lBQ0k7SUFDQTtJQUNBO0U3RjhnWVY7RTZGMWdZRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RjRnWU47RTZGMWdZTTtJQUNJO0U3RjRnWVY7RTZGMWdZVTs7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdGNGdZZDtFNkYxZ1ljOztJQUNJO0lBQ0E7SUFDQTtJQUNBO0U3RjZnWWxCO0U2RjFnWWM7OztJQUVJO0U3RjZnWWxCO0U2RjNnWWtCOzs7SUFDSTtFN0YrZ1l0QjtFNkYzZ1ljOztJQUNJO0lBQ0E7RTdGOGdZbEI7RTZGNWdZa0I7O0lBQ0k7RTdGK2dZdEI7RThGaG5ZRjtJQTREUTtJQUFBO0lBQ0E7RTlGdWpZTjtFOEZyallNO0lBQ0k7RTlGdWpZVjtBQUNGO0FXaGtZSTtFbUZjUTtJQUNJO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTlGb2pZZDtFOEZsalljO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RTlGb2pZbEI7RThGaGpZVTtJQUNJO0U5RmtqWWQ7RThGL2lZVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0U5RmlqWWQ7QUFDRjs7QStGN3BZQTs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9Ga3FZSjtBK0ZocVlJOzs7OztFQUVJO0VBQ0E7RUFDQTtBL0ZxcVlSO0ErRmxxWUk7OztFQUNJO0VBQ0E7QS9Gc3FZUjtBK0ZucVlJOzs7RUFDSTtFQUNBO0EvRnVxWVI7QStGcHFZSTtFQUNJO0VBQ0E7QS9Gc3FZUjtBK0ZucVlJO0VBQ0k7QS9GcXFZUjtBK0ZscVlJO0VBQ0k7RUFDQTtBL0ZvcVlSOztBK0ZocVlBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRmtxWUo7QStGaHFZSTs7Ozs7Ozs7OztFQUlJO0VBQ0E7RUFDQTtBL0Z3cVlSOztBK0ZwcVlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRnVxWUo7QStGcnFZSTtFQUVHO0VBQ0E7RUFDQTtBL0ZzcVlQO0ErRjVwWVE7RUFDSTtBL0Y4cFlaOztBK0Z6cFlBO0VBRUk7QS9GMnBZSjs7QStGeHBZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9GMnBZSjtBK0Z6cFlJO0VBQ0k7QS9GMnBZUjtBK0Z4cFlJO0VBQ0k7QS9GMHBZUjtBK0Z4cFlRO0VBQ0k7QS9GMHBZWjtBK0Z2cFlRO0VBQ0k7QS9GeXBZWjtBK0Z0cFlRO0VBQ0k7QS9Gd3BZWjtBZ0c5d1lJO0VBT0k7RUFDQTtBaEcwd1lSO0FnR3Z3WUk7RUFDSTtBaEd5d1lSO0FnR3R3WUk7RUFDSTtFQUNBO0VBQ0E7QWhHd3dZUjtBZ0dyd1lJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEd1d1lSO0FnR3B3WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaEdzd1lSO0FnR3B3WVE7RUFDSTtBaEdzd1laO0FnR2x3WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBaEdvd1lSO0FnR2p3WUk7O0VBR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhHa3dZUjtBZ0dod1lROztFQUNJO0FoR213WVo7QWdHaHdZUTs7RUFDSTtFQUNBO0VBQ0E7QWhHbXdZWjtBZ0cvdllJO0VBQ0k7QWhHaXdZUjtBZ0c5dllJO0VBQ0k7RUFDQTtBaEdnd1lSO0FnRzd2WUk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEc4dllSOztBaUd0MVlJO0VBQ0k7QWpHeTFZUjtBaUd2MVlRO0VBQ0k7RUFDQTtBakd5MVlaO0FpR3IxWUk7RUFDSTtFQUNBO0VBQ0E7QWpHdTFZUjtBaUdyMVlRO0VBQ0k7QWpHdTFZWjtBaUdwMVlRO0VBQ0k7QWpHczFZWjtBaUdsMVlJO0VBQ0k7RUFDQTtFQUNBO0FqR28xWVI7QWlHbDFZUTtFQUNJO0FqR28xWVo7QWlHajFZUTtFQUNJO0VBQ0E7QWpHbTFZWjtBaUcvMFlJO0VBQ0k7QWpHaTFZUjs7QWlHMzBZUTtFQUNJO0FqRzgwWVo7O0FpR3gwWUk7RUFDSTtBakcyMFlSO0FXdDBZSTtFc0ZQSjtJQU1RO0lBQ0E7SUFDQTtFakcyMFlOO0VpR3owWU07SUFDSTtJQUNBO0lBQ0E7RWpHMjBZVjtFaUd6MFlVO0lBQ0k7SUFDQTtPQUFBO0VqRzIwWWQ7RWlHeDBZVTtJQUNJO0VqRzAwWWQ7RWlHdDBZTTtJQUNJO0lBQ0E7RWpHdzBZVjtFaUdyMFlNO0lBQ0k7RWpHdTBZVjtBQUNGO0FXaDJZSTtFc0Y0QkE7SUFFUTtJQUNBO0VqR3MwWVY7RWlHcDBZVTtJQUNJO0VqR3MwWWQ7QUFDRjtBV3oyWUk7RXNGdUNBO0lBRVE7SUFDQTtFakdvMFlWO0VpR2wwWVU7SUFDSTtFakdvMFlkO0FBQ0Y7QVdsM1lJO0VzRmlESTtJQUVRO0lBQ0E7RWpHbTBZZDtBQUNGO0FXeDNZSTtFc0Z5REE7SUFFUTtFakdpMFlWO0VpRy96WVU7SUFDSTtFakdpMFlkO0VpRzl6WVU7SUFDSTtFakdnMFlkO0FBQ0Y7QVduNFlJO0VzRnNFSTtJQUVRO0VqRyt6WWQ7RWlHN3pZYztJQUNJO0lBQ0E7RWpHK3pZbEI7RWlHNXpZYztJQUNJO0VqRzh6WWxCO0VpRzN6WWM7SUFDSTtFakc2ellsQjtBQUNGO0FXbDVZSTtFc0Z5Rkk7SUFFUTtJQUNBO0VqRzJ6WWQ7RWlHenpZYztJQUNJO0VqRzJ6WWxCO0FBQ0Y7QVczNVlJO0VzRm1HUTtJQUVRO0lBQ0E7RWpHMHpZbEI7QUFDRjs7QVdqNllJO0VzRitHSTtJQUNJO0lBQ0E7RWpHc3pZVjtBQUNGOztBaUdsellBO0VBQ0k7RUFDQTtFQUNBO0FqR3F6WUo7QVdqNllJO0VzRnlHSjtJQU1RO0VqR3N6WU47QUFDRjs7QWlHbnpZQTtFQUNJO0FqR3N6WUo7O0FpR256WUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBakdzellKO0FpR3B6WUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqR3N6WVI7QVd4N1lJO0VzRnVISjtJQWVRO0VqR3N6WU47QUFDRjs7QWtHemdaQTtFQUNJO0VBQ0E7RUFDQTtFbkJEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWtFQTtFQUdBO0VBR0E7RUFFQTtFQUNBO0EvRWk3WUo7QVd6L1lJO0V1RjVFSjtJQU9RO0VsR2trWk47QUFDRjtBa0doa1pJO0VuQlJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0EvRTJoWko7QWtHbnBaSTtFbkJaQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWtFQTtFQUdBO0VBR0E7RUFFQTtFQUNBO0EvRXFrWko7QWtHdnNaSTtFbkJoQkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QS9FbXNaSjtBa0d0dlpJO0VuQnBCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQW1GQTtFQUVBO0VBQ0E7QS9FMG9aSjtBa0c1MFpJO0VuQnhCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQThIQTtFQUNBO0VBRUE7RUFDQTtBL0VrdFpKO0FrRy8zWkk7RW5CNUJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBa0dBO0VBQ0E7RUFFQTtFQUNBO0EvRXF5Wko7QWtHajdaUTtFQUNJO0FsR203Wlo7QWtHLzZaSTtFQUNJO0VBQ0E7QWxHaTdaUjtBa0cvNlpRO0VBQ0k7QWxHaTdaWjtBa0cvNlpZO0VBQ0k7RUFDQTtBbEdpN1poQjs7QWtHdjZaSTs7RW5CekRBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0EvRTg4Wko7O0FrR3Q5Wkk7RW5CL0RBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0EvRWtnYUo7O0FrR3BnYUE7RUFDSTtFQUNBO0FsR3VnYUo7O0FtRy9rYUk7RUFDSTtBbkdrbGFSO0FtRy9rYUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkdpbGFSO0FtRy9rYVE7RUFDSTtFQUNBO0VBQ0E7QW5HaWxhWjtBbUcva2FZO0VBQ0k7QW5HaWxhaEI7QW1HN2thUTtFQUNJO0FuRytrYVo7QW1HNWthUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRzhrYVo7QW1HNWthWTtFQUNJO0VBQ0E7RUFDQTtBbkc4a2FoQjtBbUcxa2FRO0VBQ0k7QW5HNGthWjtBbUd4a2FJO0VBQ0k7RUFDQTtFQUNBO0FuRzBrYVI7QVd6amFJO0V3RnBCQTtJQU1RO0lBQ0E7RW5HMmthVjtBQUNGO0FtR3hrYVk7RXBCcERSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBa0dBO0VBQ0E7RUFFQTtFQUNBO0EvRXNnYUo7QW1HM25hWTtFcEJ4RFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUE4SEE7RUFDQTtFQUVBO0VBQ0E7QS9FaWlhSjtBbUc5cWFZO0VwQjVEUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQThDQTtFQUdBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFb0JsSVk7QW5HOHdhaEI7O0FvRzcwYUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwR2cxYVI7QW9HOTBhUTtFQUNJO0FwR2cxYVo7QW9HNTBhSTtFQUNJO0FwRzgwYVI7QW9HMzBhSTtFQUNJO0FwRzYwYVI7QVc1eGFJO0V5RmxEQTtJQUlRO0VwRzgwYVY7QUFDRjtBb0czMGFJO0VBQ0k7QXBHNjBhUjs7QXFHaDNhQTtFQUNJO0FyR20zYUo7QXFHajNhSTtFQUNJO0VBQ0E7QXJHbTNhUjtBcUdoM2FJO0VBQ0k7QXJHazNhUjtBcUcvMmFJO0VBQ0k7RUFDQTtFQUNBO0FyR2kzYVI7QXFHOTJhSTtFQUNJO0FyR2czYVI7QXFHOTJhUTtFQUNJO0VBQ0E7QXJHZzNhWjtBcUc5MmFZO0VBQ0k7QXJHZzNhaEI7QXFHNTJhUTtFQUNJO0FyRzgyYVo7O0FBbDRhQTtBc0dYQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0R2k1YUo7QXNHLzRhSTs7O0VBR0k7RUFDQTtFQUNBO0F0R2k1YVI7QXNHOTRhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0R2c1YVI7QXNHOTRhUTs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QXRHZzVhWjtBc0c3NGFRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Rys0YVo7QXNHNzRhWTtFQUNJO0VBQ0E7QXRHKzRhaEI7QXNHNTRhWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRHODRhaEI7QXNHMzRhWTtFQUNJO0F0RzY0YWhCO0FzR3o0YVE7RUFDSTtBdEcyNGFaOztBdUcxOGFBO0VBQ0k7QXZHNjhhSjtBdUczOGFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZHNjhhUjtBdUcxOGFJO0VBQ0k7QXZHNDhhUjtBdUd6OGFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZHMjhhUjtBdUd4OGFJO0VBQ0k7QXZHMDhhUjtBdUd2OGFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R3k4YVI7QXVHdDhhSTtFQUNJO0VBQ0E7RUFDQTtBdkd3OGFSO0F1R3I4YUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R3U4YVI7QXVHcDhhSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO09BQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkdzOGFSO0F1R244YUk7RUFDSTtBdkdxOGFSO0F1R2w4YUk7RUFDSTtBdkdvOGFSO0F1R2o4YUk7RUFDSTtFQUNBO0VBQ0E7QXZHbThhUjtBdUdoOGFJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2R2s4YVI7QXVHaDhhUTtFQUNJO0VBQ0E7QXZHazhhWjtBdUcxN2FRO0VBQ0k7RUFDQTtBdkc0N2FaO0F1R3I3YUk7RUFDSTtFQUNBO0F2R3U3YVI7QXVHcDdhSTtFQUNJO0VBQ0E7QXZHczdhUjs7QXVHbDdhQTtFQUNJO0lBQ0k7RXZHcTdhTjtFdUdsN2FFO0lBQ0k7RXZHbzdhTjtBQUNGO0F1R2o3YUE7RUFDSTtJQUNJO0V2R203YU47QUFDRjtBd0d0amJBO0VBQ0k7QXhHd2piSjs7QXlHeGpiSTtFQUNJO0F6RzJqYlI7QXlHempiUTtFQUNJO0VBQ0E7QXpHMmpiWjtBeUd2amJJO0VBQ0k7RUFDQTtBekd5amJSO0F5R3ZqYlE7RUFDSTtFQUNBO0VBQ0E7QXpHeWpiWjtBeUd2amJZO0VBQ0k7RUFDQTtFQUNBO0F6R3lqYmhCO0F5R3RqYlk7RUFDSTtBekd3amJoQjtBV25oYkk7RThGbENRO0lBRVE7RXpHdWpibEI7QUFDRjs7QXlHampiQTtFQUNJO0F6R29qYko7O0F5R2pqYkE7O0VBRUk7RUFDQTtBekdvamJKO0F5R2xqYkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXpHcWpiUjtBeUduamJROztFQUNJO0F6R3NqYlo7QXlHbGpiSTs7RUFDSTtFQUNBO0F6R3FqYlI7QVdyaWJJO0U4RmxCQTs7SUFLUTtFekd1amJWO0FBQ0Y7QXlHcmpiUTs7RUFDSTtBekd3amJaO0F5R3BqYkk7O0VBQ0k7RUFDQTtBekd1amJSO0F5R3BqYkk7O0VBRUk7RUFDQTtBekdzamJSO0F5R25qYkk7O0VBQ0k7QXpHc2piUjtBeUdsamJROztFQUNJO0F6R3FqYlo7QXlHbGpiUTs7Ozs7O0VBR0k7RUFDQTtBekd1amJaOztBeUdsamJBO0VBQ0k7RUFDQTtBekdxamJKO0F5R25qYkk7RUFDSTtBekdxamJSO0F5R25qYlE7RUFDSTtBekdxamJaO0F5R2pqYkk7RUFFSTtFQUNBO0F6R2tqYlI7QXlHL2liSTtFQUNJO0F6R2lqYlI7QVd6bWJJO0U4RnFDSjtJQXVCUTtFekdpamJOO0V5Ry9pYk07SUFDSTtJQUNBO0lBQ0E7T0FBQTtFekdpamJWO0FBQ0Y7QVdubmJJO0U4RnFFQTtJQUVRO0V6R2dqYlY7QUFDRjtBeUc1aWJRO0VBQ0k7QXpHOGliWjtBeUczaWJROzs7RUFHSTtFQUNBO0F6RzZpYlo7O0F5R3hpYkE7RUFDSTtBekcyaWJKOztBeUd4aWJBO0VBQ0k7QXpHMmliSjs7QXlHeGliQTtFQUNJO0VBQ0E7RUFDQTtBekcyaWJKO0FXL29iSTtFOEZpR0o7SUFNUTtFekc0aWJOO0FBQ0Y7QVdwcGJJO0U4RmlHSjtJQVVRO0V6RzZpYk47QUFDRjtBV3pwYkk7RThGOEdBO0lBRVE7RXpHNmliVjtBQUNGO0FXOXBiSTtFOEZvSEE7SUFFUTtFekc0aWJWO0FBQ0Y7QXlHemliSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekcyaWJSO0F5R3ppYlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RzJpYlo7QXlHemliWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7QXpHMmliaEI7QXlHeGliWTtFQUNJO0VBQ0E7QXpHMGliaEI7QXlHdGliUTtFQUNJO0VBQ0E7RUFDQTtBekd3aWJaO0F5R3RpYlk7RUFDSTtFQUNBO0F6R3dpYmhCO0F5R3BpYlE7RUFDSTtBekdzaWJaO0F5R25pYlE7RUFFSTtBekdvaWJaO0F5R2ppYlE7RUFDSTtBekdtaWJaO0F5R2hpYlE7RUFDSTtBekdraWJaO0F5Ry9oYlE7RUFDSTtBekdpaWJaO0F5RzdoYlk7RUFDSTtBekcraGJoQjtBeUc1aGJZOzs7RUFHSTtFQUNBO0F6RzhoYmhCOztBeUd2aGJJO0VBQ0k7RUFDQTtBekcwaGJSO0F5R3ZoYkk7RUFDSTtBekd5aGJSO0F5R3RoYkk7RUFDSTtFQUNBO0VBQ0E7QXpHd2hiUjtBeUdyaGJJO0VBQ0k7RUFDQTtFQUNBO0F6R3VoYlI7QXlHcmhiUTtFQUNJO0VBQ0E7RUFDQTtBekd1aGJaO0F5R3BoYlE7RUFDSTtBekdzaGJaO0F5R2xoYkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6R29oYlI7QXlHamhiSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6R21oYlI7QXlHamhiUTtFQUNJO0F6R21oYlo7QXlHL2diSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6R2loYlI7QXlHOWdiSTs7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekcrZ2JSO0F5RzdnYlE7O0VBQ0k7QXpHZ2hiWjtBeUc3Z2JROztFQUNJO0VBQ0E7RUFDQTtBekdnaGJaO0F5RzVnYkk7RUFDSTtBekc4Z2JSO0F5RzNnYkk7RUFDSTtFQUNBO0F6RzZnYlI7QXlHMWdiSTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RzJnYlI7O0F5R3ZnYkE7RUFDSTtFQUNBO0VBQ0E7QXpHMGdiSjtBeUd4Z2JJO0VBQ0k7RUFDQTtFQUNBO0F6RzBnYlI7QXlHdmdiSTtFQUNJO0F6R3lnYlI7O0EwR2w0YkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHcTRiSjtBMEduNGJJO0VBQ0k7RUFDQTtFQUNBO0ExR3E0YlI7QTBHbDRiSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUdvNGJSO0EwR2w0YlE7RUFDSTtFQUNBO0VBQ0E7QTFHbzRiWjtBV2gyYkk7RStGdkNJO0lBTVE7RTFHcTRiZDtBQUNGO0EwR2o0Ykk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUdtNGJSO0EwR2o0YlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR200Ylo7QTBHLzNiWTtFQUNJO0VBQ0E7RUFDQTtBMUdpNGJoQjtBMEc1M2JJO0VBQ0k7QTFHODNiUjtBMEczM2JJO0VBQ0k7RUFDQTtFQUNBO0ExRzYzYlI7QTBHMzNiUTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7RUFDQTtBMUc2M2JaO0EwR3ozYkk7RUFDSTtBMUcyM2JSO0EwR3gzYkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBMUcwM2JSO0EwR3YzYlk7RUFDSTtFQUNBO0VBQ0E7QTFHeTNiaEI7QTBHcDNiWTtFQUNJO0ExR3MzYmhCO0EwR24zYlk7RUFDSTtFQUNBO0ExR3EzYmhCO0EwRzkyYm9CO0VBQ0k7RUFDQTtBMUdnM2J4QjtBMEc3MmJvQjtFQUNJO0ExRysyYnhCO0EwR3gyYkk7RUFFSTtBMUd5MmJSO0EwR3YyYlE7RUFDSTtBMUd5MmJaO0EwR3QyYlE7RUFDSTtFQUNBO0ExR3cyYlo7QTBHcjJiUTtFQUNJO0VBQ0E7QTFHdTJiWjtBMEdoMmJnQjtFQUNJO0VBQ0E7RUFDQTtBMUdrMmJwQjtBMEcvMWJnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFHaTJicEI7QTBHOTFiZ0I7RUFDSTtBMUdnMmJwQjtBMEczMWJnQjtFQUNJO0VBQ0E7QTFHNjFicEI7O0EwR3IxYkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExR3cxYlI7QVd0OWJJO0UrRmdIQTtJQWlCUTtJQUNBO0UxR3kxYlY7QUFDRjtBMEd2MWJRO0VBQ0k7QTFHeTFiWjtBMEdwMWJRO0VBQ0k7QTFHczFiWjtBMEdwMWJZO0VBQ0k7QTFHczFiaEI7QVdyK2JJO0UrRjhJUTtJQUlRO0UxR3UxYmxCO0FBQ0Y7QTBHbDFiSTtFQUNJO0ExR28xYlI7QTBHbDFiUTtFQUNJO0VBQ0E7QTFHbzFiWjtBV2ovYkk7RStGMkpJO0lBS1E7RTFHcTFiZDtBQUNGO0EwR2oxYkk7RUFDSTtBMUdtMWJSO0FXdGdjSTtFK0Z3TFE7SUFDSTtFMUdpMWJkO0FBQ0Y7O0EyR3RrY0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0d5a2NKO0EyR3ZrY0k7RUFDSTtFQUNBO0VBQ0E7QTNHeWtjUjtBMkd0a2NJO0VBQ0k7RUFDQTtBM0d3a2NSO0EyR3BrY1E7OztFQUdJO0EzR3NrY1o7QTJHbGtjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHb2tjUjtBMkdsa2NRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNHb2tjWjtBMkc3amNnQjtFQUNJLGtCQWxEUDtFQW1ETztFQUNBO0EzRytqY3BCO0EyRzFqY1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0c0amNaO0EyRzFqY1k7RUFDSTtFQUNBO0VBQ0E7QTNHNGpjaEI7QTJHeGpjZ0I7RUFDSTtBM0cwamNwQjtBMkd0amNvQjtFQUNJO0EzR3dqY3hCO0EyR2pqY0k7RUFDSTtFQUNBO0VBQ0E7QTNHbWpjUjtBMkcvaWNZO0VBQ0k7QTNHaWpjaEI7QTJHM2ljZ0I7RUFDSTtBM0c2aWNwQjtBMkd2aWNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsWUEzR1c7RUE0R1gsaUJBNUdXO0VBNkdYLGtCQTlHSztFQStHTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNHeWljUjtBMkd2aWNRO0VBQ0k7RUFDQTtBM0d5aWNaO0EyR3JpY0k7RUFDSTtFQUNBLFdBN0hXO0VBOEhYLFlBOUhXO0VBK0hYO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR3VpY1I7QTJHcmljUTtFQUNJO0VBQ0E7RUFDQTtBM0d1aWNaO0EyR3BpY1E7RUFDSTtFQUNBO0EzR3NpY1o7QTJHbGljSTtFQUNJO0EzR29pY1I7QTJHaGljUTtFQUNJO0VBQ0E7QTNHa2ljWjtBMkc5aGNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQXRLVztFQXVLWCxpQkF2S1c7RUF3S1gsa0JBektLO0VBMEtMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzR2dpY1I7QTJHOWhjUTtFQUNJO0EzR2dpY1o7O0E0R2p0Y0E7RUFDSTtFQUNBO0VBQ0E7QTVHb3RjSjtBNEdsdGNJO0VBQ0k7RUFDQTtBNUdvdGNSO0E0R2p0Y0k7RUFDSTtFQUNBO0VBQ0E7QTVHbXRjUjtBNEdqdGNRO0VBQ0k7QTVHbXRjWjtBNEcvc2NJO0VBRUksc0JBeEJpQjtBNUd3dWN6QjtBNEc3c2NJO0VBQ0k7QTVHK3NjUjtBNEd4c2NZO0VBQ0k7QTVHMHNjaEI7QTRHdHNjUTtFQUNJO0VBQ0E7QTVHd3NjWjtBNEdyc2NRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTVHdXNjWjtBNEduc2NJO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdvc2NSO0E0R2xzY1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHb3NjWjtBNEdoc2NZO0VBQ0k7QTVHa3NjaEI7QTRHOXJjUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHZ3NjWjtBNEc3cmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHK3JjWjtBV2x1Y0k7RWlHNEJJO0lBVVE7SUFDQTtFNUdnc2NkO0FBQ0Y7QTRHNXJjSTtFQUNJO0VBQ0E7RUFDQTtBNUc4cmNSO0E0RzNyY0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUc2cmNSO0E0RzNyY1E7RUFDSTtBNUc2cmNaO0E0R3pyY0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUcycmNSO0E0R3JyY1E7RUFDSTtFQUNBO0VBQ0E7QTVHdXJjWjtBNEdwcmNnQjtFQUNJO0VBQ0E7QTVHc3JjcEI7QTRHOXFjb0I7OztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1R2tyY3hCO0E0Ry9xY29COzs7RUFDSTtBNUdtcmN4QjtBNEdocmNvQjs7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUdvcmN4QjtBNEc1cWN3Qjs7Ozs7OztFQUNJO0E1R29yYzVCO0E0R3pxY29COzs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RzZxY3hCO0E0R3ZxY1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVHeXFjWjtBNEd2cWNZO0VBQ0k7RUFDQTtBNUd5cWNoQjtBNEdocWNnQjtFQUNJO0E1R2txY3BCO0E2Rzc0Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0crNGNoQjtBOEduNWNZO0VBQ0k7QTlHcTVjaEI7QThHajVjUTtFQUNJO0E5R201Y1o7O0ErRzM1Y0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBL0c4NWNSO0ErRzU1Y1E7RUFDSTtBL0c4NWNaO0ErRzU1Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9HODVjaEI7QStHejVjWTtFQUNJO0VBQ0E7QS9HMjVjaEI7QStHdDVjSTtFQUNJO0EvR3c1Y1I7QStHcjVjWTtFQUNJO0EvR3U1Y2hCO0ErR3A1Y1k7RUFJSTtBL0dtNWNoQjtBK0cvNGNRO0VBQ0k7QS9HaTVjWjtBK0c5NGNRO0VBRUk7RUFDQTtBL0crNGNaO0ErRzU0Y1E7RUFDSTtFQUNBO0EvRzg0Y1o7QStHejRjUTtFQUNJO0EvRzI0Y1o7QStHeDRjUTtFQUNJO0EvRzA0Y1o7QStHcDRjWTtFQUNJO0EvR3M0Y2hCO0ErR2w0Y1k7RUFDSTtFQUNBO0VBQ0E7QS9HbzRjaEI7QStHbDRjZ0I7RUFDSTtBL0dvNGNwQjtBK0dqNGNnQjtFQUNJO0EvR200Y3BCO0ErRy8zY2dCO0VBQ0k7QS9HaTRjcEI7QStHOTNjZ0I7RUFDSTtBL0dnNGNwQjtBK0c5M2NvQjtFQUNJO0EvR2c0Y3hCO0ErRzczY29CO0VBQ0k7RUFDQTtFQUNBO0EvRyszY3hCO0ErRzczY3dCO0VBQ0k7QS9HKzNjNUI7QStHNTNjd0I7RUFDSTtFQUNBO0EvRzgzYzVCO0ErR3gzY1k7RUFDSTtFQUNBO0EvRzAzY2hCOztBZ0hyL2NJO0VBQ0k7QWhIdy9jUjtBZ0h0L2NRO0VBQ0k7RUFDQTtFQUNBO0FoSHcvY1o7QWdIci9jUTtFQUNJO0VBQ0E7RUFDQTtBaEh1L2NaO0FnSHIvY1k7RUFDSTtFQUNBO0FoSHUvY2hCO0FXNzZjSTtFcUdsRVk7SUFBaUI7RWhIbS9jL0I7RWdIbC9jYztJQUFpQjtFaEhxL2MvQjtBQUNGO0FXcDhjSTtFcUc3Q1E7SUFDSTtFaEhvL2NkO0FBQ0Y7QWdILytjUTtFQUNJO0VBQ0E7RUFDQTtBaEhpL2NaO0FnSC8rY1k7RUFDSTtBaEhpL2NoQjtBZ0g3K2NZO0VBQ0k7QWhIKytjaEI7QWdIMytjWTtFQUNJO0FoSDYrY2hCOztBaUhuaWRBO0VBQ0k7RUFDQTtFQUNBO0FqSHNpZEo7QWlIcGlkSTtFQUNHO0FqSHNpZFA7QWlIbmlkSTtFQUNHO0FqSHFpZFA7QWlIbGlkSTtFQUNHO0FqSG9pZFA7QWlIamlkSTtFQUNJO0FqSG1pZFI7QVd0L2NJO0VzRy9ESjtJQXNCUTtJQUNBO0lBQ0E7RWpIbWlkTjtBQUNGO0FXNy9jSTtFc0cvREo7SUE0QlE7SUFDQTtJQUNBO0VqSG9pZE47QUFDRjs7QWlIL2hkUTtFQUNJO0VBQ0E7QWpIa2lkWjs7QWtIdmtkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsSDBrZFI7QVdoaGRJO0V1RzlEQTtJQU9RO0VsSDJrZFY7QUFDRjtBV3JoZEk7RXVHOURBO0lBV1E7RWxINGtkVjtBQUNGO0FXMWhkSTtFdUcvQ0E7SUFFUTtFbEgya2RWO0FBQ0Y7QVcvaGRJO0V1R3pDQTtJQUVRO0VsSDBrZFY7QUFDRjtBa0h2a2RJO0VBQ0k7QWxIeWtkUjtBa0h2a2RRO0VBQ0k7QWxIeWtkWjtBa0hya2RJO0VBQ0k7RUFDQTtFQUNBO0FsSHVrZFI7QWtIbGtkUTtFbkMxQ0o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFrR0E7RUFDQTtFQUVBO0VBQ0E7QS9Fcy9jSjtBa0h4bmRRO0VuQzNDSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQThIQTtFQUNBO0VBRUE7RUFDQTtBL0VpaGRKO0FrSDlxZFE7RW5DNUNKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBOENBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0EvRTJuZEo7QWtIOXdkUTtFbkM3Q0o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFrRUE7RUFHQTtFQUdBO0VBRUE7RUFDQTtBL0VpdWRKO0FXdHpkSTtFdUdaUTtJbkNqRFI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFrR0E7SUFDQTtJQUVBO0lBQ0E7RS9FOHZkRjtFa0h6M2RVO0luQ2xEUjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQThIQTtJQUNBO0lBRUE7SUFDQTtFL0V5eGRGO0VrSC82ZFU7SW5DbkRSO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBS0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFHQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBOENBO0lBR0E7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0UvRW00ZEY7RWtIL2dlVTtJbkNwRFI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFrRUE7SUFHQTtJQUdBO0lBRUE7SUFDQTtFL0V5K2RGO0VrSHRrZVU7SW5DckRSO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBa0VBO0lBR0E7SUFHQTtJQUVBO0lBQ0E7RS9FaWllRjtFa0g3bmVVO0luQ3REUjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQWtHQTtJQUNBO0lBRUE7SUFDQTtFL0U2amVGO0VrSG5yZVU7SW5DdkRSO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUdBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBOEhBO0lBQ0E7SUFFQTtJQUNBO0UvRXdsZUY7RWtIenVlVTtJbkN4RFI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFLQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUdBO0lBQ0E7SUFHQTtJQUdBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUE4Q0E7SUFHQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7RS9Fa3NlRjtBQUNGOztBa0hyMGVJO0VuQzlEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBL0VnM2VKO0FXMTNlSTtFdUdJSTtJbkNqRUo7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBR0E7SUFHQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7RS9FbzZlRjtBQUNGOztBbUg1K2VBO0VBQ0k7RUFDQTtFQUNBO0FuSCsrZUo7QW1INytlSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSCsrZVI7QVc5N2VJO0V3R3hEQTtJQVVRO0VuSGcvZVY7QUFDRjtBV244ZUk7RXdHeERBO0lBY1E7RW5IaS9lVjtBQUNGO0FtSC8rZVE7RUFDSTtFQUNBO0FuSGkvZVo7QW1ILytlWTtFQUNJO0FuSGkvZWhCO0FtSDcrZVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuSCsrZVo7QW1INytlWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7QW5IKytlaEI7QW1INStlWTtFQUNJO0VBQ0E7QW5IOCtlaEI7QW1IMytlWTtFQUNJO0FuSDYrZWhCO0FtSDErZVk7RUFDSTtBbkg0K2VoQjtBbUh6K2VZO0VBQ0k7QW5IMitlaEI7QW1IeitlZ0I7RUFDSTtFQUNBO0VBQ0E7S0FBQTtBbkgyK2VwQjtBbUh0K2VRO0VBQ0k7RUFDQTtFQUNBO0FuSHcrZVo7QW1IdCtlWTtFQUNJO0VBQ0E7RUFDQTtBbkh3K2VoQjtBbUhwK2VRO0VBRUk7QW5IcStlWjtBbUhsK2VRO0VBQ0k7QW5IbytlWjtBbUhqK2VRO0VBQ0k7RUFDQTtBbkhtK2VaO0FtSGgrZVE7RUFDSTtFQUNBO0FuSGsrZVo7QW1IaCtlWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuSGsrZWhCO0FtSDk5ZVE7RUFDSTtBbkhnK2VaO0FtSDM5ZVE7RUFDSTtBbkg2OWVaO0FtSDE5ZVE7OztFQUdJO0VBQ0E7QW5INDllWjtBVzNoZkk7RXdHbUVBO0lBRVE7RW5IMDllVjtBQUNGO0FXaGlmSTtFd0d5RUE7SUFFUTtFbkh5OWVWO0FBQ0Y7QVdyaWZJO0V3RytFQTtJQUVRO0VuSHc5ZVY7QUFDRjtBVzFpZkk7RXdHcUZBO0lBRVE7RW5IdTllVjtBQUNGOztBb0g1bWZBO0VBQ0k7QXBIK21mSjtBb0g3bWZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBIK21mUjtBb0g1bGZJO0VBQ0k7RUFDQTtFQUNBO0FwSDhsZlI7QW9IM2xmSTtFQUNJO0VBQ0E7QXBINmxmUjtBb0gzbGZRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBINmxmWjtBb0gzbGZZO0VBQ0k7RUFDQTtFQUNBO0FwSDZsZmhCO0FXaGtmSTtFeUdoQ1E7SUFNUTtFcEg4bGZsQjtBQUNGO0FvSDNsZlk7RUFDSTtBcEg2bGZoQjtBb0h6bGZRO0VBQ0k7QXBIMmxmWjtBb0h4bGZRO0VyQzdESjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQThDQTtFQUdBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtBL0VzamZKO0FvSHhyZlE7RXJDOURKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUdBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBOEhBO0VBQ0E7RUFFQTtFQUNBO0EvRW9tZko7QW9IOXVmUTtFckMvREo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFrR0E7RUFDQTtFQUVBO0VBQ0E7QS9FdXJmSjtBb0hweWZRO0VyQ2hFSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFHQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQWtFQTtFQUdBO0VBR0E7RUFFQTtFQUNBO0EvRTB3Zko7QW9IMTFmUTtFQUNJO0VBQ0E7RUFDQTtBcEg0MWZaO0FvSDExZlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtBcEg0MWZoQjtBb0h6MWZZO0VBQ0k7QXBIMjFmaEI7QW9IcjFmUTtFckN2Rko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBR0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QS9FdzVmSjtBV2w2Zkk7RXlHN0RKO0lBNkZRO0lBQ0E7SUFDQTtJQUNBO0VwSHM0Zk47RW9IcDRmTTtJQUNJO0VwSHM0ZlY7RW9IbjRmTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBIcTRmVjtFb0hsNGZNO0lBQ0k7SUFDQTtJQUNBO0VwSG80ZlY7QUFDRjs7QXFIdi9mSTtFQUNJO0VBQ0E7QXJIMC9mUjtBcUh2L2ZJO0VBQ0k7RUFDQTtFQUNBO0FySHkvZlI7QVduOGZJO0UwR3pEQTtJQU1RO0lBQ0E7SUFDQTtFckgwL2ZWO0FBQ0Y7QXFIeC9mUTtFQUNJO0VBQ0E7RUFDQTtBckgwL2ZaO0FxSHgvZlk7RUFDSTtBckgwL2ZoQjtBcUh2L2ZZO0VBQ0k7RUFDQTtBckh5L2ZoQjtBcUh2L2ZnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0tBQUE7QXJIeS9mcEI7QVc1OWZJO0UwRzlDSTtJQXNCUTtJQUNBO0lBQ0E7RXJIdy9mZDtFcUh0L2ZjO0lBQ0k7SUFDQTtPQUFBO0VySHcvZmxCO0FBQ0Y7QXFIci9mWTtFQUNJO0FySHUvZmhCO0FXMStmSTtFMEdkUTtJQUlRO0VySHcvZmxCO0FBQ0Y7QXFIcC9mUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FySHMvZlo7QXFIcC9mWTtFQUNJO0VBQ0E7QXJIcy9maEI7QVd6L2ZJO0UwR0xJO0lBWVE7SUFDQTtFckhzL2ZkO0FBQ0Y7QXFIbi9mUTtFQUNJO0FySHEvZlo7QVdsZ2dCSTtFMEdZSTtJQUlRO0VySHMvZmQ7QUFDRjtBV3ZnZ0JJO0UwR29CSTtJQUVRO0VySHEvZmQ7RXFIbi9mYztJQUNJO0VySHEvZmxCO0FBQ0Y7O0FzSDVrZ0JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXRIK2tnQko7QXNIN2tnQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SCtrZ0JSO0FzSDdrZ0JRO0VBQ0k7QXRIK2tnQlo7QVdoaWdCSTtFMkd2REE7SUFZUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V0SCtrZ0JWO0FBQ0Y7QXNIM2tnQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEg2a2dCWjtBVy9pZ0JJO0UyR25DQTtJQVNRO0lBQ0E7RXRINmtnQlY7QUFDRjtBc0gxa2dCSTtFQUNJO0VBQ0E7RUFDQTtBdEg0a2dCUjtBVzFqZ0JJO0UyR3JCQTtJQU1RO0lBQ0E7SUFDQTtJQUNBO0V0SDZrZ0JWO0FBQ0Y7QXNIMWtnQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0SDRrZ0JSO0FXNWtnQkk7RTJHUkE7SUFXUTtFdEg2a2dCVjtBQUNGO0FzSDFrZ0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEg0a2dCUjtBVzNsZ0JJO0UyR2tCQTtJQUVRO0lBQ0E7SUFDQTtFdEgya2dCVjtBQUNGO0FzSHhrZ0JJO0VBQ0k7QXRIMGtnQlI7QXNIdGtnQlE7RUFDSTtBdEh3a2dCWjtBV3htZ0JJO0UyR3NDUTtJQUNJO0V0SHFrZ0JkO0VzSGxrZ0JVO0lBQ0k7RXRIb2tnQmQ7QUFDRjs7QXVIL3FnQkE7RUFDSTtFQUNBO0VBQ0E7QXZIa3JnQko7QVd0bmdCSTtFNEcvREo7SUFNUTtFdkhtcmdCTjtBQUNGO0FXM25nQkk7RTRHL0RKO0lBVVE7RXZIb3JnQk47QUFDRjtBV2hvZ0JJO0U0R2xEQTtJQUVRO0V2SG9yZ0JWO0FBQ0Y7QVdyb2dCSTtFNEc1Q0E7SUFFUTtFdkhtcmdCVjtBQUNGO0FXMW9nQkk7RTRHdENBO0lBRVE7RXZIa3JnQlY7QUFDRjtBdUgvcWdCSTtFQUNJO0VBQ0E7RUFDQTtBdkhpcmdCUjtBdUg5cWdCWTtFQUNJO0F2SGdyZ0JoQjtBdUg3cWdCWTtFQUNJO0F2SCtxZ0JoQjtBdUg1cWdCWTtFQUNJO0F2SDhxZ0JoQjtBdUh6cWdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZIMnFnQlI7QVdwcWdCSTtFNEdaQTtJQVFRO0lBQ0E7T0FBQTtJQUNBO0V2SDRxZ0JWO0FBQ0Y7QXVIenFnQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2SDJxZ0JSO0FXbHJnQkk7RTRHRUE7SUFRUTtFdkg0cWdCVjtBQUNGO0F1SHpxZ0JJO0VBQ0k7QXZIMnFnQlI7QXVIenFnQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkgycWdCWjtBV2hzZ0JJO0U0R3dCSTtJQUVRO0lBQ0E7SUFDQTtJQUNBO0V2SDBxZ0JkO0FBQ0Y7O0F3SHR3Z0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXhIeXdnQlI7QVcvc2dCSTtFNkc5REE7SUFPUTtFeEgwd2dCVjtBQUNGO0F3SHZ3Z0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEh5d2dCUjtBd0h0d2dCSTtFQUNJO0VBQ0E7QXhId3dnQlI7QXdIdHdnQlE7RUFDSTtBeEh3d2dCWjtBd0hwd2dCSTtFQUNJO0VBQ0E7QXhIc3dnQlI7QXdIbndnQkk7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEhvd2dCUjtBd0hsd2dCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhIb3dnQlo7QXdIbHdnQlk7O0VBRUk7QXhIb3dnQmhCO0F3SGp3Z0JZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEhtd2dCaEI7QXdIaHdnQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEhrd2dCaEI7QXdIOXZnQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SGd3Z0JaO0FXL3hnQkk7RTZHaUJJO0lBaUJRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXhIaXdnQmQ7QUFDRjtBd0g3dmdCWTtFQUNJO0F4SCt2Z0JoQjtBd0gzdmdCUTtFQUNJO0F4SDZ2Z0JaO0F3SDF2Z0JRO0VBQ0k7QXhINHZnQlo7QVdwemdCSTtFNkd1REk7SUFJUTtJQUNBO0V4SDZ2Z0JkO0FBQ0Y7QXdIenZnQlk7RUFDSTtBeEgydmdCaEI7O0F3SHJ2Z0JBO0VBQ0k7RUFDQTtFQUNBO0F4SHd2Z0JKO0F3SHR2Z0JJO0VBQ0k7RUFDQTtBeEh3dmdCUjs7QXdIcHZnQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SHV2Z0JKO0FXNTFnQkk7RTZHZ0dKO0lBUVE7SUFDQTtFeEh3dmdCTjtBQUNGO0FXbDJnQkk7RTZHNEdBO0lBRVE7RXhId3ZnQlY7QUFDRjtBd0h0dmdCUTtFQUNJO0F4SHd2Z0JaO0FXNzFnQkk7RTZHb0dJO0lBSVE7RXhIeXZnQmQ7QUFDRjtBd0hwdmdCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBeEhzdmdCWjtBV3QzZ0JJO0U2RzJISTtJQVFRO0lBQ0E7RXhIdXZnQmQ7QUFDRjtBd0hudmdCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4SHF2Z0JSO0FXcjRnQkk7RTZHeUlBO0lBVVE7SUFDQTtFeEhzdmdCVjtBQUNGO0F3SG52Z0JJO0VBQ0k7QXhIcXZnQlI7QXdIbHZnQkk7RUFDSTtBeEhvdmdCUjtBd0hqdmdCSTtFQUNJO0F4SG12Z0JSOztBd0g5dWdCSTtFQUNJO0F4SGl2Z0JSO0F3SDl1Z0JJOztFQUVJO0F4SGd2Z0JSO0F3SDd1Z0JJO0VBQ0k7QXhIK3VnQlI7O0F3SDF1Z0JJO0VBQ0k7QXhINnVnQlI7QXdIMXVnQkk7OztFQUdJO0F4SDR1Z0JSOztBd0h2dWdCSTtFQUNJO0VBQ0E7QXhIMHVnQlI7QXdIdnVnQkk7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEh3dWdCUjtBd0h0dWdCUTtFQUNJO0F4SHd1Z0JaO0F3SHB1Z0JJO0VBQ0k7RUFDQTtFQUNBO0F4SHN1Z0JSO0F3SHB1Z0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhIc3VnQlo7QVd2OGdCSTtFNkcwTkk7SUFVUTtFeEh1dWdCZDtBQUNGO0FXNThnQkk7RTZHeU9RO0lBRVE7RXhIcXVnQmxCO0FBQ0Y7QXdIanVnQlE7RUFDSTtFQUNBO0VBQ0E7QXhIbXVnQlo7QXdIN3RnQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBeEgrdGdCWjtBd0h4dGdCSTtFQUNJO0VBQ0E7QXhIMHRnQlI7QXdIeHRnQlE7RUFDSTtBeEgwdGdCWjs7QXdIcnRnQkE7RUFDSTtJQUNJO0lBQ0E7RXhId3RnQk47RXdIdHRnQkU7SUFDSTtJQUNBO0V4SHd0Z0JOO0V3SHR0Z0JFO0lBQ0k7SUFDQTtFeEh3dGdCTjtBQUNGO0F3SHJ0Z0JBO0VBQ0k7SUFDSTtJQUNBO0V4SHV0Z0JOO0V3SHJ0Z0JFO0lBQ0k7SUFDQTtFeEh1dGdCTjtBQUNGO0F3SHB0Z0JBO0VBQ0k7SUFDSTtJQUNBO0V4SHN0Z0JOO0V3SHB0Z0JFO0lBQ0k7SUFDQTtFeEhzdGdCTjtBQUNGO0F3SG50Z0JBO0VBQ0k7SUFDSTtFeEhxdGdCTjtFd0hudGdCRTtJQUNJO0V4SHF0Z0JOO0FBQ0Y7QXdIbHRnQkE7RUFDSTtJQUNJO0V4SG90Z0JOO0V3SGx0Z0JFO0lBQ0k7RXhIb3RnQk47QUFDRjtBd0hqdGdCQTtFQUNJO0lBQ0k7RXhIbXRnQk47RXdIanRnQkU7SUFDSTtFeEhtdGdCTjtBQUNGO0F3SGh0Z0JBO0VBQ0k7SUFDSTtFeEhrdGdCTjtFd0hodGdCRTtJQUNJO0V4SGt0Z0JOO0FBQ0Y7QXlIcG1oQkk7RUFDSTtFQUNBO0F6SHNtaEJSO0F5SG5taEJJO0VBQ0k7RUFDQTtBekhxbWhCUjtBeUhsbWhCSTtFQUNJO0F6SG9taEJSOztBQWxtaEJBO0EwSFpRO0VBQ0k7QTFIa25oQlo7QTBIN21oQmdCO0VBQ0k7QTFIK21oQnBCO0EwSHhtaEJRO0VBQ0k7RUFDQTtBMUgwbWhCWjtBMEhybWhCZ0I7RUFDSTtFQUNBO0ExSHVtaEJwQjs7QUEvbWhCQTtBMkhqQkE7RUFDSTtFQUNBO0VBQ0E7QTNIb29oQko7QTJIbG9oQkk7RUFDSTtFQUNBO0EzSG9vaEJSO0EySGxvaEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSG9vaEJaO0EySGhvaEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSGtvaEJSO0EySC9uaEJZO0VBQ0k7RUFDQTtBM0hpb2hCaEI7QTJIOW5oQlk7RUFDSTtFQUNBO0EzSGdvaEJoQjtBMkg1bmhCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzSDhuaEJaO0EySDNuaEJRO0VBQ0k7RUFDQTtBM0g2bmhCWjtBMkgxbmhCUTtFQUVJO0EzSDJuaEJaO0EySHhuaEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSDBuaEJaO0EySHhuaEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTNIMG5oQmhCO0EySHRuaEJRO0VBQ0k7RUFDQTtBM0h3bmhCWjtBMkh0bmhCWTs7RUFFSTtBM0h3bmhCaEI7QTJIcm5oQlk7RUFDSTtBM0h1bmhCaEI7QTJIbm5oQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBM0hxbmhCWjtBMkhsbmhCUTtFQUNJO0VBQ0E7QTNIb25oQlo7QTJIam5oQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSG1uaEJaO0EySGpuaEJZO0VBQ0k7RUFDQTtFQUNBO0EzSG1uaEJoQjtBMkhobmhCWTtFQUNJO0VBQ0E7RUFDQTtBM0hrbmhCaEI7QTJIN21oQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzSCttaEJSO0EySDVtaEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0g4bWhCUjtBMkgzbWhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0EzSDZtaEJSO0EySDFtaEJJO0VBQ0k7RUFDQTtFQUNBO0EzSDRtaEJSO0EySDFtaEJRO0VBQ0k7QTNING1oQlo7QTJIam1oQlE7RUFJRTtBM0hnbWhCVjtBMkg1bGhCTztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7QTNINmxoQlI7QVd0dGhCSTtFZ0hpSEc7SUFXSztJQUNBO0UzSDhsaEJWO0UySDVsaEJVO0lBQ0k7RTNIOGxoQmQ7QUFDRjtBMkgxbGhCUTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7QTNIMmxoQlI7QVd4dWhCSTtFZ0hxSUk7SUFXSTtJQUNBO0UzSDRsaEJWO0UySDFsaEJVO0lBQ0k7RTNINGxoQmQ7QUFDRjs7QTJIbmxoQkk7RUFDSTtFQUNBO0EzSHNsaEJSO0EySG5saEJJO0VBQ0k7RUFDQTtBM0hxbGhCUjs7QTRIeHpoQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SDJ6aEJSO0FXcnZoQkk7RWlIM0VBO0lBUVE7RTVINHpoQlY7QUFDRjtBNEh6emhCSTtFQUNJO0E1SDJ6aEJSO0FXN3ZoQkk7RWlIL0RBO0lBSVE7RTVINHpoQlY7QUFDRjtBNEh6emhCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E1SDJ6aEJSO0FXeHdoQkk7RWlIdkRBO0lBT1E7RTVINHpoQlY7QUFDRjtBNEgxemhCUTtFQUNJO0E1SDR6aEJaO0E0SHp6aEJRO0VBQ0k7QTVIMnpoQlo7QTRIdnpoQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1SHl6aEJSLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZHJvcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcmF0aW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9leHRlcm5hbC9faWNvbW9vbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9leHRlcm5hbC9faGFtYnVyZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R4LXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHktci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93YWx0LXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4tci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2JvcmluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2NvbGxhcHNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2VsYXN0aWMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbGFzdGljLXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2VtcGhhdGljLXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19taW51cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci1yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3Bpbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwcmluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwcmluZy1yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zdGFuZC1yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3F1ZWV6ZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC1yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZXh0ZXJuYWwvX2Nvb2tpZWJvdC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jhc2UvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9fdGhlbWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmFzZS9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9iYXNlL19iYWNrZ3JvdW5kcy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jhc2UvX3R5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9iYXNlL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmFzZS9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9iYXNlL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9iYXNlL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9lbGVtZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZWxlbWVudHMvX3NpdGUtaGVhZGVyLXNlYXJjaC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZWxlbWVudHMvX2Jhbm5lci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19icmVhZGNydW1icy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9lbGVtZW50cy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9lbGVtZW50cy9fdGFicy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZWxlbWVudHMvX3N3aXBlci1jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZWxlbWVudHMvX3BhbmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvZWxlbWVudHMvX3JlbGF0ZWQtcGFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9lbGVtZW50cy9fc2l0ZS1wb3B1cC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2VsZW1lbnRzL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvX3ZpZGVvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL19jaGFydC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jsb2Nrcy9fbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL19ub2RlLWxpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvX2Jpb2dyYXBoeS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jsb2Nrcy9tZWdhLW1lbnUvX2hhbWJ1cmdlci1tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL21lZ2EtbWVudS9faW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvbWVnYS1tZW51L19ob3Jpem9udGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL21lZ2EtbWVudS9faGFtYnVyZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL19kb2N1bWVudC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jsb2Nrcy9fZXZlbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvX3NwYWNlci5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jsb2Nrcy9fc3RhdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvY29udGVudC1saXN0L19kZWZhdWx0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL2NvbnRlbnQtbGlzdC9fc2Nyb2xsaW5nLWNhcmRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL2NvbnRlbnQtbGlzdC9fc3dpcGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL190aW1lbGluZS5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL2Jsb2Nrcy9fbWFzb25yeS1ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvYmxvY2tzL19tYXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9ibG9ja3MvX3NpdGVtYXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Fzcy9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zYXNzL3BhZ2VzL19zdHlsZXNoZWV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc3JjL3Nhc3MvcGFnZXMvX3NlYXJjaC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJ0aGVtZXNcIjtcblxuQGltcG9ydCBcImV4dGVybmFsXCI7XG5cbi8qKiBiYXNlICovXG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vKiogZWxlbWVudHMgKi9cbkBpbXBvcnQgXCJlbGVtZW50c1wiO1xuXG4vKiogYmxvY2tzICovXG5AaW1wb3J0IFwiYmxvY2tzXCI7XG5cbi8qKiBhbmltYXRpb24gKi9cbkBpbXBvcnQgXCJhbmltYXRpb25zXCI7XG5cbi8qKiBwYWdlcyAqL1xuQGltcG9ydCBcInBhZ2VzXCI7XG4iLCI6cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyRwcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dCB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9keS12YXJpYWJsZXNcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZTogI3skZm9udC1zaXplLXJvb3R9O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHk6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktYmFzZSl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZS1iYXNlLCAtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yKX07XG5cbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvcn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1saW5rLWRlY29yYXRpb246ICN7JGxpbmstZGVjb3JhdGlvbn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvcil9O1xuXG4gIEBpZiAkbGluay1ob3Zlci1kZWNvcmF0aW9uICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItZGVjb3JhdGlvbjogI3skbGluay1ob3Zlci1kZWNvcmF0aW9ufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvcmRlci12YXJcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoOiAjeyRib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItc3R5bGU6ICN7JGJvcmRlci1zdHlsZX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnR9O1xuXG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtOiAjeyRib3JkZXItcmFkaXVzLXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZzogI3skYm9yZGVyLXJhZGl1cy1sZ307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGw6ICN7JGJvcmRlci1yYWRpdXMteGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bDogI3skYm9yZGVyLXJhZGl1cy14eGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKTsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjAgZm9yIGNvbnNpc3RlbmN5XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbDogI3skYm9yZGVyLXJhZGl1cy1waWxsfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvcmRlci12YXJcblxuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93OiAjeyRib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbTogI3skYm94LXNoYWRvdy1zbX07XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGc6ICN7JGJveC1zaGFkb3ctbGd9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0OiAjeyRib3gtc2hhZG93LWluc2V0fTtcblxuICAvLyBGb2N1cyBzdHlsZXNcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9jdXMtdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGg6ICN7JGZvY3VzLXJpbmctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLW9wYWNpdHk6ICN7JGZvY3VzLXJpbmctb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3I6ICN7JGZvY3VzLXJpbmctY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9jdXMtdmFyaWFibGVzXG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgY29sb3Itc2NoZW1lOiBkYXJrO1xuXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZy1kYXJrKX07XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZyk7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6IHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBvbmx5IGZyb20gdGV4dCB0eXBlIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cyBpbiBDaHJvbWUuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTpub3QoW3R5cGU9XCJkYXRlXCJdKTpub3QoW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSk6bm90KFt0eXBlPVwibW9udGhcIl0pOm5vdChbdHlwZT1cIndlZWtcIl0pOm5vdChbdHlwZT1cInRpbWVcIl0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyAvLyAxXG59XG5cbi8vIDEuIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDJcbiAgYm9yZGVyOiAwOyAvLyAyXG59XG5cbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBUaGlzIHdheSB0aGUgYm9yZGVyIG9mIGEgZmllbGRzZXQgd3JhcHMgYXJvdW5kIHRoZSBsZWdlbmQgaWYgcHJlc2VudC5cbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDsgLy8gMVxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG5cbiAgKyAqIHtcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxuICB9XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gMS4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcblxuICAvLyAzLiBCZXR0ZXIgYWZmb3JkYW5jZSBhbmQgY29uc2lzdGVudCBhcHBlYXJhbmNlIGZvciBzZWFyY2ggY2FuY2VsIGJ1dHRvblxuICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gIH1cbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMiBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNjb250cmFzdC1taW5pbXVtXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTEwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMjAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6IHNoYWRlLWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpczogICAgICBzaGFkZS1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXM6ICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpczogICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLXRleHQtZW1waGFzaXM6ICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGU6ICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDgwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGU6ICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDgwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJnLXN1YnRsZTogICAgICAgIHRpbnQtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGU6ICAgICAgICAgbWl4KCRncmF5LTEwMCwgJHdoaXRlKSAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZTogICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlOiB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlOiAgICAgIHRpbnQtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICAgIHRpbnQtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRhcmstYm9yZGVyLXN1YnRsZTogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jc3NncmlkOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6ICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLWRhcmstbW9kZTogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGNvbG9yLW1vZGUtdHlwZTogICAgICAgICAgICAgZGF0YSAhZGVmYXVsdDsgLy8gYGRhdGFgIG9yIGBtZWRpYS1xdWVyeWBcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAgZm9yIHRoZSBzaG9ydGVyIGAkcHJlZml4YFxuJHByZWZpeDogICAgICAgICAgICAgICAgICAgICAgJHZhcmlhYmxlLXByZWZpeCAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kYm9keS1zZWNvbmRhcnktY29sb3I6ICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjc1KSAhZGVmYXVsdDtcbiRib2R5LXNlY29uZGFyeS1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib2R5LXRlcnRpYXJ5LWNvbG9yOiAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZzogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kYm9keS1lbXBoYXNpcy1jb2xvcjogICAgICAgJGJsYWNrICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIEljb24gbGlua3Ncbi8vIHNjc3MtZG9jcy1zdGFydCBpY29uLWxpbmstdmFyaWFibGVzXG4kaWNvbi1saW5rLWdhcDogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0OiAgLjI1ZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tc2l6ZTogICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbjogICAuMnMgZWFzZS1pbi1vdXQgdHJhbnNmb3JtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zZm9ybTogICAgdHJhbnNsYXRlM2QoLjI1ZW0sIDAsIDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpY29uLWxpbmstdmFyaWFibGVzXG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICBzb2xpZCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICAgIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14eGw6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtcGlsbDogICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4vLyBmdXN2LWRpc2FibGVcbiRib3JkZXItcmFkaXVzLTJ4bDogICAgICAgICAgICRib3JkZXItcmFkaXVzLXh4bCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3gtc2hhZG93LXZhcmlhYmxlc1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1pbnNldDogICAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3gtc2hhZG93LXZhcmlhYmxlc1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvY3VzLXJpbmctdmFyaWFibGVzXG4kZm9jdXMtcmluZy13aWR0aDogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1vcGFjaXR5OiAgICAuMjUgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1jb2xvcjogICAgICByZ2JhKCRwcmltYXJ5LCAkZm9jdXMtcmluZy1vcGFjaXR5KSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJsdXI6ICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ib3gtc2hhZG93OiAwIDAgJGZvY3VzLXJpbmctYmx1ciAkZm9jdXMtcmluZy13aWR0aCAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9jdXMtcmluZy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LXZhcmlhYmxlc1xuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtdmFyaWFibGVzXG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLXRyYW5zaXRpb25cbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLXRyYW5zaXRpb25cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXNwZWN0LXJhdGlvc1xuJGFzcGVjdC1yYXRpb3M6IChcbiAgXCIxeDFcIjogMTAwJSxcbiAgXCI0eDNcIjogY2FsYygzIC8gNCAqIDEwMCUpLFxuICBcIjE2eDlcIjogY2FsYyg5IC8gMTYgKiAxMDAlKSxcbiAgXCIyMXg5XCI6IGNhbGMoOSAvIDIxICogMTAwJSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFzcGVjdC1yYXRpb3Ncbi8vIHN0eWxlbGludC1lbmFibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtdmFyaWFibGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZikgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktY29kZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2UpICFkZWZhdWx0O1xuXG4vLyAkZm9udC1zaXplLXJvb3QgYWZmZWN0cyB0aGUgdmFsdWUgb2YgYHJlbWAsIHdoaWNoIGlzIHVzZWQgZm9yIGFzIHdlbGwgZm9udCBzaXplcywgcGFkZGluZ3MsIGFuZCBtYXJnaW5zXG4vLyAkZm9udC1zaXplLWJhc2UgYWZmZWN0cyB0aGUgZm9udCBzaXplIG9mIHRoZSBib2R5IHRleHRcbiRmb250LXNpemUtcm9vdDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogICAgICAgICAgNTAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiAgICAgICAgNjAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMiAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC1zaXplc1xuJGZvbnQtc2l6ZXM6IChcbiAgMTogJGgxLWZvbnQtc2l6ZSxcbiAgMjogJGgyLWZvbnQtc2l6ZSxcbiAgMzogJGgzLWZvbnQtc2l6ZSxcbiAgNDogJGg0LWZvbnQtc2l6ZSxcbiAgNTogJGg1LWZvbnQtc2l6ZSxcbiAgNjogJGg2LWZvbnQtc2l6ZVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC1zaXplc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LWZhbWlseTogbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtc3R5bGU6ICBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIDUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJHllbGxvdy0xMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjIgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYjogICB0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRsaW5rLWNvbG9yKSwgJGxpbmstY29sb3IsIDE1JSkpICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIDIpICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAgICAgICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0OiAgICAgICAgICAgIDEuNWVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgICAgICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICAgICAgICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdW5kZXJsaW5lLWdhcDogICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4xNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1pY29uLWNvbG9yOiAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygtMSAqICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuM1xuLy8gZnVzdi1lbmFibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1mb290ZXItYmc6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuLy8gZnVzdi1lbmFibGVcblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy40XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjRcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZmlsdGVyOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG5AaW1wb3J0IFwidmFyaWFibGVzLWRhcmtcIjsgLy8gVE9ETzogY2FuIGJlIHJlbW92ZWQgc2FmZWx5IGluIHY2LCBvbmx5IGhlcmUgdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlcyBpbiB2NS4zXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vXG4uaDEge1xuICBAZXh0ZW5kIGgxO1xufVxuXG4uaDIge1xuICBAZXh0ZW5kIGgyO1xufVxuXG4uaDMge1xuICBAZXh0ZW5kIGgzO1xufVxuXG4uaDQge1xuICBAZXh0ZW5kIGg0O1xufVxuXG4uaDUge1xuICBAZXh0ZW5kIGg1O1xufVxuXG4uaDYge1xuICBAZXh0ZW5kIGg2O1xufVxuXG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbkBlYWNoICRkaXNwbGF5LCAkZm9udC1zaXplIGluICRkaXNwbGF5LWZvbnQtc2l6ZXMge1xuICAuZGlzcGxheS0jeyRkaXNwbGF5fSB7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIH1cbn1cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuLnNtYWxsIHtcbiAgQGV4dGVuZCBzbWFsbDtcbn1cblxuLm1hcmsge1xuICBAZXh0ZW5kIG1hcms7XG59XG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGluaXRpYWxpc20tZm9udC1zaXplKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogLSRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tI3skcHJlZml4fWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHZhbHVlfTtcbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRjb3VudCkpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbiBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3JlIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi8vIEZvciByb3dzXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEZvciBjb2x1bW5zXG4udGFibGUtc3RyaXBlZC1jb2x1bW5zIHtcbiAgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKCN7JHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcn0pIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSB0YWJsZVxuLy9cbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXG5cbi50YWJsZS1hY3RpdmUge1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE9uIEFuZHJvaWQgQ2hyb21lLCBmb3JtLWNvbnRyb2wncyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICAvL1xuICAgIC8vIE9uIGlPUyBTYWZhcmksIGZvcm0tY29udHJvbCdzIFwiYXBwZWFyYW5jZTogbm9uZVwiICsgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgaU9TIDE2LjIgLyBTYWZhcmkgMTYuMlxuICAgIG1pbi13aWR0aDogODVweDsgLy8gU2VlbXMgdG8gYmUgYSBnb29kIG1pbmltdW0gc2FmZSB3aWR0aFxuXG4gICAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG5cbiAgICAvLyBBbmRyb2lkIENocm9tZSB0eXBlPVwiZGF0ZVwiIGlzIHRhbGxlciB0aGFuIHRoZSBvdGhlciBpbnB1dHNcbiAgICAvLyBiZWNhdXNlIG9mIFwibWFyZ2luOiAxcHggMjRweCAxcHggNHB4XCIgaW5zaWRlIHRoZSBzaGFkb3cgRE9NXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZXhjZXNzaXZlIGRhdGUgaW5wdXQgaGVpZ2h0IGluIFdlYmtpdFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzM0NDMzXG4gICY6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20geyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207IH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcgeyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKX07XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nKSwgdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgKiAuNTsgLy8gbGluZS1oZWlnaHQgbWludXMgY2hlY2sgaGVpZ2h0XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2UpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tY2hlY2stdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgZmlsdGVyOiAkZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I7XG5cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdOmluZGV0ZXJtaW5hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcblxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIFVzZSBkaXNhYmxlZCBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gb2YgOmRpc2FibGVkIHBzZXVkby1jbGFzc1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XG4gIGN1cnNvcjogJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yO1xufVxuXG4vL1xuLy8gU3dpdGNoXG4vL1xuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSl9O1xuXG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMsIDApO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSl9O1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcblxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDtcbn1cblxuLmJ0bi1jaGVjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgICsgLmJ0biB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZS1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbWluLWhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDtcbiAgfVxuXG4gID4gbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuICA+IHRleHRhcmVhOmZvY3VzLFxuICA+IHRleHRhcmVhOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICB+IGxhYmVsOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuICA+IHRleHRhcmVhOmRpc2FibGVkIH4gbGFiZWw6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwOyAvLyBSZXF1aXJlZCB0byBwcm9wZXJseSBwb3NpdGlvbiBsYWJlbCB0ZXh0IC0gYXMgZXhwbGFpbmVkIGFib3ZlXG4gICAgfVxuICB9XG5cbiAgPiA6ZGlzYWJsZWQgfiBsYWJlbCxcbiAgPiAuZm9ybS1jb250cm9sOmRpc2FibGVkIH4gbGFiZWwgeyAvLyBSZXF1aXJlZCBmb3IgYC5mb3JtLWNvbnRyb2xgcyBiZWNhdXNlIG9mIHNwZWNpZmljaXR5XG4gICAgY29sb3I6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0LFxuICA+IC5mb3JtLWZsb2F0aW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAjeyRpbnB1dC1ib3JkZXItd2lkdGh9KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbjogI3tlc2NhcGUtc3ZnKCRpY29uKX07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfSBAZWxzZSBpZiAkc3RhdGUgPT0gXCJpbnZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRidG4tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteTogI3skYnRuLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseTogI3skYnRuLWZvbnQtZmFtaWx5fTtcbiAgQGluY2x1ZGUgcmZzKCRidG4tZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRidG4tZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQ6ICN7JGJ0bi1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aDogI3skYnRuLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1czogI3skYnRuLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6ICN7JGJ0bi1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHk6ICN7JGJ0bi1kaXNhYmxlZC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwICN7JGJ0bi1mb2N1cy13aWR0aH0gcmdiYSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2IpLCAuNSk7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnRuLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXgpO1xuICBmb250LWZhbWlseTogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuYnRuLWNoZWNrICsgJjpob3ZlciB7XG4gICAgLy8gb3ZlcnJpZGUgZm9yIHRoZSBjaGVja2JveC9yYWRpbyBidXR0b25zXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICA6bm90KC5idG4tY2hlY2spICsgJjphY3RpdmUsXG4gICY6Zmlyc3QtY2hpbGQ6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5zaG93IHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnKTtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQ6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbG9vcHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGlmICRjb2xvciA9PSBcImxpZ2h0XCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2UgaWYgJGNvbG9yID09IFwiZGFya1wiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhbnQtbG9vcHNcblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1ub3JtYWx9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skYnRuLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6IDAgMCAwICMwMDA7IC8vIENhbid0IHVzZSBgbm9uZWAgYXMga2V5d29yZCBuZWdhdGVzIGFsbCB2YWx1ZXMgd2hlbiB1c2VkIHdpdGggbXVsdGlwbGUgc2hhZG93c1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3skYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYn07XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93bigkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LWVuZCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoXG4gICRkaXJlY3Rpb246IGRvd24sXG4gICR3aWR0aDogJGNhcmV0LXdpZHRoLFxuICAkc3BhY2luZzogJGNhcmV0LXNwYWNpbmcsXG4gICR2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduXG4pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LW1peGluc1xuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6ICN7JG5hdi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6ICN7JG5hdi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JG5hdi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXYtbGluay10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXRhYnMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdGFicy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi10YWJzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXRhYnMtY3NzLXZhcnNcblxuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG59XG5cblxuLy9cbi8vIFVuZGVybGluZVxuLy9cblxuLm5hdi11bmRlcmxpbmUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcDogI3skbmF2LXVuZGVybGluZS1nYXB9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogI3skbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG5cbiAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXApO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWZpbGwsXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmsge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBNYWtlIHN1cmUgYnV0dG9uIHdpbGwgZ3Jvd1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLmFjY29yZGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcblxuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCk7XG59XG5cblxuLy8gRmx1c2ggYWNjb3JkaW9uIGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBhY2NvcmRpb24gaXRlbXMgZWRnZS10by1lZGdlLlxuXG4uYWNjb3JkaW9uLWZsdXNoIHtcbiAgPiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcbiAgICA+IC5hY2NvcmRpb24tY29sbGFwc2UsXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbixcbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cbiAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1jbGFzc1xuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uLWRhcmspfTtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbi1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvLyBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yOiAjeyRidG4tY2xvc2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtYmc6ICN7IGVzY2FwZS1zdmcoJGJ0bi1jbG9zZS1iZykgfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogI3skYnRuLWNsb3NlLWZvY3VzLXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtY3NzLXZhcnNcblxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtYmcpIGNlbnRlciAvICRidG4tY2xvc2Utd2lkdGggYXV0byBuby1yZXBlYXQ7IC8vIGluY2x1ZGUgdHJhbnNwYXJlbnQgZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBmaWx0ZXI6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZmlsdGVyKTtcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5KTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtaG92ZXItb3BhY2l0eSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtc2hhZG93KTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgfVxufVxuXG5AbWl4aW4gYnRuLWNsb3NlLXdoaXRlKCkge1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZmlsdGVyOiAjeyRidG4tY2xvc2UtZmlsdGVyLWRhcmt9O1xufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG59XG5cbjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1maWx0ZXI6ICN7JGJ0bi1jbG9zZS1maWx0ZXJ9O1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW1vZGFsLXppbmRleDogI3skemluZGV4LW1vZGFsfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLW1kfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZzogI3skbW9kYWwtaW5uZXItcGFkZGluZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYmc6ICN7JG1vZGFsLWNvbnRlbnQtYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmc6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nfTsgLy8gVG9kbyBpbiB2NjogU3BsaXQgdGhpcyBwYWRkaW5nIGludG8geCBhbmQgeVxuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRtb2RhbC10aXRsZS1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXA6ICN7JG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZzogI3skbW9kYWwtZm9vdGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGh9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3cpKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleDogI3skemluZGV4LW1vZGFsLWJhY2tkcm9wfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmc6ICN7JG1vZGFsLWJhY2tkcm9wLWJnfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eTogI3skbW9kYWwtYmFja2Ryb3Atb3BhY2l0eX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcblxuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXgpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmcpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eSkpO1xufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIC8vIFNwbGl0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW52YWxpZCBjYWxjKCkgZnVuY3Rpb24gaWYgdmFsdWUgaXMgMFxuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gU2hhcmVkIGJldHdlZW4gbW9kYWxzIGFuZCBvZmZjYW52YXNlc1xuQG1peGluIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleCwgJGJhY2tkcm9wLWJnLCAkYmFja2Ryb3Atb3BhY2l0eSkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuIiwiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRml4IHRvIHByZXZlbnQgb3ZlcmZsb3dpbmcgY2hpbGRyZW4gdG8gYmVjb21lIGZvY3VzYWJsZVxuICAqIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gVXNlIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLCBvciBvbmUgb2YgaXRzIGNoaWxkIGVsZW1lbnRzIGlzIGZvY3VzZWRcbi8vIChpLmUuIHdoZW4gZm9jdXMgaXMgd2l0aGluIHRoZSBlbGVtZW50L2NvbnRhaW5lciB0aGF0IHRoZSBjbGFzcyB3YXMgYXBwbGllZCB0bylcbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvV0NBRzIyL1RlY2huaXF1ZXMvZ2VuZXJhbC9HMS5odG1sXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXg6IFwiXCIsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFVzZSBjdXN0b20gQ1NTIHZhcmlhYmxlIG5hbWUgaWYgcHJlc2VudCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gYGNsYXNzYFxuICAgICRjc3MtdmFyaWFibGUtbmFtZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcykpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZS5nLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLWNzcy12YXI6IG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXIpO1xuICAgICRpcy1sb2NhbC12YXJzOiBtYXAtZ2V0KCR1dGlsaXR5LCBsb2NhbC12YXJzKTtcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLWNzcy12YXIge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgIHNyYzogIHVybCgnL2FwcC9hc3NldHMvZm9udHMvaWNvbW9vbi9pY29tb29uLmVvdCcpO1xuICAgIHNyYzogIHVybCgnL2FwcC9hc3NldHMvZm9udHMvaWNvbW9vbi9pY29tb29uLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL2ljb21vb24vaWNvbW9vbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL2ljb21vb24vaWNvbW9vbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcvYXBwL2Fzc2V0cy9mb250cy9pY29tb29uL2ljb21vb24ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnL2FwcC9hc3NldHMvZm9udHMvaWNvbW9vbi9pY29tb29uLnN2ZycpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBibG9jaztcbn1cblxuLmljb21vb24ge1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5ldmVyO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgICAmLS1zZWFyY2g6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1zZWFyY2gpO1xuICAgIH1cblxuICAgICYtLWNsb3NlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tY2xvc2UpO1xuICAgIH1cblxuICAgICYtLWRvd25sb2FkOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tZG93bmxvYWQpO1xuICAgIH1cblxuICAgICYtLWRvY3VtZW50OjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tZG9jdW1lbnQpO1xuICAgIH1cblxuICAgICYtLWVzZWYteGh0bWw6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1lc2VmLXhodG1sKTtcbiAgICB9XG5cbiAgICAmLS1lc2VmLXppcDo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWVzZWYtemlwKTtcbiAgICB9XG5cbiAgICAmLS1wcmVzZW50YXRpb246OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1wcmVzZW50YXRpb24pO1xuICAgIH1cblxuICAgICYtLWxpc3Rlbjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWxpc3Rlbik7XG4gICAgfVxuXG4gICAgJi0td2F0Y2g6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi13YXRjaCk7XG4gICAgfVxuXG4gICAgJi0tbGluazo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWxpbmspO1xuICAgIH1cblxuICAgICYtLWxpbmtlZGluOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tbGlua2VkaW4pO1xuICAgIH1cblxuICAgICYtLXlvdXR1YmU6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi15b3V0dWJlKTtcbiAgICB9XG5cbiAgICAmLS1tYXAtbWFya2VyOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tbWFwLW1hcmtlcik7XG4gICAgfVxuICAgICYtLWdsb2JlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tZ2xvYmUpO1xuICAgIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3IgIDogJGhhbWJ1cmdlci1sYXllci1jb2xvciAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAhZGVmYXVsdDtcblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIEhhbWJ1cmdlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgICBmaWx0ZXI6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIC0yKTtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiJGhhbWJ1cmdlci1wYWRkaW5nLXg6IDBweDtcbiRoYW1idXJnZXItcGFkZGluZy15OiAwcHg7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoOiAyNHB4O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ6IDNweDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZzogNXB4O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvcjogd2hpdGU7XG4kaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM6IDBweDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eTogMTtcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbkBpbXBvcnQgXCJoYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vyc1wiO1xuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeCkge1xuICAvKlxuICAgKiAzRFhcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeCB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4LXIpIHtcbiAgLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeC1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5KSB7XG4gIC8qXG4gICAqIDNEWVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R5IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5LXIpIHtcbiAgLypcbiAgICogM0RZIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeS1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5LXIpIHtcbiAgLypcbiAgICogM0RYWSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHh5LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93KSB7XG4gIC8qXG4gICAqIEFycm93XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3ctcikge1xuICAvKlxuICAgKiBBcnJvdyBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0KSB7XG4gIC8qXG4gICAqIEFycm93IEFsdFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMjUsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd2FsdC1yKSB7XG4gIC8qXG4gICAqIEFycm93IEFsdCBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4pIHtcbiAgLypcbiAgICogQXJyb3cgVHVyblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4tcikge1xuICAvKlxuICAgKiBBcnJvdyBUdXJuIFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBib3JpbmcpIHtcbiAgLypcbiAgICogQm9yaW5nXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1ib3Jpbmcge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJixcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZSkge1xuICAvKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2Uge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZS1yKSB7XG4gIC8qXG4gICAqIENvbGxhcHNlIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljKSB7XG4gIC8qXG4gICAqIEVsYXN0aWNcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMik7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVsYXN0aWMtcikge1xuICAvKlxuICAgKiBFbGFzdGljIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljKSB7XG4gIC8qXG4gICAqIEVtcGhhdGljXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZW1waGF0aWMtcikge1xuICAvKlxuICAgKiBFbXBoYXRpYyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBtaW51cykge1xuICAvKlxuICAgKiBNaW51c1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tbWludXMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA4cyAwcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyBsaW5lYXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA4cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMDhzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlcikge1xuICAvKlxuICAgKiBTbGlkZXJcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QobWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci13aWR0aCwgLTcpLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAtMSwgMCk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc2xpZGVyLXIpIHtcbiAgLypcbiAgICogU2xpZGVyIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlci1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDIpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZChtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLXdpZHRoLCA3KSwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4pIHtcbiAgLypcbiAgICogU3BpblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3BpbiB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4tcikge1xuICAvKlxuICAgKiBTcGluIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4tciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nKSB7XG4gIC8qXG4gICAqIFNwcmluZ1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDIpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nLXIpIHtcbiAgLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZy1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQpIHtcbiAgLypcbiAgICogU3RhbmRcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHN0YW5kLXIpIHtcbiAgLypcbiAgICogU3RhbmQgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3F1ZWV6ZSkge1xuICAvKlxuICAgKiBTcXVlZXplXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcXVlZXplIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMDc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIDAuMTJzIGVhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCB2b3J0ZXgpIHtcbiAgLypcbiAgICogVm9ydGV4XG4gICAqL1xuICAuaGFtYnVyZ2VyLS12b3J0ZXgge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNzY1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHZvcnRleC1yKSB7XG4gIC8qXG4gICAqIFZvcnRleCBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNDeWJvdENvb2tpZWJvdERpYWxvZyAjQ3lib3RDb29raWVib3REaWFsb2dCb2R5Q29udGVudFRleHQgYSxcbiNDeWJvdENvb2tpZWJvdERpYWxvZyAjQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25JQUJIZWFkZXJWaWV3UGFydG5lcnNMaW5rLFxuI0N5Ym90Q29va2llYm90RGlhbG9nICNDeWJvdENvb2tpZWJvdERpYWxvZ0RldGFpbEJ1bGtDb25zZW50TGlzdCBkdCBhLFxuI0N5Ym90Q29va2llYm90RGlhbG9nICNDeWJvdENvb2tpZWJvdERpYWxvZ0RldGFpbEZvb3RlciBhLFxuI0N5Ym90Q29va2llYm90RGlhbG9nIC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbklBQkRlc2NyaXB0aW9uIGEsXG4jQ3lib3RDb29raWVib3REaWFsb2cgLkN5Ym90Q29va2llYm90RGlhbG9nRGV0YWlsQm9keUNvbnRlbnRDb29raWVMaW5rLFxuI0N5Ym90Q29va2llYm90RGlhbG9nRGV0YWlsQm9keUNvbnRlbnRUZXh0QWJvdXQgYSB7XG4gICAgY29sb3I6IHZhcigtLWxpbmstY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDRweDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbiNDeWJvdENvb2tpZWJvdERpYWxvZyAuQ29va2llQ2FyZCAuQ3lib3RDb29raWVib3REaWFsb2dEZXRhaWxCb2R5Q29udGVudENvb2tpZUNvbnRhaW5lckJ1dHRvbjpob3ZlcixcbiNDeWJvdENvb2tpZWJvdERpYWxvZyAuQ29va2llQ2FyZCAuQ3lib3RDb29raWVib3REaWFsb2dEZXRhaWxCb2R5Q29udGVudElBQnYyVGFiOmhvdmVyLFxuI0N5Ym90Q29va2llYm90RGlhbG9nRGV0YWlsQm9keUNvbnRlbnRDb29raWVDb250YWluZXJUeXBlcyAuQ3lib3RDb29raWVib3REaWFsb2dEZXRhaWxCb2R5Q29udGVudENvb2tpZVByb3ZpZGVyOm5vdCguQ3lib3RDb29raWVib3REaWFsb2dEZXRhaWxCb2R5Q29udGVudENvb2tpZUluZm9Db3VudCkge1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nIGE6aG92ZXI6OmFmdGVyLFxuI0N5Ym90Q29va2llYm90RGlhbG9nIGE6aG92ZXI6OmJlZm9yZSxcbiNDeWJvdENvb2tpZWJvdERpYWxvZyBidXR0b246bm90KCNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlCdXR0b25EZWNsaW5lLCAjQ3lib3RDb29raWVib3REaWFsb2dCb2R5QnV0dG9uQWNjZXB0LCAjQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dhbGxTZWxlY3Rpb24sICNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbkxldmVsT3B0aW5BbGxvd0FsbCk6aG92ZXI6OmFmdGVyLFxuI0N5Ym90Q29va2llYm90RGlhbG9nIGJ1dHRvbjpub3QoI0N5Ym90Q29va2llYm90RGlhbG9nQm9keUJ1dHRvbkRlY2xpbmUsICNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlCdXR0b25BY2NlcHQsICNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvbkxldmVsT3B0aW5BbGxvd2FsbFNlbGVjdGlvbiwgI0N5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uTGV2ZWxPcHRpbkFsbG93QWxsKTpob3Zlcjo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMThweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2cgKixcbiNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlVbmRlcmxheSAqIHtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nSGVhZGVyLFxuI0N5Ym90Q29va2llYm90RGlhbG9nUG93ZXJlZEJ5VGV4dCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5Q29udGVudCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5QnV0dG9uRGVjbGluZSxcbiNDeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlCdXR0b25BY2NlcHQsXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dhbGxTZWxlY3Rpb24sXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25MZXZlbE9wdGluQWxsb3dBbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMTZweCAxNnB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMnB4IDIwcHggIWltcG9ydGFudDtcbiAgICBnYXA6IDhweDtcbiAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1jb2xvcikgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idG4tYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1hZnRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW47XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAtNHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW47XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWFmdGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nQm9keUJ1dHRvbnNXcmFwcGVyLFxuI0N5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uc1dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbiNDeWJvdENvb2tpZWJvdERpYWxvZ05hdiAuQ3lib3RDb29raWVib3REaWFsb2dOYXZJdGVtTGluay5DeWJvdENvb2tpZWJvdERpYWxvZ0FjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbiNDeWJvdENvb2tpZWJvdERpYWxvZ05hdiAuQ3lib3RDb29raWVib3REaWFsb2dOYXZJdGVtTGluayB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2cgaW5wdXQ6Y2hlY2tlZCArIC5DeWJvdENvb2tpZWJvdERpYWxvZ0JvZHlMZXZlbEJ1dHRvblNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xufVxuXG4jQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25zU2VsZWN0UGFuZSBsYWJlbDpub3QoW2Zvcj1cIkN5Ym90Q29va2llYm90RGlhbG9nQm9keUxldmVsQnV0dG9uTmVjZXNzYXJ5XCJdKSAuQ3lib3RDb29raWVib3REaWFsb2dCb2R5TGV2ZWxCdXR0b25EZXNjcmlwdGlvbjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbn1cblxuI0N5Ym90Q29va2llYm90RGlhbG9nIC5DeWJvdENvb2tpZWJvdFNjcm9sbENvbnRhaW5lciA+IGRpdjpmaXJzdC1vZi10eXBlOmZvY3VzIHtcbiAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSkgdmFyKC0tY29sb3ItZ3JleSkgIWltcG9ydGFudDtcbn1cbiIsIjpyb290IHtcbiAgICAvKiBTZXR0aW5nc1xuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLy8gQmFzZSBjb2xvdXJzXG4gICAgLS1jb2xvci1ibGFjazogIzAwMDtcbiAgICAtLWNvbG9yLXdoaXRlOiAjZmZmO1xuICAgIC0tY29sb3ItZ3JleTogI2YwZjJmNDtcbiAgICAtLWNvbG9yLWdyZXktbWlkOiAjOTQ5NDk0O1xuICAgIC0tY29sb3ItcHJpbWFyeTogIzAwMzA1NztcbiAgICAtLWNvbG9yLXNlY29uZGFyeTogIzQ2YTcwYjtcbiAgICAtLWNvbG9yLXR1cnF1b2lzZTogIzQwYjE5NTtcbiAgICAtLWNvbG9yLWJsdWU6ICMzZDc1OTg7XG4gICAgLS1jb2xvci10ZWFsOiAjNzFhZWI3O1xuICAgIC0tY29sb3ItZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxMDZkZWcsICMwMDMwNTcgMCUsICMzRDc1OTggMTAwJSk7XG5cbiAgICAvLyBGb250XG4gICAgLS1mb250LWZhbWlseS1iYXNlOiAnTWV0cm9wb2xpcycsIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LWZhbWlseS1pY29tb29uOiBpY29tb29uO1xuICAgIC0tZm9udC1mYW1pbHktaWNvbjogdmFyKC0tZm9udC1mYW1pbHktaWNvbW9vbik7XG4gICAgLS1mb250LXNpemU6IDFyZW07IC8vIDE2cHhcbiAgICAtLWZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgLS1saW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuXG4gICAgLy8gQm9yZGVyXG4gICAgLS1ib3JkZXItcmFkaXVzOiAyNXB4O1xuXG4gICAgLy8gVHJhbnNpdGlvblxuICAgIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gICAgLS10cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG5cbiAgICAvLyBPdmVybGF5XG4gICAgLS1vdmVybGF5OiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgLjUpLCB0cmFuc3BhcmVudCk7XG5cbiAgICAvLyBIZWFkZXJcbiAgICAtLWhlYWRlci10b3AtaGVpZ2h0OiA0MHB4O1xuICAgIC0taGVhZGVyLW1haW4taGVpZ2h0OiA4MHB4O1xuICAgIC0taGVhZGVyLWhlaWdodDogY2FsYyh2YXIoLS1oZWFkZXItdG9wLWhlaWdodCkgKyB2YXIoLS1oZWFkZXItbWFpbi1oZWlnaHQpKTtcbiAgICAtLWhlYWRlci16LWluZGV4OiA1MDA7XG5cbiAgICAvLyBTaXRlIEhlYWRlciBTZWFyY2hcbiAgICAtLXNpdGUtaGVhZGVyLXRyaWdnZXItc2l6ZTogMzZweDtcblxuICAgIC8vIExheW91dFxuICAgIC0tc2VjdGlvbi1wYWRkaW5nOiA0cmVtOyAvLyA2NHB4XG5cbiAgICAvLyBTcGFjaW5nXG4gICAgLS1zcGFjaW5nLXh4eHM6IDhweDtcbiAgICAtLXNwYWNpbmcteHhzOiAxNnB4O1xuICAgIC0tc3BhY2luZy14czogMjBweDtcbiAgICAtLXNwYWNpbmctc206IDI0cHg7XG4gICAgLS1zcGFjaW5nLW1kOiAzMnB4O1xuICAgIC0tc3BhY2luZy1sZzogNDBweDtcbiAgICAtLXNwYWNpbmcteGw6IDQ4cHg7XG4gICAgLS1zcGFjaW5nLXh4bDogNjRweDtcbiAgICAtLXNwYWNpbmcteHh4bDogODBweDtcbiAgICAtLXNwYWNpbmcteHh4eGw6IDEyMHB4O1xuXG4gICAgLy8gUGFuZWwgcGFkZGluZ1xuICAgIC0tcGFuZWwtcGFkZGluZy1zbTogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgLS1wYW5lbC1wYWRkaW5nLW1kOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICAtLXBhbmVsLXBhZGRpbmctbGc6IHZhcigtLXNwYWNpbmcteHhsKTtcblxuICAgIC8vIEJvcmRlciByYWRpdXNcbiAgICAtLWJvcmRlci1yYWRpdXMtc206IDRweDtcbiAgICAtLWJvcmRlci1yYWRpdXMtbWQ6IDhweDtcblxuICAgIC8vIEljb25zXG4gICAgLy8gSWNvbW9vblxuICAgIC0taWNvbi1hY2Nlc3NpYmlsaXR5OiBcIlxcZTkwMFwiO1xuICAgIC0taWNvbi1hcnJvdzogXCJcXGU5MDFcIjtcbiAgICAtLWljb24tZG90OiBcIlxcZTkwMlwiO1xuICAgIC0taWNvbi1kb3dubG9hZDogXCJcXGU5MDNcIjtcbiAgICAtLWljb24tZXh0ZXJuYWw6IFwiXFxlOTA0XCI7XG4gICAgLS1pY29uLWxpbms6IFwiXFxlOTA1XCI7XG4gICAgLS1pY29uLXBsdXM6IFwiXFxlOTA2XCI7XG4gICAgLS1pY29uLXNlYXJjaDogXCJcXGU5MDdcIjtcbiAgICAtLWljb24tY2xvc2U6IFwiXFxlOTA4XCI7XG4gICAgLS1pY29uLWVzZWYteGh0bWw6IFwiXFxlOTA5XCI7XG4gICAgLS1pY29uLWVzZWYtemlwOiBcIlxcZTkwYVwiO1xuICAgIC0taWNvbi1kb2N1bWVudDogXCJcXGU5MGJcIjtcbiAgICAtLWljb24tbGlua2VkaW46IFwiXFxlOTBjXCI7XG4gICAgLS1pY29uLWxpc3RlbjogXCJcXGU5MGRcIjtcbiAgICAtLWljb24tbWFwLW1hcmtlcjogXCJcXGU5MGVcIjtcbiAgICAtLWljb24tZ2xvYmU6IFwiXFxlOTEzXCI7XG4gICAgLS1pY29uLWNoZXZyb246IFwiXFxlOTE0XCI7XG4gICAgLS1pY29uLXByZXNlbnRhdGlvbjogXCJcXGU5MTVcIjtcbiAgICAtLWljb24tcXVvdGVzOiBcIlxcZTkxNlwiO1xuICAgIC0taWNvbi12aWRlbzogXCJcXGU5MThcIjtcbiAgICAtLWljb24td2F0Y2g6IFwiXFxlOTE5XCI7XG4gICAgLS1pY29uLXlvdXR1YmU6IFwiXFxlOTFhXCI7XG5cblxuICAgIC8qIFRoZW1lXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICBAaW5jbHVkZSB0aGVtZS13aGl0ZTtcblxuICAgIC8qIFJlc3BvbnNpdmUgU2V0dGluZ3NcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgLS1oZWFkZXItaGVpZ2h0OiAxMjBweDtcbiAgICB9XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuaHRtbCB7XG4gICAgc2Nyb2xsLXBhZGRpbmctdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0KTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIG92ZXJmbG93LXg6IGNsaXA7XG5cbiAgICAmLm1lbnUtb3BlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxufVxuIiwiQG1peGluIHRoZW1lLXdoaXRlIHtcbiAgICAvLyBHbG9iYWxcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLXN3aXBlci1idWxsZXQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1saW5rLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICAtLWhlYWRpbmctY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgIC0tY29sb3ItaGVhZGluZzogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1oZWFkaW5nLWFjY2VudC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1jb2xvci1zdGF0czogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tYnVsbGV0LWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAtLXJ1bGUtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tZXJyb3ItbWVzc2FnZS1jb2xvcjogcmVkO1xuXG4gICAgLy8gSFJcbiAgICAtLWhyLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuXG4gICAgLy8gUGlsbCBoZWFkaW5nXG4gICAgLS1waWxsLWhlYWRpbmctYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgLS1waWxsLWhlYWRpbmctY29sb3I6IHZhcigtLWNvbG9yLWhlYWRpbmcpO1xuXG4gICAgLy8gQnV0dG9uXG4gICAgLS1idG4tY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tYnRuLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tYnRuLWxpbmstaWNvbi1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tYnRuLWxpbmstaWNvbi1iZy1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1idG4tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAtLWJ0bi1hZnRlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1idG4tYWZ0ZXItY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWJ0bi1ob3Zlci1iZy1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1idG4taG92ZXItY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC8vIEZvcm1zXG4gICAgLS1mb3JtLWlucHV0LWJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICAtLWZvcm0taW5wdXQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgLS1mb3JtLWlucHV0LWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblxuICAgIC8vIFRhYmxlc1xuICAgIC0tdGFibGUtYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuXG4gICAgLy8gQWNjb3JkaW9uXG4gICAgLS1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5LW1pZCk7XG4gICAgLS1hY2NvcmRpb24taWNvbi1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tYWNjb3JkaW9uLWljb24tYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyLWNvbG9yKTtcblxuICAgIC8vIFRhYnNcbiAgICAtLXRhYi1jb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgLS10YWItYmctY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC0tdGFiLWJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuICAgIC0tdGFiLWJnLWNvbG9yLWFjdGl2ZTogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS10YWItY29sb3ItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAvLyBRdW90ZVxuICAgIC0tcXVvdGUtaWNvbi1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcblxuICAgIC8vIEJpb2dyYXBoeVxuICAgIC0tYmlvZ3MtaWNvbi1iZy1jaGFpcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1iaW9ncy1pY29uLWNvbG9yLWNoYWlyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAvLyBUaW1lbGluZVxuICAgIC0tdGltZWxpbmUtbGluZS1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcblxuICAgIC8vIENoYXJ0XG4gICAgLS1jaGFydC1jb2xvci0xOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAtLWNoYXJ0LWNvbG9yLTI6IHZhcigtLWNvbG9yLXRlYWwpO1xuICAgIC0tY2hhcnQtY29sb3ItMzogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAtLWNoYXJ0LWNvbG9yLTQ6IHZhcigtLWNvbG9yLWJsdWUpO1xuICAgIC0tY2hhcnQtY29sb3ItNTogdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuICAgIC0tY2hhcnQtYmFyLW1haW46IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tY2hhcnQtYmFyLW1haW4tY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cblxuQG1peGluIHRoZW1lLXByaW1hcnkge1xuICAgIEBpbmNsdWRlIHRoZW1lLXdoaXRlO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1pY29uLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWhlYWRpbmctYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci10ZWFsKTtcbiAgICAtLWNvbG9yLXN0YXRzOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLS1ib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWJ1bGxldC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tcnVsZS1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuXG4gICAgLy8gSFJcbiAgICAtLWhyLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAvLyBQaWxsIGhlYWRpbmdcbiAgICAtLXBpbGwtaGVhZGluZy1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLS1waWxsLWhlYWRpbmctY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgLy8gQnV0dG9uXG4gICAgLS1idG4tbGluay1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tYnRuLWxpbmstaWNvbi1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1idG4tbGluay1pY29uLWJnLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLS1idG4tY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWJ0bi1hZnRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1idG4taG92ZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgLy8gQWNjb3JkaW9uXG4gICAgLS1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLS1hY2NvcmRpb24taWNvbi1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgICAvLyBUYWJzXG4gICAgLS10YWItY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLXRhYi1iZy1jb2xvci1hY3RpdmU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLXRhYi1jb2xvci1hY3RpdmU6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgLy8gUXVvdGVcbiAgICAtLXF1b3RlLWljb24tY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC0tcGFnaW5hdGlvbi1idG4tYmctY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLXBhZ2luYXRpb24tYnRuLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgIC0tcGFnaW5hdGlvbi1mcmFjdGlvbi1iZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgICAvLyBCaW9ncmFwaHlcbiAgICAtLWJpb2dzLWljb24tYmctY2hhaXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAtLWJpb2dzLWljb24tY29sb3ItY2hhaXI6IHZhcigtLWNvbG9yLWJsdWUpO1xuXG4gICAgLy8gVGltZWxpbmVcbiAgICAtLXRpbWVsaW5lLWxpbmUtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC8vIENoYXJ0XG4gICAgLS1jaGFydC1jb2xvci0xOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgLS1jaGFydC1iYXItbWFpbjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIC0tY2hhcnQtYmFyLW1haW4tY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufVxuXG5AbWl4aW4gdGhlbWUtZ3JleSB7XG4gICAgQGluY2x1ZGUgdGhlbWUtd2hpdGU7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmV5KTtcblxuICAgIC8vIFBpbGwgaGVhZGluZ1xuICAgIC0tcGlsbC1oZWFkaW5nLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC8vIEhSXG4gICAgLS1oci1jb2xvcjogdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufVxuXG5AbWl4aW4gdGhlbWUtZ3JleS1taWQge1xuICAgIEBpbmNsdWRlIHRoZW1lLXdoaXRlO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuICAgIC0tdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufVxuXG5AbWl4aW4gdGhlbWUtc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSB0aGVtZS13aGl0ZTtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbkBtaXhpbiB0aGVtZS10dXJxdW9pc2Uge1xuICAgIEBpbmNsdWRlIHRoZW1lLXdoaXRlO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdHVycXVvaXNlKTtcbiAgICAtLWljb24tYmFja2dyb3VuZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xufVxuXG5AbWl4aW4gdGhlbWUtYmx1ZSB7XG4gICAgQGluY2x1ZGUgdGhlbWUtcHJpbWFyeTtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xuXG4gICAgLy8gQ2hhcnQ6IGJsdWUgYmFja2dyb3VuZCBoYXMgZW5vdWdoIGNvbnRyYXN0IGFnYWluc3QgcHJpbWFyeSwgdW5saWtlIHRoZW1lLXByaW1hcnkvdGhlbWUtZ3JhZGllbnRcbiAgICAtLWNoYXJ0LWNvbG9yLTE6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tY2hhcnQtYmFyLW1haW46IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tY2hhcnQtYmFyLW1haW4tY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC0tcGFnaW5hdGlvbi1idG4tYmctY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIC0tcGFnaW5hdGlvbi1idG4tY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcblxuICAgIC0tcGFnaW5hdGlvbi1mcmFjdGlvbi1iZy1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgLS1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbkBtaXhpbiB0aGVtZS10ZWFsIHtcbiAgICBAaW5jbHVkZSB0aGVtZS13aGl0ZTtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRlYWwpO1xuICAgIC0taWNvbi1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbkBtaXhpbiB0aGVtZS1ibGFjayB7XG4gICAgQGluY2x1ZGUgdGhlbWUtd2hpdGU7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgLS10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbkBtaXhpbiB0aGVtZS1ncmFkaWVudCB7XG4gICAgQGluY2x1ZGUgdGhlbWUtcHJpbWFyeTtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYWRpZW50KTtcblxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbn1cbiIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTWV0cm9wb2xpcyc7XG4gICAgc3JjOiB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvZW90L01ldHJvcG9saXMtUmVndWxhci5lb3QnKTtcbiAgICBzcmM6IHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy9lb3QvTWV0cm9wb2xpcy1SZWd1bGFyLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvd29mZjIvTWV0cm9wb2xpcy1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy93b2ZmL01ldHJvcG9saXMtUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ01ldHJvcG9saXMnO1xuICAgIHNyYzogdXJsKCcvYXBwL2Fzc2V0cy9mb250cy9tZXRyb3BvbGlzL2VvdC9NZXRyb3BvbGlzLU1lZGl1bS5lb3QnKTtcbiAgICBzcmM6IHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy9lb3QvTWV0cm9wb2xpcy1NZWRpdW0uZW90JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy93b2ZmMi9NZXRyb3BvbGlzLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvd29mZi9NZXRyb3BvbGlzLU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ01ldHJvcG9saXMnO1xuICAgIHNyYzogdXJsKCcvYXBwL2Fzc2V0cy9mb250cy9tZXRyb3BvbGlzL2VvdC9NZXRyb3BvbGlzLVNlbWlCb2xkLmVvdCcpO1xuICAgIHNyYzogdXJsKCcvYXBwL2Fzc2V0cy9mb250cy9tZXRyb3BvbGlzL2VvdC9NZXRyb3BvbGlzLVNlbWlCb2xkLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvd29mZjIvTWV0cm9wb2xpcy1TZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvd29mZi9NZXRyb3BvbGlzLVNlbWlCb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTWV0cm9wb2xpcyc7XG4gICAgc3JjOiB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvZW90L01ldHJvcG9saXMtQm9sZC5lb3QnKTtcbiAgICBzcmM6IHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy9lb3QvTWV0cm9wb2xpcy1Cb2xkLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy9hcHAvYXNzZXRzL2ZvbnRzL21ldHJvcG9saXMvd29mZjIvTWV0cm9wb2xpcy1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnL2FwcC9hc3NldHMvZm9udHMvbWV0cm9wb2xpcy93b2ZmL01ldHJvcG9saXMtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuIiwiLmJhY2tncm91bmQtd2hpdGUge1xuICAgIEBpbmNsdWRlIHRoZW1lLXdoaXRlO1xufVxuXG4uYmFja2dyb3VuZC1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSB0aGVtZS1wcmltYXJ5O1xufVxuXG4uYmFja2dyb3VuZC1ncmV5IHtcbiAgICBAaW5jbHVkZSB0aGVtZS1ncmV5O1xufVxuXG4uYmFja2dyb3VuZC1ncmV5LW1pZCB7XG4gICAgQGluY2x1ZGUgdGhlbWUtZ3JleS1taWQ7XG59XG5cbi5iYWNrZ3JvdW5kLXNlY29uZGFyeSB7XG4gICAgQGluY2x1ZGUgdGhlbWUtc2Vjb25kYXJ5O1xufVxuXG4uYmFja2dyb3VuZC10dXJxdW9pc2Uge1xuICAgIEBpbmNsdWRlIHRoZW1lLXR1cnF1b2lzZTtcbn1cblxuLmJhY2tncm91bmQtYmx1ZSB7XG4gICAgQGluY2x1ZGUgdGhlbWUtYmx1ZTtcbn1cblxuLmJhY2tncm91bmQtdGVhbCB7XG4gICAgQGluY2x1ZGUgdGhlbWUtdGVhbDtcbn1cblxuLmJhY2tncm91bmQtYmxhY2sge1xuICAgIEBpbmNsdWRlIHRoZW1lLWJsYWNrO1xufVxuXG4uYmFja2dyb3VuZC1ncmFkaWVudCB7XG4gICAgQGluY2x1ZGUgdGhlbWUtZ3JhZGllbnQ7XG59XG4iLCIlc3RhdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyAvLyA0MHB4XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtOyAvLyA1MHB4XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN0YXRzKTtcbiAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBmb250LXNpemU6IDRyZW07IC8vIDY0cHhcbiAgICAgICAgbGluZS1oZWlnaHQ6IDVyZW07IC8vIDgwcHhcbiAgICB9XG59XG5cbiVzdGF0LXNtIHtcbiAgICBmb250LXNpemU6IDFyZW07IC8vIDE2cHhcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0cyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cblxuJWhlcm8tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogM3JlbTsgLy8gNDhweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjkzNzVyZW07IC8vIDYzcHhcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZm9udC1zaXplOiA1cmVtOyAvLyA4MHB4XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1LjVyZW07IC8vIDg4cHhcbiAgICB9XG59XG5cbiVoZXJvIHtcbiAgICBmb250LXNpemU6IDNyZW07IC8vIDQ4cHhcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogMy45Mzc1cmVtOyAvLyA2M3B4XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhlYWRpbmcpO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNC41cmVtOyAvLyA3MnB4XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1cmVtOyAvLyA4MHB4XG4gICAgfVxufVxuXG4laGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IC8vIDQwcHhcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogMy4xMjVyZW07IC8vIDUwcHhcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjVyZW07IC8vIDU2cHhcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMuOTM3NXJlbTsgLy8gNjNweFxuICAgIH1cbn1cblxuJXN1YmhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgLy8gMjhweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjE4NzVyZW07IC8vIDM1cHhcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyAvLyAzMnB4XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07IC8vIDQwcHhcbiAgICB9XG59XG5cbiVwYXJhZ3JhcGgtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyAvLyAyMHB4XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNXJlbTsgLy8gMjVweFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oZWFkaW5nKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgLy8gMjRweFxuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IC8vIDMwcHhcbiAgICB9XG59XG5cbiVwaWxsLWhlYWRpbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBnYXA6IDhweDtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgLy8gMTZweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtOyAvLyAyMHB4XG4gICAgY29sb3I6IHZhcigtLXBpbGwtaGVhZGluZy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGlsbC1oZWFkaW5nLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgcGFkZGluZzogM3B4IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyAvLyAyMHB4XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjVyZW07IC8vIDI1cHhcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgfVxufVxuXG4laW50cm9kdWN0aW9uIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgLy8gMjRweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgLy8gMzBweFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oZWFkaW5nKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBmb250LXNpemU6IDJyZW07IC8vIDMycHhcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbTsgLy8gNDBweFxuICAgIH1cbn1cblxuJWxlYWQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgLy8gMjBweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjVyZW07IC8vIDI1cHhcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cblxuJXNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG5cbiVidXR0b24tdGV4dCB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4lc3RhdC1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3RhdHMpO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG5cbiVibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKTtcbiAgICBsaW5lLWhlaWdodDogMS41NjI1cmVtOyAvLyAyNXB4XG4gICAgY29sb3I6IHZhcigtLWhlYWRpbmctY29sb3IpO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG5cbiAgICBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29uKTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tcXVvdGVzKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1xdW90ZS1pY29uLWNvbG9yKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IC8vIDI0cHhcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07IC8vIDI4cHhcbiAgICB9XG59XG5cbiVxdW90ZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgLy8gMThweFxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTsgLy8gMjJweFxuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1oci1jb2xvcik7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnN0YXQtc3R5bGUge1xuICAgIEBleHRlbmQgJXN0YXQ7XG59XG5cbnN1YiAuc3RhdC1zdHlsZSxcbnN1cCAuc3RhdC1zdHlsZSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uc3RhdC1zbS1zdHlsZSB7XG4gICAgQGV4dGVuZCAlc3RhdC1zbTtcbn1cblxuLnN0YXQtZGVzY3JpcHRpb24ge1xuICAgIEBleHRlbmQgJXN0YXQtZGVzY3JpcHRpb247XG59XG5cbi5oZXJvLWxhcmdlIHtcbiAgICBAZXh0ZW5kICVoZXJvLWxhcmdlO1xufVxuXG4uaGVybyB7XG4gICAgQGV4dGVuZCAlaGVybztcbn1cblxuLmhlYWRpbmcge1xuICAgIEBleHRlbmQgJWhlYWRpbmc7XG59XG5cbi5zdWJoZWFkaW5nIHtcbiAgICBAZXh0ZW5kICVzdWJoZWFkaW5nO1xufVxuXG4ucGFyYWdyYXBoLWhlYWRpbmcge1xuICAgIEBleHRlbmQgJXBhcmFncmFwaC1oZWFkaW5nO1xufVxuXG4ucGlsbC1oZWFkaW5nIHtcbiAgICBAZXh0ZW5kICVwaWxsLWhlYWRpbmc7XG59XG5cbi5pbnRyb2R1Y3Rpb24ge1xuICAgIEBleHRlbmQgJWludHJvZHVjdGlvbjtcbn1cblxuLmxlYWQge1xuICAgIEBleHRlbmQgJWxlYWQ7XG59XG5cbi5zbWFsbCB7XG4gICAgQGV4dGVuZCAlc21hbGw7XG59XG5cbmJsb2NrcXVvdGUge1xuICAgIEBleHRlbmQgJWJsb2NrcXVvdGU7XG59XG5cbnVsLmlubGluZS1saXN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmcteHMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgIH1cbn1cblxudWwubGlzdC1jb2xzLTIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgcm93LWdhcDogdmFyKC0tc3BhY2luZy14eHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBjb2x1bW4tZ2FwOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgIHJvdy1nYXA6IDA7XG4gICAgfVxufVxuXG4ucXVvdGUtdGl0bGUge1xuICAgIEBleHRlbmQgJXF1b3RlLXRpdGxlO1xufVxuXG4ucXVvdGUtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxufVxuIiwiJWZvY3VzLXByb3BzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDFweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xufVxuXG4lZm9jdXMtc3R5bGUge1xuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIEBleHRlbmQgJWZvY3VzLXByb3BzO1xuICAgIH1cbn1cblxuLyogQW5jaG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmEge1xuICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDRweDtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWxpbmstY29sb3IpO1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgICB9XG5cbiAgICBAZXh0ZW5kICVmb2N1cy1zdHlsZTtcbn1cblxuLyogQnV0dG9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJWJ1dHRvbi1wcmltYXJ5LWhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuJWJ1dHRvbi1kZWZhdWx0IHtcbiAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgIGdhcDogOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1jb2xvcik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnRuLWJvcmRlci1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWJ0bi1hZnRlci1jb2xvcik7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc20pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAtNHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29tb29uKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4tY29sb3IpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1idG4tYWZ0ZXItY29sb3IpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJ0bi1jb2xvcik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiVidXR0b24tbGluayB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMzJweCArIDhweCk7XG4gICAgbWluLWhlaWdodDogMzJweDtcbiAgICBjb2xvcjogdmFyKC0tYnRuLWxpbmstY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pLCB0ZXh0LWRlY29yYXRpb24tY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbiksIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3MgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IHVuZGVybGluZTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDZweDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1hcnJvdyk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29tb29uKTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1saW5rLWljb24tYmctY29sb3IpO1xuICAgICAgICBjb2xvcjogdmFyKC0tYnRuLWxpbmstaWNvbi1jb2xvcik7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tYnRuLWxpbmstY29sb3IpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgfVxufVxuXG4uYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcblxuICAgICYtLWRlZmF1bHQge1xuICAgICAgICBAZXh0ZW5kICVidXR0b24tZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5IHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLWRlZmF1bHQ7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1hcnJvdyk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1kb3dubG9hZCB7XG4gICAgICAgIEBleHRlbmQgJWJ1dHRvbi1kZWZhdWx0O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tZG93bmxvYWQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZXh0ZXJuYWwge1xuICAgICAgICBAZXh0ZW5kICVidXR0b24tZGVmYXVsdDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWV4dGVybmFsKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWxpbmsge1xuICAgICAgICBAZXh0ZW5kICVidXR0b24tbGluaztcbiAgICB9XG5cbiAgICAmLS1saW5rLWRvd25sb2FkIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLWxpbms7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1kb3dubG9hZCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1saW5rLWV4dGVybmFsIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLWxpbms7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1leHRlcm5hbCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1iYWNrIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLWRlZmF1bHQ7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1hcnJvdyk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsImlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxudGV4dGFyZWEsXG5zZWxlY3QsXG4uZm9ybS1jb250cm9sLFxuLmZvcm0tc2VsZWN0LFxuLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNtKTtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZm9ybS1pbnB1dC1iYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogdmFyKC0tZm9ybS1pbnB1dC1jb2xvcik7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14eHhzKSB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1mb3JtLWlucHV0LWNvbG9yKTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWZvY3VzLXN0eWxlO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbnRleHRhcmVhIHtcbiAgICAmLFxuICAgICYuZm9ybS1jb250cm9sIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMjRweDtcbiAgICB9XG59XG5cbnNlbGVjdCxcbi5mb3JtLXNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNVGtpSUdobGFXZG9kRDBpTVRFaUlIWnBaWGRDYjNnOUlqQWdNQ0F4T1NBeE1TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2dhV1E5SWxabFkzUnZjaUEySWlCa1BTSk5NUzQxSURGTU9TNDFJRGxNTVRjdU5TQXhJaUJ6ZEhKdmEyVTlJaU0zTmpjMk56WWlJSE4wY205clpTMTNhV1IwYUQwaU1pSWdjM1J5YjJ0bExXeHBibVZqWVhBOUluSnZkVzVrSWk4K0Nqd3ZjM1puUGdvPScpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwcHggY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmctbGcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5mb3JtLXNlbGVjdC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tY2hldnJvbik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29uKTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWZvcm0taW5wdXQtY29sb3IpO1xuICAgIH1cbn1cblxubGFiZWwge1xuICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgICAmLmNhcHRjaGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuXG50YWJsZSxcbi50YWJsZSB7XG4gICAgLS1icy10YWJsZS1iZzogdHJhbnNwYXJlbnQ7XG4gICAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgICAtLWJzLXRhYmxlLWhvdmVyLWJnOiB0cmFuc3BhcmVudDtcbiAgICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogdHJhbnNwYXJlbnQ7XG4gICAgLS1icy10YWJsZS1jb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgLS1icy10YWJsZS1ib3JkZXItY29sb3I6IHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XG4gICAgLS1icy1ib3JkZXItY29sb3I6IHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgdGhlYWQsIHRib2R5IHtcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkLCB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14eHMpIHZhcigtLXNwYWNpbmctc20pIHZhcigtLXNwYWNpbmcteHhzKSAwO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1oZWFkaW5nLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS10YWJsZS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50YWJsZS0tZXF1YWwtd2lkdGgge1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudGFibGUtLXZhbGlnbi1taWRkbGUge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRkLCB0aCB7XG4gICAgICAgICYudGFibGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRhYmxlLS1zY3JvbGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG5cbkBtaXhpbiB0YWJsZS1zdGFjay1zdHlsZXMge1xuICAgIGJvcmRlcjogMDtcblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDJweDtcbiAgICB9XG5cbiAgICB0ciB7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICB9XG5cbiAgICAuY2VsbC10aXRsZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgLnRhYmxlLS1zdGFjayB7XG4gICAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrLXN0eWxlcztcbiAgICB9XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC5rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGlmICRicmVha3BvaW50ICE9IG1kIHtcbiAgICAgICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICBAaWYgJGluZml4ICE9IFwiXCIge1xuICAgICAgICAgICAgICAgIC50YWJsZS0tc3RhY2sjeyRpbmZpeH0ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjay1zdHlsZXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuIiwiJHJvb3Q6IFwiLnNpdGVIZWFkZXJcIjtcblxuI3skcm9vdH0ge1xuICAgIGhlaWdodDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IHZhcigtLWhlYWRlci16LWluZGV4KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXktbWlkKTtcblxuICAgICZfX3NlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXRvcCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgI3skcm9vdH1fX3NlY3Rpb24taW5uZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItdG9wLWhlaWdodCk7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tbWFpbiB7XG4gICAgICAgICAgICAjeyRyb290fV9fc2VjdGlvbi1pbm5lciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItbWFpbi1oZWlnaHQpO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbCB7XG4gICAgICAgICYtLW1lbnUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAmLS1zY3JvbGxlZCB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgM3B4IDVweCByZ2JhKCMwMDAsIDAuMik7XG4gICAgfVxuXG4gICAgJl9fdXRpbGl0eS1uYXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgIH1cblxuICAgICZfX3V0aWxpdHktbGluayB7XG4gICAgICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX191dGlsaXR5LWRpdmlkZXIge1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgfVxuXG4gICAgJl9fdXRpbGl0eS1sYW5nIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5pY29uLWNoZXYtZG93biB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbW9vbik7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1jaGV2cm9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3V0aWxpdHktbGFuZy10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX191dGlsaXR5LWxhbmctaWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDE2cHggYmFzZSArIDRweFxuICAgIH1cbn1cbiIsIi5zaXRlSGVhZGVyLXNlYXJjaCB7XG4gICAgJl9fYnRuIHtcbiAgICAgICAgd2lkdGg6IHZhcigtLXNpdGUtaGVhZGVyLXRyaWdnZXItc2l6ZSk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc2l0ZS1oZWFkZXItdHJpZ2dlci1zaXplKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2J0bi0tdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgLmljb21vb24tLXNlYXJjaDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1jbG9zZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idG4tLXN1Ym1pdCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iYXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNpbmcteHMpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleS1taWQpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICAgIHotaW5kZXg6IHZhcigtLWhlYWRlci16LWluZGV4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1tYWluLWhlaWdodCkgKiAwLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwibWFpbiB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xufVxuXG4uc2tpcC1tYWluIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNjAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5lcnJvciwgLmVycm9yLW1lc3NhZ2UgIHtcbiAgICBjb2xvcjogdmFyKC0tZXJyb3ItbWVzc2FnZS1jb2xvcik7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLXNlY3Rpb24tcGFkZGluZyk7XG59XG4iLCIkcm9vdDogXCIuYmFubmVyXCI7XG5cbiN7JHJvb3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19kYXRlIHtcbiAgICAgICAgQGV4dGVuZCAlc21hbGw7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICB9XG5cbiAgICBwaWN0dXJlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19vdmVybGF5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tb3ZlcmxheSk7XG4gICAgfVxuXG4gICAgJi0tZGVmYXVsdCB7XG4gICAgICAgIHBpY3R1cmUsXG4gICAgICAgIHBpY3R1cmUgaW1nLFxuICAgICAgICB2aWRlbyxcbiAgICAgICAgLmJhbm5lcl9fbWVkaWEtLXZpZGVvLWVtYmVkIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICYuYmFubmVyX19zZWN0aW9uLS1uby1pbWFnZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyX19tZWRpYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAuYmFubmVyX19tZWRpYSBpbWcsXG4gICAgICAgICAgICB2aWRlbyxcbiAgICAgICAgICAgIC5iYW5uZXJfX21lZGlhLS12aWRlby1lbWJlZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyX19hcnRpY2xlLWltYWdlIHtcbiAgICAgICAgICAgIC5iYW5uZXJfX21lZGlhLFxuICAgICAgICAgICAgLmJhbm5lcl9fbWVkaWEgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXJfX2ltYWdlLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lcl9fbWVkaWEtLXBvc3RlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyX19tZWRpYS0tdmlkZW8tZW1iZWQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU2LjI1dnc7IC8vIDE2OjlcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTc3Ljc4dmg7IC8vIDE2OjksIGNvdmVycyB3aGVuIHRoZSBiYW5uZXIgaXMgdGFsbGVyIHRoYW4gaXQgaXMgd2lkZVxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlLXdyYXBwZXIge1xuICAgICAgICAmLS1ib3R0b20tcGFkZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1wYWRkaW5nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2dyYWRpZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHRvIGJvdHRvbSxcbiAgICAgICAgICAgIHZhcigtLWNvbG9yLWdyZXkpIDAlLFxuICAgICAgICAgICAgdmFyKC0tY29sb3ItZ3JleSkgY2FsYygxMDAlIC0gNDUwcHgpLFxuICAgICAgICAgICAgdHJhbnNwYXJlbnQgY2FsYygxMDAlIC0gMjI1cHgpLFxuICAgICAgICAgICAgdHJhbnNwYXJlbnQgMTAwJVxuICAgICAgICApO1xuICAgIH1cblxuICAgICYtLWhvbWUge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpICogMC44KTtcbiAgICAgICAgbWluLWhlaWdodDogNDUwcHg7XG5cbiAgICAgICAgcGljdHVyZSxcbiAgICAgICAgcGljdHVyZSBpbWcsXG4gICAgICAgIHZpZGVvLFxuICAgICAgICAuYmFubmVyX19tZWRpYS0tdmlkZW8tZW1iZWQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgdmlkZW8ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyX19tZWRpYS0tcG9zdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXJfX21lZGlhLS12aWRlby1lbWJlZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTYuMjV2dzsgLy8gMTY6OVxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNzcuNzh2aDsgLy8gMTY6OSwgY292ZXJzIHdoZW4gdGhlIGJhbm5lciBpcyB0YWxsZXIgdGhhbiBpdCBpcyB3aWRlXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lcl9fb3ZlcmxheSB7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwKSA0OS45NyUsIHJnYmEoMCwgMCwgMCwgMC43MCkgOTQuNTUlKSxcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNTApIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lcl9fY29udGVudCB7XG4gICAgICAgICAgICAtLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIC0taGVhZGluZy1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY2LjY2NyU7IC8vIDggb2YgMTIgY29sdW1uc1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHJvdy1nYXA6IDhweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5icmVhZGNydW1icyB7XG4gICAgJi5oaWRkZW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICB9XG59XG4iLCIkcm9vdDogXCIuYWNjb3JkaW9uXCI7XG5cbiN7JHJvb3R9IHtcbiAgICAtLWJzLWFjY29yZGlvbi1jb2xvcjogaW5oZXJpdDtcbiAgICAtLWJzLWFjY29yZGlvbi1idG4tY29sb3I6IGluaGVyaXQ7XG4gICAgLS1icy1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiBpbmhlcml0O1xuICAgIC0tYnMtYWNjb3JkaW9uLWFjdGl2ZS1iZzogdHJhbnNwYXJlbnQ7XG4gICAgLS1icy1hY2NvcmRpb24tYmc6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMCBzb2xpZCB2YXIoLS1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbik7XG5cbiAgICAgICAgI3skcm9vdH0tYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAmLS1pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjeyRyb290fS1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbSkgMTJweDtcblxuICAgICAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1hY2NvcmRpb24taWNvbi1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnBhcmFncmFwaC1oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0OHB4IC0gMTJweCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWNsb3NlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb21vb24pO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hY2NvcmRpb24taWNvbi1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hY2NvcmRpb24taWNvbi1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hY2NvcmRpb24taWNvbi1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY29yZGlvbi1pY29uLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFjY29yZGlvbi1pY29uLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hY2NvcmRpb24taWNvbi1iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY29yZGlvbi1pY29uLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFjY29yZGlvbi1pY29uLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYWNjb3JkaW9uLWljb24tYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWFjY29yZGlvbi1pY29uLWJhY2tncm91bmQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAbWl4aW4gbmF2LXRhYnMtZHJvcGRvd24tc3R5bGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1sZyk7XG5cbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGFiLWJvcmRlci1jb2xvcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10YWItY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nOiAxOHB4IDNyZW0gMThweCAxNnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWItYmctY29sb3IpO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5kcm9wZG93bi10b2dnbGUtbGFiZWwge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWljb21vb24pO1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1jaGV2cm9uKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFiLWJnLWNvbG9yLWFjdGl2ZSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRhYi1ib3JkZXItY29sb3ItYWN0aXZlKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10YWItY29sb3ItYWN0aXZlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgLS1icy1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICAgICAgLS1icy1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgICAgIC0tYnMtZHJvcGRvd24tbGluay1ob3Zlci1iZzogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtYmc6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICBwYWRkaW5nOiA0cHggMDtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAycmVtKTtcblxuICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA0cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbik7XG5cbiAgICAgICAgICAgICAgICAudGFiLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAudGFiLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWItYmctY29sb3ItYWN0aXZlKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRhYi1jb2xvci1hY3RpdmUpO1xuXG4gICAgICAgICAgICAgICAgICAgIC50YWItdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yLWFjdGl2ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYtdGFicy0tZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIG5hdi10YWJzLWRyb3Bkb3duLXN0eWxlcztcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLnNpdGVIZWFkZXJfX3V0aWxpdHktbGFuZyB7XG4gICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnRhYi1ib2R5LS1pbm5lciB7XG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgIH1cbn1cblxuLm5hdi10YWJzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10YWItYm9yZGVyLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiA4MHB4O1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBnYXA6IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWItYmctY29sb3IpO1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy14eHhzKSB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMXB4O1xuICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA0cHg7XG5cbiAgICAgICAgICAgIC50YWItdGV4dCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRhYi1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YWItYmctY29sb3ItYWN0aXZlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yLWFjdGl2ZSk7XG5cbiAgICAgICAgICAgICAgICAudGFiLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGFiLWNvbG9yLWFjdGl2ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS10YWItY29sb3IpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIHN0eWxpbmdcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIC0tYnMtZHJvcGRvd24temluZGV4OiA0OTk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgIEBpbmNsdWRlIG5hdi10YWJzLWRyb3Bkb3duLXN0eWxlcztcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KCYtLWRyb3Bkb3duKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICAtLWJzLWRyb3Bkb3duLWxpbmstaG92ZXItYmc6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIC0tYnMtZHJvcGRvd24tbGluay1hY3RpdmUtYmc6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBnYXA6IC41cmVtO1xuXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1NnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiJXBhZ2luYXRpb24tYnRuIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhZ2luYXRpb24tYnRuLWJnLWNvbG9yLCB2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tYnRuLWNvbG9yLCB2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXBhZ2luYXRpb24tYnRuLWJnLWNvbG9yLCB2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWJ0bi1iZy1jb2xvciwgdmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1wYWdpbmF0aW9uLWJ0bi1iZy1jb2xvciwgdmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29uKTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJi1wcmV2OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWFycm93KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIH1cblxuICAgICYtbmV4dDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1hcnJvdyk7XG4gICAgfVxuXG4gICAgJi1kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4lcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFnaW5hdGlvbi1mcmFjdGlvbi1iZy1jb2xvciwgdmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAgIGNvbG9yOiB2YXIoLS1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLCB2YXIoLS1jb2xvci13aGl0ZSkpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1jdXJyZW50LFxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi10b3RhbCxcbiAgICBzcGFuOmZpcnN0LWNoaWxkLFxuICAgIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWluLXdpZHRoOiAyY2g7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICYtYnRuIHtcbiAgICAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcbiAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgY29sb3I6IHZhcigtLXBhZ2luYXRpb24tYnRuLWNvbG9yLCB2YXIoLS1jb2xvci1ibGFjaykpO1xuXG4gICAgICAgICYtcHJldiB7XG4gICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0biwgJXBhZ2luYXRpb24tYnRuLXByZXY7XG4gICAgICAgIH1cblxuICAgICAgICAmLW5leHQge1xuICAgICAgICAgICAgQGV4dGVuZCAlcGFnaW5hdGlvbi1idG4sICVwYWdpbmF0aW9uLWJ0bi1uZXh0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWZyYWN0aW9uO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5taXhpdHVwLXBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG5cbiAgICAucGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cblxuICAgIC5taXhpdHVwLXBhZ2UtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuXG4gICAgICAgIC5taXhpdHVwLWNvbnRyb2w6bm90KC5taXhpdHVwLWNvbnRyb2wtcHJldik6bm90KC5taXhpdHVwLWNvbnRyb2wtbmV4dCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5taXhpdHVwLWNvbnRyb2wtcHJldiB7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5taXhpdHVwLWNvbnRyb2wtbmV4dCB7XG4gICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5taXhpdHVwLWNvbnRyb2wge1xuICAgICAgICAgICAgJi1wcmV2IHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0biwgJXBhZ2luYXRpb24tYnRuLXByZXY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtbmV4dCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlcGFnaW5hdGlvbi1idG4sICVwYWdpbmF0aW9uLWJ0bi1uZXh0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0bi1kaXNhYmxlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFNoYXJlZCBcIm5ld3Mgc3dpcGVyXCIgY2hyb21lIChoZWFkZXIvbmF2L3BhZ2luYXRpb24vc2xpZGUtc3RyZXRjaCksIHJldXNlZCBieSB0aGUgbm9kZS1saXN0XG4vLyBhbmQgY29udGVudC1saXN0IFwiU3dpcGVyXCIgc3R5bGVzLiBOb3QgdXNlZCBieSAubm9kZS1saXN0LS1wcmVzcy1yZWxlYXNlLXNsaWRlciwgd2hpY2gga2VlcHNcbi8vIGl0cyBvd24gY29weSBvZiB0aGlzIHRvIGF2b2lkIHRvdWNoaW5nIHRoZSBhbHJlYWR5LXNoaXBwZWQgbmV3cyBzd2lwZXIuXG4uc3dpcGVyLWNhcm91c2VsIHtcbiAgICAuc3dpcGVyIHtcbiAgICAgICAgLy8gTXVzdCBzdGF5IG9uIC5zd2lwZXIgKHRoZSBzdGF0aWMgY29udGFpbmVyKSwgbm90IC5zd2lwZXItd3JhcHBlciAodGhlIGVsZW1lbnRcbiAgICAgICAgLy8gU3dpcGVyIHRyYW5zZm9ybXMgdG8gc2xpZGUgYmV0d2VlbiBzbGlkZXMpIC0gY2xpcHBpbmcgdGhlIHRyYW5zZm9ybWVkIGVsZW1lbnRcbiAgICAgICAgLy8gaGlkZXMgZXZlcnkgc2xpZGUgcGFzdCB0aGUgZmlyc3QsIHNpbmNlIHRoZXkncmUgb3V0c2lkZSBpdHMgb3duIGJveCBlaXRoZXIgd2F5LlxuICAgICAgICAvLyBvdmVyZmxvdy14IGhpZGVzIHRoYXQgaG9yaXpvbnRhbCBzbGlkZTsgb3ZlcmZsb3cteSBzdGF5cyB2aXNpYmxlIHNvIGhvdmVyXG4gICAgICAgIC8vIHNoYWRvd3Mgb24gY2FyZHMgYXJlbid0IGNsaXBwZWQgKGJveC1zaGFkb3cgaXNuJ3Qgc2Nyb2xsYWJsZSBjb250ZW50LCBzbyB0aGlzXG4gICAgICAgIC8vIGRvZXNuJ3QgcHJvZHVjZSBhIHNjcm9sbGJhcikuXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICB9XG5cbiAgICAmX19oZWFkZXItY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKTtcblxuICAgICAgICAucGFyYWdyYXBoLWhlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGdhcDogMTJweDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAgIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0bjtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1hcnJvdyk7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbik7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2OjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgICAgICAgQGV4dGVuZCAlcGFnaW5hdGlvbi1mcmFjdGlvbjtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiJHJvb3Q6IFwiLmNhcmRcIjtcblxuI3skcm9vdH0ge1xuICAgIC8vIFRoZSB3aG9sZSBjYXJkIGlzIG9uZSBsaW5rLCBidXQgYSBmb2N1cyByaW5nIGFyb3VuZCB0aGUgZW50aXJlIGNhcmQgcmVhZHMgYXNcbiAgICAvLyBcImV2ZXJ5dGhpbmcgaXMgaW50ZXJhY3RpdmVcIiAtIGRyYXcgaXQgYXJvdW5kIHRoZSB2aXNpYmxlIGJ1dHRvbiBhZmZvcmRhbmNlIGluc3RlYWQuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1idG4tY29sb3IpO1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWltZyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcygrICN7JHJvb3R9LWJvZHkucGFuZWwpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtYm9keSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICN7JHJvb3R9LWltZyArICN7JHJvb3R9LWJvZHkucGFuZWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgfVxufVxuXG4jeyRyb290fS0tdmVydGljYWwge1xuICAgICN7JHJvb3R9LWJvZHkge1xuICAgICAgICAmLnBhbmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXBhZGRpbmctc20pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jeyRyb290fS0taG9yaXpvbnRhbCB7XG4gICAgI3skcm9vdH0tYm9keSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2ZnIgMWZyIDVmcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAgICAgI3skcm9vdH0taW1nIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoKyAjeyRyb290fS1ib2R5LnBhbmVsKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3skcm9vdH0tYm9keSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgI3skcm9vdH0taW1nICsgI3skcm9vdH0tYm9keS5wYW5lbCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcygjeyRyb290fS1ib2R5LnBhbmVsKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDZmciA2ZnI7XG5cbiAgICAgICAgICAgICN7JHJvb3R9LWJvZHkge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiN7JHJvb3R9LS1vZmZzZXQtaW1hZ2Uge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnI7XG4gICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuXG4gICAgICAgICAgICAjeyRyb290fS1ib2R5IHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKCN7JHJvb3R9LWJvZHkucGFuZWwpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDRmciA4ZnI7XG4gICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiN7JHJvb3R9LS1mbGlwcGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1ZnIgMWZyIDZmcjtcblxuICAgICAgICAgICAgI3skcm9vdH0taW1nIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3skcm9vdH0tYm9keSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcygjeyRyb290fS1ib2R5LnBhbmVsKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2ZnIgNmZyO1xuXG4gICAgICAgICAgICAgICAgI3skcm9vdH0taW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAjeyRyb290fS1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI3skcm9vdH0tYm9keS5wYW5lbCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmI3skcm9vdH0tLW9mZnNldC1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICAgICAgICAgICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG5cbiAgICAgICAgICAgICAgICAjeyRyb290fS1pbWcge1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aGFzKCN7JHJvb3R9LWJvZHkucGFuZWwpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogOGZyIDRmcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBbY2xhc3MqPVwiY29sXCJdOmhhcyg+ICN7JHJvb3R9KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jeyRyb290fS1ib2R5LnBhbmVsIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1wYWRkaW5nLWxnKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1wYWRkaW5nLXNtKTtcbiAgICB9XG59XG5cbiN7JHJvb3R9LWltZzpoYXMoKyAjeyRyb290fS1ib2R5LnBhbmVsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3skcm9vdH0uc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMzBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JleSk7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICBsaW5lLWNsYW1wOiAzO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbn1cbiIsIi5wYW5lbCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1wYWRkaW5nLW1kKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICBAaW5jbHVkZSB0aGVtZS1ncmV5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXBhZGRpbmctc20pO1xuICAgIH1cblxuICAgICYuYmFja2dyb3VuZC1wcmltYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWUtcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLmJhY2tncm91bmQtZ3JleSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lLWdyZXk7XG4gICAgfVxuXG4gICAgJi5iYWNrZ3JvdW5kLXdoaXRlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWUtd2hpdGU7XG4gICAgfVxuXG4gICAgJi5iYWNrZ3JvdW5kLWdyYWRpZW50IHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWUtZ3JhZGllbnQ7XG4gICAgfVxuXG4gICAgJi5iYWNrZ3JvdW5kLXRlYWwge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZS10ZWFsO1xuICAgIH1cblxuICAgICYuYmFja2dyb3VuZC10dXJxdW9pc2Uge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZS10dXJxdW9pc2U7XG4gICAgfVxuXG4gICAgLnJpY2hUZXh0Omxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyguc3BhY2VyLS1ncm93KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgICAgICA+KiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBIHBhbmVsIG5lc3RlZCBpbnNpZGUgYSBjb2xvdXJlZCBzZWN0aW9uIG11c3Qgc3RheSB3aGl0ZSBmb3IgY29udHJhc3QsXG4vLyBldmVuIHdoZW4gdGhlIHBhbmVsIGl0c2VsZiBhbHNvIGNhcnJpZXMgaXRzIG93biBiYWNrZ3JvdW5kLVggbW9kaWZpZXIgYWJvdmUuXG4uYmFja2dyb3VuZC1wcmltYXJ5LFxuLmJhY2tncm91bmQtZ3JhZGllbnQge1xuICAgIC5wYW5lbCB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lLXdoaXRlO1xuICAgIH1cbn1cblxuLmJhY2tncm91bmQtZ3JleSB7XG4gICAgLnBhbmVsOm5vdCguYmFja2dyb3VuZC1wcmltYXJ5LCAuYmFja2dyb3VuZC13aGl0ZSwgLmJhY2tncm91bmQtZ3JhZGllbnQsIC5iYWNrZ3JvdW5kLXRlYWwsIC5iYWNrZ3JvdW5kLXR1cnF1b2lzZSkge1xuICAgICAgICBAaW5jbHVkZSB0aGVtZS13aGl0ZTtcbiAgICB9XG59XG5cbi8vIEdyb3dzIGJ5IGRlZmF1bHRcbio6aGFzKD4ucGFuZWwpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4iLCIucmVsYXRlZC1wYWdlcyB7XG4gICAgLnBhcmFncmFwaC1oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgfVxuXG4gICAgLmNhcmQucmVsYXRlZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgJi5wYW5lbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC1hcnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbik7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWFycm93KTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaWNvbW9vbik7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciAuY2FyZC1hcnJvdyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBnYXA6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDNuKzEpIC5jYXJkLWJvZHkucGFuZWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRoZW1lLXR1cnF1b2lzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgzbisyKSAuY2FyZC1ib2R5LnBhbmVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0aGVtZS10ZWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDNuKSAuY2FyZC1ib2R5LnBhbmVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0aGVtZS1ibHVlO1xuICAgICAgICAgICAgICAgIC0tY29sb3ItaGVhZGluZzogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNpdGUtcG9wdXAge1xuICAgIC5idG4tY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnQtaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiA0cmVtIDRyZW0gM3JlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIG1heC13aWR0aDogY2xhbXAoMzAwcHgsIGNhbGMoMTAwdncgLSAzMHB4KSwgOTAwcHgpO1xuICAgIH1cbn1cbiIsImZvb3RlciB7XG4gICAgcGFkZGluZzogM3JlbSAwO1xuXG4gICAgLmZvb3Rlci1tYWluX19sb2dvIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxODZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDJweDtcbiAgICB9XG5cbiAgICAucmVnaXN0ZXJlZC10ZXh0IHtcbiAgICAgICAgZ2FwOiA0cHg7XG4gICAgfVxuXG4gICAgLm5hdiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgfVxuXG4gICAgLnNvY2lhbC1saW5rcyB7XG4gICAgICAgIGdhcDogMThweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29tb29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi52aWRlby1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICB2aWRlbyxcbiAgICBpZnJhbWUsXG4gICAgLnJhdGlvIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGxpbmVhcjtcblxuICAgICAgICBpbWcsXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDk2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJHJvb3Q6IFwiLmNoYXJ0LWJsb2NrXCI7XG5cbiN7JHJvb3R9IHtcbiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG5cbiAgICAmX19jYW52YXMtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgfVxuXG4gICAgJl9fY2FudmFzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJl9fZmVhdHVyZWQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgIG1hcmdpbjogMS41cmVtIDA7XG4gICAgfVxuXG4gICAgJl9fZmVhdHVyZWQtbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX2tleSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgICZfX2tleS1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cblxuICAgICZfX2tleS1jb2xvciB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgfVxuXG4gICAgJl9fYmFycyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbHVtbi1nYXA6IDFyZW07XG4gICAgICAgIHJvdy1nYXA6IDhweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgICZfX2Jhci1yb3cge1xuICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICB9XG5cbiAgICAmX19iYXItdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICZfX2Jhci10cmFjayB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICB9XG5cbiAgICAmX19iYXItZmlsbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNoYXJ0LWJhci1tYWluKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoYXJ0LWJhci1tYWluLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG5cbiAgICAgICAgJi0tbmVnYXRpdmUge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmlkaXJlY3Rpb25hbCBsYXlvdXQgdXNlZCB3aGVuIGF0IGxlYXN0IG9uZSB2YWx1ZSBpcyBuZWdhdGl2ZTogZmlsbHMgYXJlXG4gICAgLy8gcG9zaXRpb25lZCBhYnNvbHV0ZWx5IG9uIGVpdGhlciBzaWRlIG9mIHRoZSB0cmFjaydzIGNlbnRlciwgaW5zdGVhZCBvZlxuICAgIC8vIGFsd2F5cyBncm93aW5nIGZyb20gdGhlIGxlZnQgZWRnZSBhY3Jvc3MgdGhlIGZ1bGwgdHJhY2sgd2lkdGguXG4gICAgJi0tZGl2ZXJnaW5nIHtcbiAgICAgICAgI3skcm9vdH1fX2Jhci1maWxsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIC8vIG1pbi13aWR0aDogbWF4LWNvbnRlbnQgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGJhc2UgcnVsZSBhYm92ZSwgc28gYVxuICAgICAgICAgICAgLy8gc2hvcnQgYmFyIHN0aWxsIGdyb3dzIGVub3VnaCB0byBmaXQgaXRzIGxhYmVsIC0gYXdheSBmcm9tIHRoZVxuICAgICAgICAgICAgLy8gemVyby1saW5lIHNpbmNlIG9ubHkgdGhlIG5lYXIgZWRnZSAobGVmdCBvciByaWdodCkgaXMgYW5jaG9yZWQuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLXZpc2libGUgI3skcm9vdH1fX2Jhci1maWxsIHtcbiAgICAgICAgYW5pbWF0aW9uOiBjaGFydC1iYXItZ3JvdyAxLjZzIGN1YmljLWJlemllcigwLjEsIDAuOSwgMC4yLCAxKSBib3RoO1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWJhci1kZWxheSwgMHMpO1xuICAgIH1cblxuICAgICZfX2Jhci12YWx1ZSB7XG4gICAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNoYXJ0LWJhci1ncm93IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgI3skcm9vdH0uaXMtdmlzaWJsZSAjeyRyb290fV9fYmFyLWZpbGwge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxufVxuIiwiLnNlY3Rpb24tLWRvdWJsZS1jb2x1bW4tcGFkZGluZyAucm93IHtcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xufVxuIiwiLmZpbHRlciB7XG4gICAgJl9fZm9ybSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20pO1xuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgLS1icy1ndXR0ZXIteDogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgICAgICAgICAtLWJzLWd1dHRlci15OiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2dyaWQge1xuICAgICAgICAtLWJzLWd1dHRlci14OiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICAgICAgLS1icy1ndXR0ZXIteTogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNhcmQtLWhvcml6b250YWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5taXhpdHVwLXBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXNtKTtcbn1cblxuLmNhcmQucHJlc3MtcmVsZWFzZS1sYW5kaW5nLFxuLmNhcmQucHJlc3MtcmVsZWFzZS1zdW1tYXJ5IHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAuY2FyZC1pbWcge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keS5wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXBhZGRpbmctbWQpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXBhZGRpbmctc20pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoKyAuY2FyZC1pbWcpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWJvZHkucGFuZWwgKyAuY2FyZC1pbWcge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgfVxuXG4gICAgLmNhcmQtZGF0ZSB7XG4gICAgICAgIEBleHRlbmQgJXNtYWxsO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICB9XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20pO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAuY2FyZC1pbWcgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLS1saW5rLFxuICAgICAgICAuYnV0dG9uLS1saW5rLWRvd25sb2FkLFxuICAgICAgICAuYnV0dG9uLS1saW5rLWV4dGVybmFsIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tYnRuLWxpbmstY29sb3IpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZC5wcmVzcy1yZWxlYXNlLWxhbmRpbmctdmVydGljYWwge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIC5jYXJkLWltZyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtZGF0ZSB7XG4gICAgICAgIEBleHRlbmQgJXNtYWxsO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICB9XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctc20pO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0ZnIgMWZyIDdmcjtcblxuICAgICAgICAuY2FyZC1pbWcgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMyAvIDI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6aGFzKC5jYXJkLWJvZHkucGFuZWwpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5jYXJkLWltZyBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24tLWxpbmssXG4gICAgICAgIC5idXR0b24tLWxpbmstZG93bmxvYWQsXG4gICAgICAgIC5idXR0b24tLWxpbmstZXh0ZXJuYWwge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1idG4tbGluay1jb2xvcik7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWx0ZXJfX2dyaWQgLmNhcmQucHJlc3MtcmVsZWFzZS1sYW5kaW5nLXZlcnRpY2FsIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi5ub2RlLWxpc3RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnKTtcbn1cblxuLm5vZGUtbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbGcpIHZhcigtLXNwYWNpbmctc20pIDtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuXG4gICAgJi0tdHdvLWNvbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1mb3VyLWNvbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAuY2FyZC1pbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMyAvIDI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoKyAuY2FyZC1ib2R5LnBhbmVsKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgJi5wYW5lbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtcGFkZGluZy1zbSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC1pbWcgKyAuY2FyZC1ib2R5LnBhbmVsIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWRhdGUge1xuICAgICAgICAgICAgQGV4dGVuZCAlc21hbGw7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmNhcmQtaW1nIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbi0tbGluayxcbiAgICAgICAgICAgIC5idXR0b24tLWxpbmstZG93bmxvYWQsXG4gICAgICAgICAgICAuYnV0dG9uLS1saW5rLWV4dGVybmFsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWJ0bi1saW5rLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ub2RlLWxpc3QtLXByZXNzLXJlbGVhc2Utc2xpZGVyIHtcbiAgICAuc3dpcGVyIHtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLmNhcmQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIH1cblxuICAgICZfX2hlYWRlci1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctc20pO1xuXG4gICAgICAgIC5wYXJhZ3JhcGgtaGVhZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgZ2FwOiAxMnB4O1xuICAgIH1cblxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICAgIEBleHRlbmQgJXBhZ2luYXRpb24tYnRuO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDQwcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWFycm93KTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29uKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItYnV0dG9uLXByZXY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWZyYWN0aW9uO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5ub2RlLWxpc3QtLXN3aXBlciAuY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDE7XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICB9XG59XG4iLCIkcm9vdDogJy5iaW9ncmFwaGllcyc7XG5cbiN7JHJvb3R9IHtcbiAgICAtLWJpb2dzLWltZy1wYWRkaW5nLXRvcDogMzBweDtcbiAgICAtLWJpb2dzLWNvbGxhcHNlLXBhZGRpbmcteTogdmFyKC0tc3BhY2luZy1sZyk7XG4gICAgLS1iaW9ncy1pY29uLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIC0tYmlvZ3MtaWNvbi1iZzogdHJhbnNwYXJlbnQ7XG4gICAgLS1iaW9ncy1pY29uLWJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgICAtLWJpb2dzLWljb24tYm9yZGVyLWNvbG9yLWNoYWlyOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuXG4gICAgJl9fY29sIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAzMHB4O1xuICAgIH1cblxuICAgICZfX2NvbW1pdHRlZXMge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAxMHB4O1xuXG4gICAgICAgICYtLWtleSB7XG4gICAgICAgICAgICBnYXA6IDMwcHg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb21taXR0ZWUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWljb24pO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iaW9ncy1pY29uLWJnKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1iaW9ncy1pY29uLWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJpb2dzLWljb24tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNoYWlyIHtcbiAgICAgICAgICAgICN7JHJvb3R9X19jb21taXR0ZWUtaWNvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmlvZ3MtaWNvbi1iZy1jaGFpcik7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJpb2dzLWljb24tY29sb3ItY2hhaXIpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYmlvZ3MtaWNvbi1ib3JkZXItY29sb3ItY2hhaXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29tbWl0dGVlLW5hbWUge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMyAvIDI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICB9XG5cbiAgICAmX19tZW1iZXIge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgI3skcm9vdH0ge1xuICAgICAgICAgICAgJl9faW5mbyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICN7JHJvb3R9X19pbWFnZSBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICN7JHJvb3R9X19idXR0b246OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICAjeyRyb290fSB7XG4gICAgICAgICAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tY2xvc2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLWxpbms7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLXBsdXMpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWNvbGxhcHNlIHtcbiAgICAgICAgI3skcm9vdH0ge1xuICAgICAgICAgICAgJl9fb3ZlcmxheSB7XG4gICAgICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZyk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDM0cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAjeyRyb290fV9fcG9zaXRpb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9kYWwtLWJpb2dzIHtcbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDY0cHg7XG4gICAgICAgIHJpZ2h0OiA2NHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbik7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICB0b3A6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgICAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwge1xuICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2NHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICN7JHJvb3R9X19pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICN7JHJvb3R9X19wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAubW9kYWwge1xuICAgICAgICAgICAgJi1kaWFsb2cge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2xhbXAoMzAwcHgsIGNhbGMoMTAwdncgLSAzMHB4KSwgMTI5NnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRyb290OiAnLmhhbWJ1cmdlci1tZW51JztcbiRtZW51LWluc2V0OiAxcmVtO1xuJG1lbnUtaXRlbS1oZWlnaHQ6IDUwcHg7XG5cbiN7JHJvb3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItbWFpbi1oZWlnaHQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgICAgICAvLyBUaGUgaGFtYnVyZ2VycyBwYWNrYWdlIGRlZmF1bHRzIHRoZXNlIGJhcnMgdG8gd2hpdGUsIGludmlzaWJsZSBhZ2FpbnN0XG4gICAgICAgIC8vIHRoaXMgaGVhZGVyJ3Mgd2hpdGUgYmFja2dyb3VuZC5cbiAgICAgICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAgICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgICAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwZHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS1oZWFkZXItei1pbmRleCk7XG5cbiAgICAgICAgJi13cmFwcGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGV2ZWwge1xuICAgICAgICAmLS0xIHtcbiAgICAgICAgICAgID4gI3skcm9vdH1fX2l0ZW0ge1xuICAgICAgICAgICAgICAgID4gI3skcm9vdH1fX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LWluc2V0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cbiAgICAgICAgICAgICN7JHJvb3R9X19saW5rIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LWluc2V0ICogMjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICN7JHJvb3R9X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbWVudS1pbnNldCAqIDM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAjeyRyb290fV9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LWluc2V0ICogNDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICYtLXNlY3Rpb24sXG4gICAgICAgICYtLWN1cnJlbnQge1xuICAgICAgICAgICAgPiAjeyRyb290fV9fbGluayB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zdWJtZW51LWFjdGl2ZSB7XG4gICAgICAgICAgICA+ICN7JHJvb3R9X19idXR0b24ge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBoZWlnaHQ6ICRtZW51LWl0ZW0taGVpZ2h0O1xuICAgICAgICBsaW5lLWhlaWdodDogJG1lbnUtaXRlbS1oZWlnaHQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJG1lbnUtaW5zZXQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHdpZHRoOiAkbWVudS1pdGVtLWhlaWdodDtcbiAgICAgICAgaGVpZ2h0OiAkbWVudS1pdGVtLWhlaWdodDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29tb29uKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pIGVhc2UtaW4tb3V0LCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogdmFyKC0taWNvbi1jbG9zZSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3V0aWxpdHkge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmX191dGlsaXR5LW5hdiB7XG4gICAgICAgID4gI3skcm9vdH1fX2l0ZW0gPiAjeyRyb290fV9fbGluayB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlYXJjaC10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICAgICAgaGVpZ2h0OiAkbWVudS1pdGVtLWhlaWdodDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRtZW51LWl0ZW0taGVpZ2h0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LWluc2V0O1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCBcImhhbWJ1cmdlci1tZW51XCI7XG5cbiRyb290OiAnLm1lZ2EtbWVudSc7XG5cbiRtZWdhLW1lbnUtdGl0bGUtb2Zmc2V0OiA0LjkzNzVyZW07XG5cbiN7JHJvb3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmhhbWJ1cmdlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICZfX2xldmVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgID4gbGkgPiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGV2ZWwtLTIsXG4gICAgJl9fbGV2ZWwtLTMge1xuICAgICAgICBwYWRkaW5nLXRvcDogJG1lZ2EtbWVudS10aXRsZS1vZmZzZXQ7XG4gICAgfVxuXG4gICAgJl9fbGV2ZWwtLTIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgICYtLXNlY3Rpb24sXG4gICAgICAgICYtLWN1cnJlbnQsXG4gICAgICAgICYtLXN1Ym1lbnUtYWN0aXZlIHtcbiAgICAgICAgICAgID4gI3skcm9vdH1fX2xpbms6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXN1Ym1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLS10aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLXRleHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogcGFkZGluZy1sZWZ0IHZhcigtLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tYnRuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYmFzZSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41NjI1cmVtOyAvLyAyNXB4XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgLy8gMjRweFxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgLy8gMzBweFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGl2aWRlciB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXktbWlkKTtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLXNtKSAwO1xuICAgIH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmcteHh4cyk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zaXRlLWhlYWRlci10cmlnZ2VyLXNpemUpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXNpdGUtaGVhZGVyLXRyaWdnZXItc2l6ZSk7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3VibWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLWxnKSAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgLy8gc2l6aW5nIGFuZCBwYWRkaW5nIGhhbmRsZWQgYnkgQm9vdHN0cmFwIC5jb250YWluZXIgY2xhc3Mgb24gdGhlIGVsZW1lbnRcbiAgICAgICAgfVxuXG4gICAgICAgICYtd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xuICAgICAgICAgICAgZ2FwOiA0cmVtO1xuXG4gICAgICAgICAgICAjeyRyb290fV9fY29sdW1uLS1pbmZvIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjeyRyb290fV9fbGV2ZWwtLTIsXG4gICAgICAgICAgICAjeyRyb290fV9fbGV2ZWwtLTMsXG4gICAgICAgICAgICAjeyRyb290fV9fbGV2ZWwtLTQge1xuICAgICAgICAgICAgICAgICN7JHJvb3R9X19saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoI3skcm9vdH1fX2xpbmstLXRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1iYXNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU2MjVyZW07IC8vIDI1cHhcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oZWFkaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICN7JHJvb3R9X19pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgJi0tc2VjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgJi0tY3VycmVudCxcbiAgICAgICAgICAgICAgICAgICAgJi0tc3VibWVudS1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgI3skcm9vdH1fX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICN7JHJvb3R9X19sZXZlbC0tMixcbiAgICAgICAgICAgICN7JHJvb3R9X19sZXZlbC0tMyxcbiAgICAgICAgICAgICN7JHJvb3R9X19sZXZlbC0tNCB7XG4gICAgICAgICAgICAgICAgLy8gRGlyZWN0IGxpbmsgb2YgYW4gaXRlbSB3aXRoIGNoaWxkcmVuLCBidXR0b24gb3IgYW5jaG9yLlxuICAgICAgICAgICAgICAgICN7JHJvb3R9X19pdGVtLS1zdWJtZW51ID4gI3skcm9vdH1fX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLWFycm93KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29tb29uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHZhcigtLWljb24tYXJyb3cpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVG91Y2gtdGFwIGZhbGxiYWNrIGZvciBhbmNob3ItcmVuZGVyZWQgaXRlbXMsIGdhdGVkIG9uIHRvdWNoIGRldGVjdGlvbiBvbmx5LlxuICAgICYtLXN1Ym1lbnUtYnRuLXZpc2libGUge1xuICAgICAgICAjeyRyb290fSB7XG4gICAgICAgICAgICAmX19zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAmLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGltcG9ydCBcImhvcml6b250YWxcIjtcbiAgICBAaW1wb3J0IFwiaGFtYnVyZ2VyXCI7XG59XG4iLCImLS1ob3Jpem9udGFsIHtcbiAgICAjeyRyb290fSB7XG4gICAgICAgICZfX2xldmVsIHtcbiAgICAgICAgICAgICYtLTEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmctbGcpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiYtLWhhbWJ1cmdlciB7XG4gICAgI3skcm9vdH0ge1xuICAgICAgICAmX19sZXZlbCB7XG4gICAgICAgICAgICAmLS0xIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N1Ym1lbnUge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmRvY3VtZW50cyB7XG4gICAgLmxpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIC5kb2MtbGFiZWwge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGhlaWdodCB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKSwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmRvYy1sYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZG9jcyB7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG5cbiAgICAgICAgLmRvY3VtZW50c19fY29sIHtcbiAgICAgICAgICAgICYtLXRpdGxlLWRhdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1kb2N1bWVudCxcbiAgICAgICAgICAgICYtLXByZXNlbnRhdGlvbixcbiAgICAgICAgICAgICYtLXdlYmNhc3QsXG4gICAgICAgICAgICAmLS1saW5rIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXNtYWxsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbW9iaWxlIHtcbiAgICAgICAgLnRhYmxlLS1zdGFjayB0ZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXN1bW1hcnkge1xuICAgICAgICAuZG9jcy1zdW1tYXJ5IHtcbiAgICAgICAgICAgICZfX2l0ZW0tZGF0ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eHhzKTtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVzbWFsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHh4cyk7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtbGlua3Mge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHh4cyk7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZG9jLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29tb29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmcteHh4cyk7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ldmVudC1jYWxlbmRhciB7XG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMWVtICsgMnB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ldmVudC1sYWJlbCB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tbGluay1jb2xvcik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihtZCwgbGcpIHtcbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikgeyB3aWR0aDogNDUlOyB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykgeyB3aWR0aDogMjUlOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1bW1hcnkge1xuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcblxuICAgICAgICAgICAgJi1kYXRlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJXNtYWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWxpbmtzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNwYWNlciB7XG4gICAgLS1zcGFjZXItc206IDE2cHg7XG4gICAgLS1zcGFjZXItbWQ6IDIwcHg7XG4gICAgLS1zcGFjZXItbGc6IDI0cHg7XG5cbiAgICAmLS1zbSB7XG4gICAgICAgaGVpZ2h0OiB2YXIoLS1zcGFjZXItc20pO1xuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgICBoZWlnaHQ6IHZhcigtLXNwYWNlci1tZCk7XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgIGhlaWdodDogdmFyKC0tc3BhY2VyLWxnKTtcbiAgICB9XG5cbiAgICAmLS1ncm93IHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIC0tc3BhY2VyLXNtOiAyMHB4O1xuICAgICAgICAtLXNwYWNlci1tZDogMjRweDtcbiAgICAgICAgLS1zcGFjZXItbGc6IDMycHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAtLXNwYWNlci1zbTogMjRweDtcbiAgICAgICAgLS1zcGFjZXItbWQ6IDMycHg7XG4gICAgICAgIC0tc3BhY2VyLWxnOiA0OHB4O1xuICAgIH1cbn1cblxuLnJvdyB7XG4gICAgJjpoYXMoLnNwYWNlci0tZ3Jvdykge1xuICAgICAgICA+ICoge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3RhdC1ibG9jayB7XG4gICAgJi0tZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLW1kKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1jb2xzLTIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1jb2xzLTMge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW5vLXBhbmVscyAmX19pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICYtLWNvbG91cmVkLXBhbmVscyAmX19pdGVtLnBhbmVsIHtcbiAgICAgICAgLy8gU2luZ2xlIGNvbHVtbiAobW9iaWxlKTogY3ljbGUganVzdCB0aGUgZmlyc3QgNCBjb2xvcnNcbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMSkgeyBAaW5jbHVkZSB0aGVtZS10dXJxdW9pc2U7IH1cbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMikgeyBAaW5jbHVkZSB0aGVtZS10ZWFsOyB9XG4gICAgICAgICY6bnRoLWNoaWxkKDRuKzMpIHsgQGluY2x1ZGUgdGhlbWUtYmx1ZTsgfVxuICAgICAgICAmOm50aC1jaGlsZCg0bikgeyBAaW5jbHVkZSB0aGVtZS1ncmV5OyB9XG5cbiAgICAgICAgLy8gMisgY29sdW1uczogdHVycXVvaXNlLCB0ZWFsLCBibHVlLCBncmV5LCBncmV5LCB0dXJxdW9pc2UsIHRlYWwsIGJsdWVcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoOG4rMSkgeyBAaW5jbHVkZSB0aGVtZS10dXJxdW9pc2U7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDhuKzIpIHsgQGluY2x1ZGUgdGhlbWUtdGVhbDsgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOG4rMykgeyBAaW5jbHVkZSB0aGVtZS1ibHVlOyB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg4bis0KSB7IEBpbmNsdWRlIHRoZW1lLWdyZXk7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDhuKzUpIHsgQGluY2x1ZGUgdGhlbWUtZ3JleTsgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOG4rNikgeyBAaW5jbHVkZSB0aGVtZS10dXJxdW9pc2U7IH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDhuKzcpIHsgQGluY2x1ZGUgdGhlbWUtdGVhbDsgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOG4pIHsgQGluY2x1ZGUgdGhlbWUtYmx1ZTsgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFja2dyb3VuZC1ncmV5IC5zdGF0LWJsb2NrLS1jb2xvdXJlZC1wYW5lbHMgLnN0YXQtYmxvY2tfX2l0ZW0ucGFuZWwge1xuICAgICY6bnRoLWNoaWxkKDRuKSB7IEBpbmNsdWRlIHRoZW1lLXdoaXRlOyB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICY6bnRoLWNoaWxkKDhuKzQpLFxuICAgICAgICAmOm50aC1jaGlsZCg4bis1KSB7IEBpbmNsdWRlIHRoZW1lLXdoaXRlOyB9XG4gICAgfVxufVxuIiwiJHJvb3Q6ICcuY29udGVudC1saXN0LS1kZWZhdWx0JztcblxuI3skcm9vdH0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMzJweDtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoNTAlIC0gMTZweCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgY2FsYygzMyUgLSAzMnB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWRpdmlkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNpbmctbWQpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXktbWlkKTtcblxuICAgICAgICAgICAgI3skcm9vdH1fX2l0ZW0tYm9keSA+IDpvbmx5LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gMjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhhcygrICN7JHJvb3R9X19pdGVtLWJvZHkucGFuZWwpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDAgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tc3F1YXJlIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1mbHVzaCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tbmF0dXJhbCB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtYm9keSB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICYucGFuZWwge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1wYWRkaW5nLXNtKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtc2Vjb25kYXJ5LFxuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYtc2Vjb25kYXJ5ICsgJi1saW5rIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvZHkgYTpub3QoJi10aXRsZS1saW5rKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi10aXRsZS1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSArICYtYm9keS5wYW5lbCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjeyRyb290fV9faXRlbTpoYXMoJl9faXRlbS10aXRsZS1saW5rKTpob3ZlciB7XG4gICAgICAgICN7JHJvb3R9X19pdGVtLWltYWdlIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbi0tbGluayxcbiAgICAgICAgLmJ1dHRvbi0tbGluay1kb3dubG9hZCxcbiAgICAgICAgLmJ1dHRvbi0tbGluay1leHRlcm5hbCB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWJ0bi1saW5rLWNvbG9yKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWNvbHMtMiAmX19pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoNTAlIC0gMTZweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1jb2xzLTMgJl9faXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBjYWxjKDMzLjMzMyUgLSAyMnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWNvbHMtNCAmX19pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMjUlIC0gMjRweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1jb2xzLTUgJl9faXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBjYWxjKDIwJSAtIDI2cHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJHJvb3Q6ICcuY29udGVudC1saXN0LS1zY3JvbGxpbmctY2FyZHMnO1xuXG4jeyRyb290fSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgZ2FwOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICB9XG5cbiAgICAmX19uYXYtYnRuIHtcbiAgICAgICAgQGV4dGVuZCAlcGFnaW5hdGlvbi1idG47XG5cbiAgICAgICAgJi0tcHJldiB7XG4gICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0bi1wcmV2O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tbmV4dCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0bi1uZXh0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVwYWdpbmF0aW9uLWJ0bi1kaXNhYmxlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RyYWNrIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAmLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgICAgICYucGFuZWwge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0OHB4IDc2cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1wYW5lbC1wYWRkaW5nLXNtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucGFuZWw6aGFzKCsgI3skcm9vdH1fX2l0ZW0taW1hZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCg0bisxKSAmLWJvZHkucGFuZWwgeyBAaW5jbHVkZSB0aGVtZS1ibHVlOyB9XG4gICAgICAgICY6bnRoLWNoaWxkKDRuKzIpICYtYm9keS5wYW5lbCB7IEBpbmNsdWRlIHRoZW1lLXRlYWw7IH1cbiAgICAgICAgJjpudGgtY2hpbGQoNG4rMykgJi1ib2R5LnBhbmVsIHsgQGluY2x1ZGUgdGhlbWUtdHVycXVvaXNlOyB9XG4gICAgICAgICY6bnRoLWNoaWxkKDRuKSAmLWJvZHkucGFuZWwgeyBAaW5jbHVkZSB0aGVtZS1ncmV5OyB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1zcXVhcmUge1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFja2dyb3VuZC1ncmV5ICYge1xuICAgICAgICAmX19pdGVtOm50aC1jaGlsZCg0bikgJl9faXRlbS1ib2R5LnBhbmVsIHsgQGluY2x1ZGUgdGhlbWUtd2hpdGU7IH1cbiAgICB9XG5cbiAgICAvLyBQYWdpbmF0ZWQgaG9yaXpvbnRhbCByZXZlYWwgKHNlZSBzY3JvbGxpbmctY2FyZHMuanMpIGlzIGRlc2t0b3Atb25seTsgYmVsb3cgbGcgdGhlXG4gICAgLy8gY2FyZHMgc3RhY2sgaW4gbm9ybWFsIGRvY3VtZW50IGZsb3cgaW5zdGVhZC5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTUwdnc7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAmX190cmFjayB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCA0MHZ3O1xuICAgICAgICAgICAgd2lkdGg6IDQwdnc7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY29udGVudC1saXN0LS1zd2lwZXIge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNmZyIDFmciA1ZnI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1zbSk7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXNxdWFyZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoKyAuY29udGVudC1saXN0LS1zd2lwZXJfX2l0ZW0tYm9keS5wYW5lbCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIDAgMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCkgMCAwIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtYm9keSB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgJi5wYW5lbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tcGFuZWwtcGFkZGluZy1zbSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaW1hZ2UgKyAmLWJvZHkucGFuZWwge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpIHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoLmNvbnRlbnQtbGlzdC0tc3dpcGVyX19pdGVtLWJvZHkucGFuZWwpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDZmciA2ZnI7XG5cbiAgICAgICAgICAgICAgICAuY29udGVudC1saXN0LS1zd2lwZXJfX2l0ZW0tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRyb290OiAnLnRpbWVsaW5lJztcblxuI3skcm9vdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2luZy1tZCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjaW5nLXhsKTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgODBweCAxZnI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDAgdmFyKC0tc3BhY2luZy14bCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eHhsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYXJrZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRpbWVsaW5lLWxpbmUtY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX195ZWFyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFkZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICAmX19kZXRhaWwge1xuICAgICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgJl9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgI3skcm9vdH1fX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3skcm9vdH1fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm1hc29ucnktZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB9XG5cbiAgICAmLS1jb2xzLTIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tY29scy0zIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWNvbHMtNCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjaW5nLW1kKTtcblxuICAgICAgICAmLS1mbGlwcGVkIHtcbiAgICAgICAgICAgIC5tYXNvbnJ5LWdyaWRfX2JvZHkge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFzb25yeS1ncmlkX192aWRlbyB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYXNvbnJ5LWdyaWRfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtbWQpO1xuICAgICAgICBvcmRlcjogMTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ZpZGVvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3JkZXI6IDI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgb3JkZXI6IDM7XG5cbiAgICAgICAgJi5wYW5lbCB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXBhbmVsLXBhZGRpbmctc20pO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tYXAtYmxvY2sge1xuICAgICZfX21hcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fa2V5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNpbmcteHMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICB9XG5cbiAgICAmX19waW4td3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFja2dyb3VuZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAubWFwLXBpbiB7XG4gICAgICAgIC0tbWFwLXBpbi1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHZhcigtLXRyYW5zaXRpb24pO1xuXG4gICAgICAgICZfX3RyaWdnZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICBpbWcsXG4gICAgICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuODUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiA4cHggc29saWQgdmFyKC0tbWFwLXBpbi1jb2xvcik7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBtYXAtcGluLXB1bHNlIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB2YXIoLS1pY29uLXBsdXMpO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1pY29tb29uKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYXAtcGluLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX190b29sdGlwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDZweCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYXAtcGluLWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgNnB4KTtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5tYXAtcGluX190b29sdGlwIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0taHViIC5tYXAtcGluX190cmlnZ2VyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWh1YiAubWFwLXBpbl9fdG9vbHRpcCB7XG4gICAgICAgICAgICByaWdodDogY2FsYygxMDAlICsgMTFweCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMTFweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgLm1hcC1waW5fX3Rvb2x0aXAge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYXAta2V5X19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cbi5tYXAtY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG5vbmU7XG4gICAgfVxuXG4gICAgJi0tbm8taW1hZ2Uge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXAtY2FyZF9fYm9keSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDQwcHggKyB2YXIoLS1zcGFjaW5nLXNtKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gMjtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JvZHkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JleSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2luZy1sZyk7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYyg0MHB4ICsgdmFyKC0tc3BhY2luZy1sZykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLXh4eHMpO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgICB9XG59XG5cbi5tb2RhbC1jb250ZW50LS1hbmltYXRlLWluIHtcbiAgICAubWFwLWNhcmRfX2ltYWdlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBtYXAtY2FyZC1pbWFnZS1pbiAwLjVzIGVhc2Utb3V0O1xuICAgIH1cblxuICAgIC5tYXAtY2FyZF9fYm9keSxcbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBtYXAtY2FyZC1ib2R5LWluIDAuNXMgZWFzZS1vdXQ7XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnRfX25hdiB7XG4gICAgICAgIGFuaW1hdGlvbjogbWFwLWNhcmQtbmF2LXNsaWRlLWluIDAuNXMgZWFzZS1vdXQsIG1hcC1jYXJkLW5hdi1mYWRlLWluIDFzIGVhc2Utb3V0O1xuICAgIH1cbn1cblxuLm1vZGFsLWNvbnRlbnQtLWFuaW1hdGUtb3V0IHtcbiAgICAubWFwLWNhcmRfX2ltYWdlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBtYXAtY2FyZC1pbWFnZS1vdXQgMC4zcyBlYXNlLWluIGZvcndhcmRzO1xuICAgIH1cblxuICAgIC5tYXAtY2FyZF9fYm9keSxcbiAgICAubW9kYWwtY29udGVudF9fbmF2LFxuICAgIC5idG4tY2xvc2Uge1xuICAgICAgICBhbmltYXRpb246IG1hcC1jYXJkLWJvZHktb3V0IDAuM3MgZWFzZS1pbiBmb3J3YXJkcztcbiAgICB9XG59XG5cbi5tb2RhbC0tbWFwIHtcbiAgICAmLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgQGV4dGVuZCAlcGFnaW5hdGlvbi1idG47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICAgICAgcmlnaHQ6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHZhcigtLXNwYWNpbmctc20pO1xuICAgICAgICAgICAgbGVmdDogdmFyKC0tc3BhY2luZy1zbSk7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlICsgdmFyKC0tc3BhY2luZy1sZykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoLm1hcC1jYXJkLS1uby1pbWFnZSkge1xuICAgICAgICAgICAgLm1vZGFsLWNvbnRlbnRfX25hdiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2YXIoLS1zcGFjaW5nLWxnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1lYXN1cmVzIGEgcGluJ3MgY2FyZCBhdCB0aGUgcmVhbCBjb250ZW50IHdpZHRoIHdpdGhvdXQgZXZlciBiZWluZyBzZWVuIC1cbiAgICAgICAgLy8gdmlzaWJpbGl0eTpoaWRkZW4gKG5vdCBkaXNwbGF5Om5vbmUpIGtlZXBzIGl0IGxheW91dC1wYXJ0aWNpcGF0aW5nIHNvXG4gICAgICAgIC8vIHNjcm9sbEhlaWdodCByZWFkcyBjb3JyZWN0bHkgKHNlZSBtYXAuanMpLlxuICAgICAgICAmX19tZWFzdXJlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb250ZW50LXNpemVkLCBsaWtlIC5tb2RhbC0tYmlvZ3MgLSBubyBmaXhlZCBoZWlnaHQuIFRoZSBkZXNrdG9wIGltYWdlL3RleHRcbiAgICAvLyBjb2x1bW5zIGluIC5tYXAtY2FyZCBzdGlsbCBzdHJldGNoIHRvIG1hdGNoIGVhY2ggb3RoZXIgdmlhIENTUyBHcmlkJ3Mgb3duXG4gICAgLy8gcm93LWhlaWdodCByZXNvbHV0aW9uLCBub3QgYnkgaW5oZXJpdGluZyBhIHBlcmNlbnRhZ2UgaGVpZ2h0IGZyb20gaGVyZS5cbiAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjbGFtcCgzMDBweCwgODV2dywgMTQwMHB4KTtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLXNtKSBhdXRvO1xuXG4gICAgICAgICY6aGFzKC5tYXAtY2FyZC0tbm8taW1hZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2xhbXAoMzAwcHgsIDQyLjV2dywgNzAwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1hcC1waW4tcHVsc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMC44NSk7XG4gICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICB9XG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xNSk7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuODUpO1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1hcC1jYXJkLWltYWdlLWluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1hcC1jYXJkLWJvZHktaW4ge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtYXAtY2FyZC1uYXYtc2xpZGUtaW4ge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtYXAtY2FyZC1uYXYtZmFkZS1pbiB7XG4gICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbWFwLWNhcmQtaW1hZ2Utb3V0IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1hcC1jYXJkLWJvZHktb3V0IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB9XG59XG4iLCIuc2l0ZW1hcCB7XG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICBsaSB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIH1cbn1cbiIsIi5hbmltYXRpb24ge1xuICAgICYtLWZhZGUtaW4ge1xuICAgICAgICAmOm5vdCgmLXJvdykge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtcm93IHtcbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1mYWRlLXVwIHtcbiAgICAgICAgJjpub3QoJi1yb3cpIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLXJvdyB7XG4gICAgICAgICAgICAucm93IHtcbiAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3R5bGVzaGVldC1wYWdlIHtcbiAgICAtLWRyb3Bkb3duLWNvbG9yLWJveC1zaXplOiAyMHB4O1xuICAgIC0tY29sb3ItYm94LXNpemU6IDE2MHB4O1xuICAgIC0tc3R5bGVzaGVldC10b29sYmFyLWhlaWdodDogNTZweDtcblxuICAgIC5jb2xvci1ib3gge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1jb2xvci1ib3gtc2l6ZSk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWNvbG9yLWJveC1zaXplKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Ryb3Bkb3duIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcblxuICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICAgJi10b2dnbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbG9yLWJveCB7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tZHJvcGRvd24tY29sb3ItYm94LXNpemUpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi1jb2xvci1ib3gtc2l6ZSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDEwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zdHlsZXNoZWV0LXRvb2xiYXItaGVpZ2h0KTtcblxuICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3R5bGVzaGVldC1wYWdlX19rZXkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5zdHlsZXNoZWV0LXBhZ2UtbGFiZWwsXG4gICAgICAgICAgICAuc3R5bGVzaGVldC1wYWdlLXNldHRpbmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdHlsZXNoZWV0LXBhZ2UtbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN0eWxlc2hlZXQtcGFnZV9fdmlld3BvcnQtc3dpdGNoZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDAuNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdHlsZXNoZWV0LXBhZ2VfX3ZpZXdwb3J0LWJ1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0eWxlc2hlZXQtcGFnZV9fdmlld3BvcnQtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzLCBjb2xvciAwLjE1cywgYm9yZGVyLWNvbG9yIDAuMTVzO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lmcmFtZS13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxYzFjMWU7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1zdHlsZXNoZWV0LXRvb2xiYXItaGVpZ2h0KSk7XG4gICAgfVxuXG4gICAgJl9faWZyYW1lLWRldmljZSB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSwgMCAyNHB4IDY0cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJl9faWZyYW1lLXByZXZpZXcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XG4gICAgfVxuXG4gICAgJl9fY29sb3JzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDMwcHg7XG5cbiAgICAgICAgJi0tYnJhbmQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGRpdjpoYXMoXG4gICAgICAgICsgLnNwYWNlci0tc20gK1xuICAgICAgICAucmljaFRleHQgK1xuICAgICAgICAuc3BhY2VyLS1tZCArXG4gICAgICAgIC5yaWNoVGV4dCArXG4gICAgICAgIC5zcGFjZXItLWxnXG4gICAgICApIHtcbiAgICAgICAgJiArIC5zcGFjZXItLXNtLFxuICAgICAgICAmICsgLnNwYWNlci0tc20gKyAucmljaFRleHQgKyAuc3BhY2VyLS1tZCxcbiAgICAgICAgJiArIC5zcGFjZXItLXNtICsgLnJpY2hUZXh0ICsgLnNwYWNlci0tbWQgKyAucmljaFRleHQgKyAuc3BhY2VyLS1sZ1xuICAgICAgICAge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHZhcigtLWJvcmRlci1jb2xvcikgMCwgdmFyKC0tYm9yZGVyLWNvbG9yKSAxMHB4LCB0cmFuc3BhcmVudCAxMHB4LCB0cmFuc3BhcmVudCAyMHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAgJi1sYWJlbCB7XG4gICAgICAgIEBleHRlbmQgJWJ1dHRvbi10ZXh0O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICYgKyAuc3R5bGVzaGVldC1wYWdlLWxhYmVsLCAmICsgLnN0eWxlc2hlZXQtcGFnZS1zZXR0aW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICAgICAmLXNldHRpbmcge1xuICAgICAgICBAZXh0ZW5kICVidXR0b24tdGV4dDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAmICsgLnN0eWxlc2hlZXQtcGFnZS1zZXR0aW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRW1iZWQgbW9kZSDigJQgYm9keSBnZXRzIC5zdHlsZXNoZWV0LXBhZ2UgY2xhc3MgZGlyZWN0bHkuXG4vLyBHU0FQIGNhbid0IGZpcmUgU2Nyb2xsVHJpZ2dlciBmb3IgY29udGVudCBiZWxvdyB0aGUgaW5pdGlhbCBpZnJhbWUgaGVpZ2h0LFxuLy8gc28gYnlwYXNzIGFsbCBhbmltYXRpb24gaW5pdGlhbCBzdGF0ZXMgdG8ga2VlcCBjb250ZW50IHZpc2libGUuXG5ib2R5LnN0eWxlc2hlZXQtcGFnZSB7XG4gICAgW2NsYXNzKj1cImFuaW1hdGlvbi0tXCJdIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBbY2xhc3MqPVwiYW5pbWF0aW9uLS1cIl0gLnJvdyA+IGRpdiB7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiLnNlYXJjaC1yZXN1bHRzIHtcbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZXkpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZmxleDogMCAxIDMzLjMzMyU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDEgMSA2Ni42NjYlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgIGxpbmUtY2xhbXA6IDM7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==*/