/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://use.typekit.net/azq0rfg.css);
/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss (1) ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap);
/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss (2) ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* === Fonts (Adobe + Google) === */
/* Se preferisci self-hosted, sostituisci l'import con @font-face locali.
   Percorso: regola `url()` se il tuo SCSS compila altrove.
   Esempi comuni:
   - Se questo SCSS sta in assets/scss/, usa url('../fonts/...')
   - Se servi /assets/ statico, usa url('/assets/fonts/...') */
/*!
 * Bootstrap Reboot v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
: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: #000000;
  --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: #7D4B37;
  --bs-secondary: #DDCFC7;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #983030;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 125, 75, 55;
  --bs-secondary-rgb: 221, 207, 199;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 152, 48, 48;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #321e16;
  --bs-secondary-text-emphasis: #585350;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #3d1313;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #e5dbd7;
  --bs-secondary-bg-subtle: #f8f5f4;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #ead6d6;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #cbb7af;
  --bs-secondary-border-subtle: #f1ece9;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #d6acac;
  --bs-danger-border-subtle: #f1aeb5;
  --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: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(0deg, rgba(155, 132, 63, 0) 0%, rgba(155, 132, 63, 0.8) 80%);
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.42;
  --bs-body-color: #7D4B37;
  --bs-body-color-rgb: 125, 75, 55;
  --bs-body-bg: #F5F0EB;
  --bs-body-bg-rgb: 245, 240, 235;
  --bs-emphasis-color: #000000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(125, 75, 55, 0.75);
  --bs-secondary-color-rgb: 125, 75, 55;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(125, 75, 55, 0.5);
  --bs-tertiary-color-rgb: 125, 75, 55;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #7D4B37;
  --bs-link-color-rgb: 125, 75, 55;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #643c2c;
  --bs-link-hover-color-rgb: 100, 60, 44;
  --bs-code-color: #d63384;
  --bs-highlight-color: #7D4B37;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #7D4B37;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 3px;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 6px;
  --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(125, 75, 55, 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: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #b19387;
  --bs-secondary-text-emphasis: #ebe2dd;
  --bs-success-text-emphasis: #75b798;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #c18383;
  --bs-danger-text-emphasis: #ea868f;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #190f0b;
  --bs-secondary-bg-subtle: #2c2928;
  --bs-success-bg-subtle: #051b11;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #1e0a0a;
  --bs-danger-bg-subtle: #2c0b0e;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #4b2d21;
  --bs-secondary-border-subtle: #857c77;
  --bs-success-border-subtle: #0f5132;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #5b1d1d;
  --bs-danger-border-subtle: #842029;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #b19387;
  --bs-link-hover-color: #c1a99f;
  --bs-link-color-rgb: 177, 147, 135;
  --bs-link-hover-color-rgb: 193, 169, 159;
  --bs-code-color: #e685b5;
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: #664d03;
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #75b798;
  --bs-form-valid-border-color: #75b798;
  --bs-form-invalid-color: #ea868f;
  --bs-form-invalid-border-color: #ea868f;
}

*,
*::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: 20px 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

h6, h5, h4, h3, h2, h1 {
  margin-top: 0;
  margin-bottom: 10px;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-style: inherit;
  font-weight: 300;
  line-height: 1;
  color: var(--bs-heading-color);
}

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

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

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

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

h5 {
  font-size: 1.25rem;
}

h6 {
  font-size: 1rem;
}

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

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

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

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

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

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

dt {
  font-weight: 600;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 0.875em;
}

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;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit;
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: left;
}

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

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

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

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

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

/*!
 * Bootstrap Grid v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 20px;
  --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: 1400px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1600px) {
  .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: 1400px;
  --bs-breakpoint-xxl: 1600px;
}

.row {
  --bs-gutter-x: 20px;
  --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 > * {
  box-sizing: border-box;
  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: 5px;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 5px;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 10px;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 10px;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 20px;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 20px;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 60px;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 60px;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 80px;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 80px;
}

@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: 5px;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 5px;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 10px;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 10px;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 20px;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 20px;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 60px;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 60px;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 80px;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 80px;
  }
}
@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: 5px;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 5px;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 10px;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 10px;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 20px;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 20px;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 60px;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 60px;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 80px;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 80px;
  }
}
@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: 5px;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 5px;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 10px;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 10px;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 20px;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 20px;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 60px;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 60px;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 80px;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 80px;
  }
}
@media (min-width: 1400px) {
  .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: 5px;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 5px;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 10px;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 10px;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 20px;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 20px;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 60px;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 60px;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 80px;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 80px;
  }
}
@media (min-width: 1600px) {
  .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: 5px;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 5px;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 10px;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 10px;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 20px;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 20px;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 60px;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 60px;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 80px;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 80px;
  }
}
.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;
}

.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: 5px !important;
}

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

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

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

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

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

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

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

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

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

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

.mx-5 {
  margin-right: 60px !important;
  margin-left: 60px !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: 5px !important;
  margin-bottom: 5px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .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: 5px !important;
  }
  .m-sm-2 {
    margin: 10px !important;
  }
  .m-sm-3 {
    margin: 20px !important;
  }
  .m-sm-4 {
    margin: 30px !important;
  }
  .m-sm-5 {
    margin: 60px !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-sm-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-sm-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-sm-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-sm-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-sm-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-sm-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-sm-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-sm-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 5px !important;
  }
  .mt-sm-2 {
    margin-top: 10px !important;
  }
  .mt-sm-3 {
    margin-top: 20px !important;
  }
  .mt-sm-4 {
    margin-top: 30px !important;
  }
  .mt-sm-5 {
    margin-top: 60px !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 5px !important;
  }
  .me-sm-2 {
    margin-right: 10px !important;
  }
  .me-sm-3 {
    margin-right: 20px !important;
  }
  .me-sm-4 {
    margin-right: 30px !important;
  }
  .me-sm-5 {
    margin-right: 60px !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 5px !important;
  }
  .mb-sm-2 {
    margin-bottom: 10px !important;
  }
  .mb-sm-3 {
    margin-bottom: 20px !important;
  }
  .mb-sm-4 {
    margin-bottom: 30px !important;
  }
  .mb-sm-5 {
    margin-bottom: 60px !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 5px !important;
  }
  .ms-sm-2 {
    margin-left: 10px !important;
  }
  .ms-sm-3 {
    margin-left: 20px !important;
  }
  .ms-sm-4 {
    margin-left: 30px !important;
  }
  .ms-sm-5 {
    margin-left: 60px !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 5px !important;
  }
  .p-sm-2 {
    padding: 10px !important;
  }
  .p-sm-3 {
    padding: 20px !important;
  }
  .p-sm-4 {
    padding: 30px !important;
  }
  .p-sm-5 {
    padding: 60px !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-sm-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-sm-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-sm-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-sm-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-sm-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-sm-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-sm-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-sm-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 5px !important;
  }
  .pt-sm-2 {
    padding-top: 10px !important;
  }
  .pt-sm-3 {
    padding-top: 20px !important;
  }
  .pt-sm-4 {
    padding-top: 30px !important;
  }
  .pt-sm-5 {
    padding-top: 60px !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 5px !important;
  }
  .pe-sm-2 {
    padding-right: 10px !important;
  }
  .pe-sm-3 {
    padding-right: 20px !important;
  }
  .pe-sm-4 {
    padding-right: 30px !important;
  }
  .pe-sm-5 {
    padding-right: 60px !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 5px !important;
  }
  .pb-sm-2 {
    padding-bottom: 10px !important;
  }
  .pb-sm-3 {
    padding-bottom: 20px !important;
  }
  .pb-sm-4 {
    padding-bottom: 30px !important;
  }
  .pb-sm-5 {
    padding-bottom: 60px !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 5px !important;
  }
  .ps-sm-2 {
    padding-left: 10px !important;
  }
  .ps-sm-3 {
    padding-left: 20px !important;
  }
  .ps-sm-4 {
    padding-left: 30px !important;
  }
  .ps-sm-5 {
    padding-left: 60px !important;
  }
}
@media (min-width: 768px) {
  .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: 5px !important;
  }
  .m-md-2 {
    margin: 10px !important;
  }
  .m-md-3 {
    margin: 20px !important;
  }
  .m-md-4 {
    margin: 30px !important;
  }
  .m-md-5 {
    margin: 60px !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-md-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-md-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-md-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-md-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-md-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-md-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-md-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-md-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 5px !important;
  }
  .mt-md-2 {
    margin-top: 10px !important;
  }
  .mt-md-3 {
    margin-top: 20px !important;
  }
  .mt-md-4 {
    margin-top: 30px !important;
  }
  .mt-md-5 {
    margin-top: 60px !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 5px !important;
  }
  .me-md-2 {
    margin-right: 10px !important;
  }
  .me-md-3 {
    margin-right: 20px !important;
  }
  .me-md-4 {
    margin-right: 30px !important;
  }
  .me-md-5 {
    margin-right: 60px !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 5px !important;
  }
  .mb-md-2 {
    margin-bottom: 10px !important;
  }
  .mb-md-3 {
    margin-bottom: 20px !important;
  }
  .mb-md-4 {
    margin-bottom: 30px !important;
  }
  .mb-md-5 {
    margin-bottom: 60px !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 5px !important;
  }
  .ms-md-2 {
    margin-left: 10px !important;
  }
  .ms-md-3 {
    margin-left: 20px !important;
  }
  .ms-md-4 {
    margin-left: 30px !important;
  }
  .ms-md-5 {
    margin-left: 60px !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 5px !important;
  }
  .p-md-2 {
    padding: 10px !important;
  }
  .p-md-3 {
    padding: 20px !important;
  }
  .p-md-4 {
    padding: 30px !important;
  }
  .p-md-5 {
    padding: 60px !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-md-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-md-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-md-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-md-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-md-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-md-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-md-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-md-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 5px !important;
  }
  .pt-md-2 {
    padding-top: 10px !important;
  }
  .pt-md-3 {
    padding-top: 20px !important;
  }
  .pt-md-4 {
    padding-top: 30px !important;
  }
  .pt-md-5 {
    padding-top: 60px !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 5px !important;
  }
  .pe-md-2 {
    padding-right: 10px !important;
  }
  .pe-md-3 {
    padding-right: 20px !important;
  }
  .pe-md-4 {
    padding-right: 30px !important;
  }
  .pe-md-5 {
    padding-right: 60px !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 5px !important;
  }
  .pb-md-2 {
    padding-bottom: 10px !important;
  }
  .pb-md-3 {
    padding-bottom: 20px !important;
  }
  .pb-md-4 {
    padding-bottom: 30px !important;
  }
  .pb-md-5 {
    padding-bottom: 60px !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 5px !important;
  }
  .ps-md-2 {
    padding-left: 10px !important;
  }
  .ps-md-3 {
    padding-left: 20px !important;
  }
  .ps-md-4 {
    padding-left: 30px !important;
  }
  .ps-md-5 {
    padding-left: 60px !important;
  }
}
@media (min-width: 992px) {
  .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: 5px !important;
  }
  .m-lg-2 {
    margin: 10px !important;
  }
  .m-lg-3 {
    margin: 20px !important;
  }
  .m-lg-4 {
    margin: 30px !important;
  }
  .m-lg-5 {
    margin: 60px !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-lg-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-lg-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-lg-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-lg-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-lg-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-lg-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-lg-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-lg-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 5px !important;
  }
  .mt-lg-2 {
    margin-top: 10px !important;
  }
  .mt-lg-3 {
    margin-top: 20px !important;
  }
  .mt-lg-4 {
    margin-top: 30px !important;
  }
  .mt-lg-5 {
    margin-top: 60px !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 5px !important;
  }
  .me-lg-2 {
    margin-right: 10px !important;
  }
  .me-lg-3 {
    margin-right: 20px !important;
  }
  .me-lg-4 {
    margin-right: 30px !important;
  }
  .me-lg-5 {
    margin-right: 60px !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 5px !important;
  }
  .mb-lg-2 {
    margin-bottom: 10px !important;
  }
  .mb-lg-3 {
    margin-bottom: 20px !important;
  }
  .mb-lg-4 {
    margin-bottom: 30px !important;
  }
  .mb-lg-5 {
    margin-bottom: 60px !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 5px !important;
  }
  .ms-lg-2 {
    margin-left: 10px !important;
  }
  .ms-lg-3 {
    margin-left: 20px !important;
  }
  .ms-lg-4 {
    margin-left: 30px !important;
  }
  .ms-lg-5 {
    margin-left: 60px !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 5px !important;
  }
  .p-lg-2 {
    padding: 10px !important;
  }
  .p-lg-3 {
    padding: 20px !important;
  }
  .p-lg-4 {
    padding: 30px !important;
  }
  .p-lg-5 {
    padding: 60px !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-lg-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-lg-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-lg-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-lg-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-lg-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-lg-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-lg-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-lg-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 5px !important;
  }
  .pt-lg-2 {
    padding-top: 10px !important;
  }
  .pt-lg-3 {
    padding-top: 20px !important;
  }
  .pt-lg-4 {
    padding-top: 30px !important;
  }
  .pt-lg-5 {
    padding-top: 60px !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 5px !important;
  }
  .pe-lg-2 {
    padding-right: 10px !important;
  }
  .pe-lg-3 {
    padding-right: 20px !important;
  }
  .pe-lg-4 {
    padding-right: 30px !important;
  }
  .pe-lg-5 {
    padding-right: 60px !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 5px !important;
  }
  .pb-lg-2 {
    padding-bottom: 10px !important;
  }
  .pb-lg-3 {
    padding-bottom: 20px !important;
  }
  .pb-lg-4 {
    padding-bottom: 30px !important;
  }
  .pb-lg-5 {
    padding-bottom: 60px !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 5px !important;
  }
  .ps-lg-2 {
    padding-left: 10px !important;
  }
  .ps-lg-3 {
    padding-left: 20px !important;
  }
  .ps-lg-4 {
    padding-left: 30px !important;
  }
  .ps-lg-5 {
    padding-left: 60px !important;
  }
}
@media (min-width: 1400px) {
  .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: 5px !important;
  }
  .m-xl-2 {
    margin: 10px !important;
  }
  .m-xl-3 {
    margin: 20px !important;
  }
  .m-xl-4 {
    margin: 30px !important;
  }
  .m-xl-5 {
    margin: 60px !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-xl-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-xl-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-xl-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-xl-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-xl-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-xl-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-xl-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-xl-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 5px !important;
  }
  .mt-xl-2 {
    margin-top: 10px !important;
  }
  .mt-xl-3 {
    margin-top: 20px !important;
  }
  .mt-xl-4 {
    margin-top: 30px !important;
  }
  .mt-xl-5 {
    margin-top: 60px !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 5px !important;
  }
  .me-xl-2 {
    margin-right: 10px !important;
  }
  .me-xl-3 {
    margin-right: 20px !important;
  }
  .me-xl-4 {
    margin-right: 30px !important;
  }
  .me-xl-5 {
    margin-right: 60px !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 5px !important;
  }
  .mb-xl-2 {
    margin-bottom: 10px !important;
  }
  .mb-xl-3 {
    margin-bottom: 20px !important;
  }
  .mb-xl-4 {
    margin-bottom: 30px !important;
  }
  .mb-xl-5 {
    margin-bottom: 60px !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 5px !important;
  }
  .ms-xl-2 {
    margin-left: 10px !important;
  }
  .ms-xl-3 {
    margin-left: 20px !important;
  }
  .ms-xl-4 {
    margin-left: 30px !important;
  }
  .ms-xl-5 {
    margin-left: 60px !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 5px !important;
  }
  .p-xl-2 {
    padding: 10px !important;
  }
  .p-xl-3 {
    padding: 20px !important;
  }
  .p-xl-4 {
    padding: 30px !important;
  }
  .p-xl-5 {
    padding: 60px !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-xl-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-xl-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-xl-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-xl-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-xl-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-xl-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-xl-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-xl-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 5px !important;
  }
  .pt-xl-2 {
    padding-top: 10px !important;
  }
  .pt-xl-3 {
    padding-top: 20px !important;
  }
  .pt-xl-4 {
    padding-top: 30px !important;
  }
  .pt-xl-5 {
    padding-top: 60px !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 5px !important;
  }
  .pe-xl-2 {
    padding-right: 10px !important;
  }
  .pe-xl-3 {
    padding-right: 20px !important;
  }
  .pe-xl-4 {
    padding-right: 30px !important;
  }
  .pe-xl-5 {
    padding-right: 60px !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 5px !important;
  }
  .pb-xl-2 {
    padding-bottom: 10px !important;
  }
  .pb-xl-3 {
    padding-bottom: 20px !important;
  }
  .pb-xl-4 {
    padding-bottom: 30px !important;
  }
  .pb-xl-5 {
    padding-bottom: 60px !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 5px !important;
  }
  .ps-xl-2 {
    padding-left: 10px !important;
  }
  .ps-xl-3 {
    padding-left: 20px !important;
  }
  .ps-xl-4 {
    padding-left: 30px !important;
  }
  .ps-xl-5 {
    padding-left: 60px !important;
  }
}
@media (min-width: 1600px) {
  .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: 5px !important;
  }
  .m-xxl-2 {
    margin: 10px !important;
  }
  .m-xxl-3 {
    margin: 20px !important;
  }
  .m-xxl-4 {
    margin: 30px !important;
  }
  .m-xxl-5 {
    margin: 60px !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-xxl-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-xxl-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-xxl-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-xxl-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-xxl-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-xxl-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-xxl-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-xxl-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 5px !important;
  }
  .mt-xxl-2 {
    margin-top: 10px !important;
  }
  .mt-xxl-3 {
    margin-top: 20px !important;
  }
  .mt-xxl-4 {
    margin-top: 30px !important;
  }
  .mt-xxl-5 {
    margin-top: 60px !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 5px !important;
  }
  .me-xxl-2 {
    margin-right: 10px !important;
  }
  .me-xxl-3 {
    margin-right: 20px !important;
  }
  .me-xxl-4 {
    margin-right: 30px !important;
  }
  .me-xxl-5 {
    margin-right: 60px !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 5px !important;
  }
  .mb-xxl-2 {
    margin-bottom: 10px !important;
  }
  .mb-xxl-3 {
    margin-bottom: 20px !important;
  }
  .mb-xxl-4 {
    margin-bottom: 30px !important;
  }
  .mb-xxl-5 {
    margin-bottom: 60px !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 5px !important;
  }
  .ms-xxl-2 {
    margin-left: 10px !important;
  }
  .ms-xxl-3 {
    margin-left: 20px !important;
  }
  .ms-xxl-4 {
    margin-left: 30px !important;
  }
  .ms-xxl-5 {
    margin-left: 60px !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 5px !important;
  }
  .p-xxl-2 {
    padding: 10px !important;
  }
  .p-xxl-3 {
    padding: 20px !important;
  }
  .p-xxl-4 {
    padding: 30px !important;
  }
  .p-xxl-5 {
    padding: 60px !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-xxl-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-xxl-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-xxl-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-xxl-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-xxl-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-xxl-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-xxl-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-xxl-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 5px !important;
  }
  .pt-xxl-2 {
    padding-top: 10px !important;
  }
  .pt-xxl-3 {
    padding-top: 20px !important;
  }
  .pt-xxl-4 {
    padding-top: 30px !important;
  }
  .pt-xxl-5 {
    padding-top: 60px !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 5px !important;
  }
  .pe-xxl-2 {
    padding-right: 10px !important;
  }
  .pe-xxl-3 {
    padding-right: 20px !important;
  }
  .pe-xxl-4 {
    padding-right: 30px !important;
  }
  .pe-xxl-5 {
    padding-right: 60px !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 5px !important;
  }
  .pb-xxl-2 {
    padding-bottom: 10px !important;
  }
  .pb-xxl-3 {
    padding-bottom: 20px !important;
  }
  .pb-xxl-4 {
    padding-bottom: 30px !important;
  }
  .pb-xxl-5 {
    padding-bottom: 60px !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 5px !important;
  }
  .ps-xxl-2 {
    padding-left: 10px !important;
  }
  .ps-xxl-3 {
    padding-left: 20px !important;
  }
  .ps-xxl-4 {
    padding-left: 30px !important;
  }
  .ps-xxl-5 {
    padding-left: 60px !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;
  }
}
.btn {
  --bs-btn-padding-x: 20px;
  --bs-btn-padding-y: 10px;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 0.875 rem;
  --bs-btn-font-weight: 300;
  --bs-btn-line-height: 1.42;
  --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: 3px;
  --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;
  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: #7D4B37;
  --bs-btn-border-color: #7D4B37;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #6a402f;
  --bs-btn-hover-border-color: #643c2c;
  --bs-btn-focus-shadow-rgb: 145, 102, 85;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #643c2c;
  --bs-btn-active-border-color: #5e3829;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #FFF;
  --bs-btn-disabled-bg: #7D4B37;
  --bs-btn-disabled-border-color: #7D4B37;
}

.btn-secondary {
  --bs-btn-color: #000000;
  --bs-btn-bg: #DDCFC7;
  --bs-btn-border-color: #DDCFC7;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #e2d6cf;
  --bs-btn-hover-border-color: #e0d4cd;
  --bs-btn-focus-shadow-rgb: 188, 176, 169;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #e4d9d2;
  --bs-btn-active-border-color: #e0d4cd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #DDCFC7;
  --bs-btn-disabled-border-color: #DDCFC7;
}

.btn-success {
  --bs-btn-color: #FFF;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #13653f;
  --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: #000000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #31d2f2;
  --bs-btn-hover-border-color: #25cff2;
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #3dd5f3;
  --bs-btn-active-border-color: #25cff2;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #FFF;
  --bs-btn-bg: #983030;
  --bs-btn-border-color: #983030;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #812929;
  --bs-btn-hover-border-color: #7a2626;
  --bs-btn-focus-shadow-rgb: 167, 79, 79;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #7a2626;
  --bs-btn-active-border-color: #722424;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #FFF;
  --bs-btn-disabled-bg: #983030;
  --bs-btn-disabled-border-color: #983030;
}

.btn-danger {
  --bs-btn-color: #FFF;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #bb2d3b;
  --bs-btn-hover-border-color: #b02a37;
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #b02a37;
  --bs-btn-active-border-color: #a52834;
  --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: #000000;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #d3d4d5;
  --bs-btn-hover-border-color: #c6c7c8;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #c6c7c8;
  --bs-btn-active-border-color: #babbbc;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000000;
  --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: #424649;
  --bs-btn-hover-border-color: #373b3e;
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #4d5154;
  --bs-btn-active-border-color: #373b3e;
  --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: #7D4B37;
  --bs-btn-border-color: #7D4B37;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #7D4B37;
  --bs-btn-hover-border-color: #7D4B37;
  --bs-btn-focus-shadow-rgb: 125, 75, 55;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #7D4B37;
  --bs-btn-active-border-color: #7D4B37;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #7D4B37;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #7D4B37;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #DDCFC7;
  --bs-btn-border-color: #DDCFC7;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #DDCFC7;
  --bs-btn-hover-border-color: #DDCFC7;
  --bs-btn-focus-shadow-rgb: 221, 207, 199;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #DDCFC7;
  --bs-btn-active-border-color: #DDCFC7;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #DDCFC7;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #DDCFC7;
  --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: #000000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000000;
  --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: #983030;
  --bs-btn-border-color: #983030;
  --bs-btn-hover-color: #FFF;
  --bs-btn-hover-bg: #983030;
  --bs-btn-hover-border-color: #983030;
  --bs-btn-focus-shadow-rgb: 152, 48, 48;
  --bs-btn-active-color: #FFF;
  --bs-btn-active-bg: #983030;
  --bs-btn-active-border-color: #983030;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #983030;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #983030;
  --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: #000000;
  --bs-btn-hover-bg: #f8f9fa;
  --bs-btn-hover-border-color: #f8f9fa;
  --bs-btn-focus-shadow-rgb: 248, 249, 250;
  --bs-btn-active-color: #000000;
  --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: 145, 102, 85;
  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);
}

.form-label {
  margin-bottom: 0.5rem;
}

.col-form-label {
  padding-top: calc(10px + var(--bs-border-width));
  padding-bottom: calc(10px + var(--bs-border-width));
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.42;
}

.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: 10px 1rem;
  font-size: 0.875 rem;
  font-weight: 400;
  line-height: 1.42;
  color: var(--bs-body-color);
  appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: 3px;
  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: #bea59b;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(125, 75, 55, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.42em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.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: 10px 1rem;
  margin: -10px -1rem;
  margin-inline-end: 1rem;
  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: 10px 0;
  margin-bottom: 0;
  line-height: 1.42;
  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.42em + 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.42em + 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.42em + 20px + calc(var(--bs-border-width) * 2));
}
textarea.form-control-sm {
  min-height: calc(1.42em + 0.5rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-lg {
  min-height: calc(1.42em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
  width: 3rem;
  height: calc(1.42em + 20px + calc(var(--bs-border-width) * 2));
  padding: 10px;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: 3px;
}
.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: 3px;
}
.form-control-color.form-control-sm {
  height: calc(1.42em + 0.5rem + calc(var(--bs-border-width) * 2));
}
.form-control-color.form-control-lg {
  height: calc(1.42em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 10px 3rem 10px 1rem;
  font-size: 0.875 rem;
  font-weight: 400;
  line-height: 1.42;
  color: var(--bs-body-color);
  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 1rem center;
  background-size: 16px 12px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: 3px;
  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: #bea59b;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(125, 75, 55, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-right: 1rem;
  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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23dee2e6%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
}

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

.form-check-reverse {
  padding-right: 1.92em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.92em;
  margin-left: 0;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1.42em;
  height: 1.42em;
  margin-top: 0em;
  vertical-align: top;
  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);
  print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 3px;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #bea59b;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(125, 75, 55, 0.25);
}
.form-check-input:checked {
  background-color: #7D4B37;
  border-color: #7D4B37;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23FFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23FFF%27/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #7D4B37;
  border-color: #7D4B37;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23FFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%280, 0, 0, 0.25%29%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23bea59b%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23FFF%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%28255, 255, 255, 0.25%29%27/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #F5F0EB, 0 0 0 0.25rem rgba(125, 75, 55, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #F5F0EB, 0 0 0 0.25rem rgba(125, 75, 55, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  appearance: none;
  background-color: #7D4B37;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: #d8c9c3;
}
.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;
  appearance: none;
  background-color: #7D4B37;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: #d8c9c3;
}
.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;
  height: 100%;
  padding: 1rem 1rem;
  overflow: hidden;
  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 1rem;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.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;
}
.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 {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:focus ~ label::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
.form-floating > .form-control-plaintext ~ label::after,
.form-floating > .form-select ~ label::after {
  position: absolute;
  inset: 1rem 0.5rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: 3px;
}
.form-floating > .form-control:-webkit-autofill ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.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;
}
.form-floating > :disabled ~ label::after,
.form-floating > .form-control:disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}

.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: 10px 1rem;
  font-size: 0.875 rem;
  font-weight: 400;
  line-height: 1.42;
  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: 3px;
}

.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: 4rem;
}

.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(var(--bs-border-width) * -1);
  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: 5px 10px;
  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.42em + 20px);
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.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.1z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.355em + 5px) center;
  background-size: calc(0.71em + 10px) calc(0.71em + 10px);
}
.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.42em + 20px);
  background-position: top calc(0.355em + 5px) right calc(0.355em + 5px);
}

.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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.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.1z%27/%3e%3c/svg%3e");
  padding-right: 5.5rem;
  background-position: right 1rem center, center right 3rem;
  background-size: 16px 12px, calc(0.71em + 10px) calc(0.71em + 10px);
}
.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.42em + 20px));
}

.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: 5px 10px;
  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.42em + 20px);
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.355em + 5px) center;
  background-size: calc(0.71em + 10px) calc(0.71em + 10px);
}
.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.42em + 20px);
  background-position: top calc(0.355em + 5px) right calc(0.355em + 5px);
}

.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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  padding-right: 5.5rem;
  background-position: right 1rem center, center right 3rem;
  background-size: 16px 12px, calc(0.71em + 10px) calc(0.71em + 10px);
}
.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.42em + 20px));
}

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

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 16px;
  --bs-modal-margin: 0.5rem;
  --bs-modal-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: 16px;
  --bs-modal-header-padding-y: 16px;
  --bs-modal-header-padding: 16px 16px;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.42;
  --bs-modal-footer-gap: 20px;
  --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 {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  height: calc(100% - 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: #000000;
  --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: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) 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: 1400px) {
  .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: 1399.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: 1599.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;
  }
}
.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 16px;
  --bs-offcanvas-padding-y: 16px;
  --bs-offcanvas-color: var(--bs-body-color);
  --bs-offcanvas-bg: var(--bs-body-bg);
  --bs-offcanvas-border-width: var(--bs-border-width);
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);
  --bs-offcanvas-transition: transform 0.3s ease-in-out;
  --bs-offcanvas-title-line-height: 1.42;
}

@media (max-width: 575.98px) {
  .offcanvas-sm {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-sm {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .offcanvas-sm.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-sm.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-sm.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-sm.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
    visibility: visible;
  }
}
@media (min-width: 576px) {
  .offcanvas-sm {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-sm .offcanvas-header {
    display: none;
  }
  .offcanvas-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 767.98px) {
  .offcanvas-md {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-md {
    transition: none;
  }
}
@media (max-width: 767.98px) {
  .offcanvas-md.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-md.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-md.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-md.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .offcanvas-md {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-md .offcanvas-header {
    display: none;
  }
  .offcanvas-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 991.98px) {
  .offcanvas-lg {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-lg {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-lg.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-lg.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-lg.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
    visibility: visible;
  }
}
@media (min-width: 992px) {
  .offcanvas-lg {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-lg .offcanvas-header {
    display: none;
  }
  .offcanvas-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1399.98px) {
  .offcanvas-xl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-xl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xl .offcanvas-header {
    display: none;
  }
  .offcanvas-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1599.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1599.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}
@media (max-width: 1599.98px) {
  .offcanvas-xxl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xxl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xxl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xxl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
    visibility: visible;
  }
}
@media (min-width: 1600px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--bs-offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  color: var(--bs-offcanvas-color);
  visibility: hidden;
  background-color: var(--bs-offcanvas-bg);
  background-clip: padding-box;
  outline: 0;
  transition: var(--bs-offcanvas-transition);
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}
.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--bs-offcanvas-width);
  border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--bs-offcanvas-width);
  border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(100%);
}
.offcanvas.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(100%);
}
.offcanvas.showing, .offcanvas.show:not(.hiding) {
  transform: none;
}
.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
  visibility: visible;
}

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

.offcanvas-header {
  display: flex;
  align-items: center;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
  margin: calc(-0.5 * var(--bs-offcanvas-padding-y)) calc(-0.5 * var(--bs-offcanvas-padding-x)) calc(-0.5 * var(--bs-offcanvas-padding-y)) auto;
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: var(--bs-offcanvas-title-line-height);
}

.offcanvas-body {
  flex-grow: 1;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
  overflow-y: auto;
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: #7D4B37;
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: #E0E0E0;
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: #7D4B37;
  --bs-pagination-hover-bg: #FFF;
  --bs-pagination-hover-border-color: #7D4B37;
  --bs-pagination-focus-color: #7D4B37;
  --bs-pagination-focus-bg: #FFF;
  --bs-pagination-focus-box-shadow: 0 0 0 1px #7D4B37;
  --bs-pagination-active-color: #7D4B37;
  --bs-pagination-active-bg: #FFF;
  --bs-pagination-active-border-color: #7D4B37;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: #E0E0E0;
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: calc(var(--bs-border-width) * -1);
}
.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.pagination-lg {
  --bs-pagination-padding-x: 1.5rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-font-size: 1.25rem;
  --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

.pagination-sm {
  --bs-pagination-padding-x: 0.5rem;
  --bs-pagination-padding-y: 0.25rem;
  --bs-pagination-font-size: 0.875rem;
  --bs-pagination-border-radius: var(--bs-border-radius-sm);
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 0;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: #606060;
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

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

.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: 10px;
  --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: #7D4B37;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 20px;
  --bs-dropdown-item-padding-y: 5px;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 20px;
  --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: 1400px) {
  .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: 1600px) {
  .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: #7D4B37;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.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: #E0E0E0;
  --bs-accordion-border-width: 1px;
  --bs-accordion-border-radius: 0;
  --bs-accordion-inner-border-radius: 0;
  --bs-accordion-btn-padding-x: 10px;
  --bs-accordion-btn-padding-y: 10px;
  --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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23707070%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23707070%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 1px #7D4B37;
  --bs-accordion-body-padding-x: 0;
  --bs-accordion-body-padding-y: 20px;
  --bs-accordion-active-color: #7D4B37;
  --bs-accordion-active-bg: #FFF;
}

.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-header .accordion-button, .accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
  border-radius: 0;
}
.accordion-flush > .accordion-item > .accordion-collapse {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23b19387%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23b19387%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
}

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

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 20px;
  --bs-alert-padding-y: 20px;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-color: inherit;
  --bs-alert-border-color: transparent;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  --bs-alert-link-color: inherit;
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 600;
  color: var(--bs-alert-link-color);
}

.alert-dismissible {
  padding-right: 60px;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 25px 20px;
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

.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(125, 75, 55, 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: #7D4B37;
}
.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: 600;
  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-basis: 0;
  flex-grow: 1;
  text-align: center;
}

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

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

.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: 20px;
  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: #000000;
  --bs-table-bg: #e5dbd7;
  --bs-table-border-color: #b7afac;
  --bs-table-striped-bg: #dad0cc;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #cec5c2;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #d4cbc7;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000000;
  --bs-table-bg: #f8f5f4;
  --bs-table-border-color: #c6c4c3;
  --bs-table-striped-bg: #ece9e8;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #dfdddc;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #e5e3e2;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000000;
  --bs-table-bg: #d1e7dd;
  --bs-table-border-color: #a7b9b1;
  --bs-table-striped-bg: #c7dbd2;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #bcd0c7;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #c1d6cc;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000000;
  --bs-table-bg: #cff4fc;
  --bs-table-border-color: #a6c3ca;
  --bs-table-striped-bg: #c5e8ef;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #badce3;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #bfe2e9;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000000;
  --bs-table-bg: #ead6d6;
  --bs-table-border-color: #bbabab;
  --bs-table-striped-bg: #decbcb;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #d3c1c1;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #d8c6c6;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000000;
  --bs-table-bg: #f8d7da;
  --bs-table-border-color: #c6acae;
  --bs-table-striped-bg: #eccccf;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #dfc2c4;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #e5c7ca;
  --bs-table-hover-color: #000000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000000;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: #c6c7c8;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #e5e6e7;
  --bs-table-hover-color: #000000;
  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: #4d5154;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #FFF;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #FFF;
  --bs-table-hover-bg: #323539;
  --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: 1399.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1599.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
/*!
 * Bootstrap Utilities v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
: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: #000000;
  --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: #7D4B37;
  --bs-secondary: #DDCFC7;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #983030;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 125, 75, 55;
  --bs-secondary-rgb: 221, 207, 199;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 152, 48, 48;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #321e16;
  --bs-secondary-text-emphasis: #585350;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #3d1313;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #e5dbd7;
  --bs-secondary-bg-subtle: #f8f5f4;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #ead6d6;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #cbb7af;
  --bs-secondary-border-subtle: #f1ece9;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #d6acac;
  --bs-danger-border-subtle: #f1aeb5;
  --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: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(0deg, rgba(155, 132, 63, 0) 0%, rgba(155, 132, 63, 0.8) 80%);
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.42;
  --bs-body-color: #7D4B37;
  --bs-body-color-rgb: 125, 75, 55;
  --bs-body-bg: #F5F0EB;
  --bs-body-bg-rgb: 245, 240, 235;
  --bs-emphasis-color: #000000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(125, 75, 55, 0.75);
  --bs-secondary-color-rgb: 125, 75, 55;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(125, 75, 55, 0.5);
  --bs-tertiary-color-rgb: 125, 75, 55;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #7D4B37;
  --bs-link-color-rgb: 125, 75, 55;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #643c2c;
  --bs-link-hover-color-rgb: 100, 60, 44;
  --bs-code-color: #d63384;
  --bs-highlight-color: #7D4B37;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #7D4B37;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 3px;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 6px;
  --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(125, 75, 55, 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: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #b19387;
  --bs-secondary-text-emphasis: #ebe2dd;
  --bs-success-text-emphasis: #75b798;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #c18383;
  --bs-danger-text-emphasis: #ea868f;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #190f0b;
  --bs-secondary-bg-subtle: #2c2928;
  --bs-success-bg-subtle: #051b11;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #1e0a0a;
  --bs-danger-bg-subtle: #2c0b0e;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #4b2d21;
  --bs-secondary-border-subtle: #857c77;
  --bs-success-border-subtle: #0f5132;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #5b1d1d;
  --bs-danger-border-subtle: #842029;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #b19387;
  --bs-link-hover-color: #c1a99f;
  --bs-link-color-rgb: 177, 147, 135;
  --bs-link-hover-color-rgb: 193, 169, 159;
  --bs-code-color: #e685b5;
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: #664d03;
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #75b798;
  --bs-form-valid-border-color: #75b798;
  --bs-form-invalid-color: #ea868f;
  --bs-form-invalid-border-color: #ea868f;
}

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

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

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

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

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

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

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

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

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

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-primary:hover, .link-primary:focus {
  color: RGBA(100, 60, 44, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(100, 60, 44, var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary {
  color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-secondary:hover, .link-secondary:focus {
  color: RGBA(228, 217, 210, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(228, 217, 210, var(--bs-link-underline-opacity, 1)) !important;
}

.link-success {
  color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-success:hover, .link-success:focus {
  color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
}

.link-info {
  color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-info:hover, .link-info:focus {
  color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning {
  color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-warning:hover, .link-warning:focus {
  color: RGBA(122, 38, 38, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(122, 38, 38, var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger {
  color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-danger:hover, .link-danger:focus {
  color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
}

.link-light {
  color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-light:hover, .link-light:focus {
  color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark {
  color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-dark:hover, .link-dark:focus {
  color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-body-emphasis:hover, .link-body-emphasis:focus {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
  text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
}

.focus-ring:focus {
  outline: 0;
  box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.icon-link {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  backface-visibility: hidden;
}
.icon-link > .bi {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentcolor;
  transition: 0.2s ease-in-out transform;
}
@media (prefers-reduced-motion: reduce) {
  .icon-link > .bi {
    transition: none;
  }
}

.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
  transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
}

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

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

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

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

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

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

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

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

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

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

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

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  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;
}

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

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

.vr {
  display: inline-block;
  align-self: stretch;
  width: var(--bs-border-width);
  min-height: 1em;
  background-color: currentcolor;
  opacity: 0.25;
}

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

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

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

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

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

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

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

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

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

.object-fit-contain {
  object-fit: contain !important;
}

.object-fit-cover {
  object-fit: cover !important;
}

.object-fit-fill {
  object-fit: fill !important;
}

.object-fit-scale {
  object-fit: scale-down !important;
}

.object-fit-none {
  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: 5px !important;
}

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

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

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

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

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

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

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

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

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

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

.mx-5 {
  margin-right: 60px !important;
  margin-left: 60px !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: 5px !important;
  margin-bottom: 5px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.gap-1 {
  gap: 5px !important;
}

.gap-2 {
  gap: 10px !important;
}

.gap-3 {
  gap: 20px !important;
}

.gap-4 {
  gap: 30px !important;
}

.gap-5 {
  gap: 60px !important;
}

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

.row-gap-1 {
  row-gap: 5px !important;
}

.row-gap-2 {
  row-gap: 10px !important;
}

.row-gap-3 {
  row-gap: 20px !important;
}

.row-gap-4 {
  row-gap: 30px !important;
}

.row-gap-5 {
  row-gap: 60px !important;
}

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

.column-gap-1 {
  column-gap: 5px !important;
}

.column-gap-2 {
  column-gap: 10px !important;
}

.column-gap-3 {
  column-gap: 20px !important;
}

.column-gap-4 {
  column-gap: 30px !important;
}

.column-gap-5 {
  column-gap: 60px !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: 600 !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.42 !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 {
  user-select: all !important;
}

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

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

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

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

.rounded {
  border-radius: 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 {
    object-fit: contain !important;
  }
  .object-fit-sm-cover {
    object-fit: cover !important;
  }
  .object-fit-sm-fill {
    object-fit: fill !important;
  }
  .object-fit-sm-scale {
    object-fit: scale-down !important;
  }
  .object-fit-sm-none {
    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: 5px !important;
  }
  .m-sm-2 {
    margin: 10px !important;
  }
  .m-sm-3 {
    margin: 20px !important;
  }
  .m-sm-4 {
    margin: 30px !important;
  }
  .m-sm-5 {
    margin: 60px !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-sm-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-sm-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-sm-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-sm-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-sm-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-sm-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-sm-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-sm-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 5px !important;
  }
  .mt-sm-2 {
    margin-top: 10px !important;
  }
  .mt-sm-3 {
    margin-top: 20px !important;
  }
  .mt-sm-4 {
    margin-top: 30px !important;
  }
  .mt-sm-5 {
    margin-top: 60px !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 5px !important;
  }
  .me-sm-2 {
    margin-right: 10px !important;
  }
  .me-sm-3 {
    margin-right: 20px !important;
  }
  .me-sm-4 {
    margin-right: 30px !important;
  }
  .me-sm-5 {
    margin-right: 60px !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 5px !important;
  }
  .mb-sm-2 {
    margin-bottom: 10px !important;
  }
  .mb-sm-3 {
    margin-bottom: 20px !important;
  }
  .mb-sm-4 {
    margin-bottom: 30px !important;
  }
  .mb-sm-5 {
    margin-bottom: 60px !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 5px !important;
  }
  .ms-sm-2 {
    margin-left: 10px !important;
  }
  .ms-sm-3 {
    margin-left: 20px !important;
  }
  .ms-sm-4 {
    margin-left: 30px !important;
  }
  .ms-sm-5 {
    margin-left: 60px !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 5px !important;
  }
  .p-sm-2 {
    padding: 10px !important;
  }
  .p-sm-3 {
    padding: 20px !important;
  }
  .p-sm-4 {
    padding: 30px !important;
  }
  .p-sm-5 {
    padding: 60px !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-sm-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-sm-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-sm-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-sm-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-sm-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-sm-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-sm-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-sm-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 5px !important;
  }
  .pt-sm-2 {
    padding-top: 10px !important;
  }
  .pt-sm-3 {
    padding-top: 20px !important;
  }
  .pt-sm-4 {
    padding-top: 30px !important;
  }
  .pt-sm-5 {
    padding-top: 60px !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 5px !important;
  }
  .pe-sm-2 {
    padding-right: 10px !important;
  }
  .pe-sm-3 {
    padding-right: 20px !important;
  }
  .pe-sm-4 {
    padding-right: 30px !important;
  }
  .pe-sm-5 {
    padding-right: 60px !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 5px !important;
  }
  .pb-sm-2 {
    padding-bottom: 10px !important;
  }
  .pb-sm-3 {
    padding-bottom: 20px !important;
  }
  .pb-sm-4 {
    padding-bottom: 30px !important;
  }
  .pb-sm-5 {
    padding-bottom: 60px !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 5px !important;
  }
  .ps-sm-2 {
    padding-left: 10px !important;
  }
  .ps-sm-3 {
    padding-left: 20px !important;
  }
  .ps-sm-4 {
    padding-left: 30px !important;
  }
  .ps-sm-5 {
    padding-left: 60px !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 5px !important;
  }
  .gap-sm-2 {
    gap: 10px !important;
  }
  .gap-sm-3 {
    gap: 20px !important;
  }
  .gap-sm-4 {
    gap: 30px !important;
  }
  .gap-sm-5 {
    gap: 60px !important;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 5px !important;
  }
  .row-gap-sm-2 {
    row-gap: 10px !important;
  }
  .row-gap-sm-3 {
    row-gap: 20px !important;
  }
  .row-gap-sm-4 {
    row-gap: 30px !important;
  }
  .row-gap-sm-5 {
    row-gap: 60px !important;
  }
  .column-gap-sm-0 {
    column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    column-gap: 5px !important;
  }
  .column-gap-sm-2 {
    column-gap: 10px !important;
  }
  .column-gap-sm-3 {
    column-gap: 20px !important;
  }
  .column-gap-sm-4 {
    column-gap: 30px !important;
  }
  .column-gap-sm-5 {
    column-gap: 60px !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 {
    object-fit: contain !important;
  }
  .object-fit-md-cover {
    object-fit: cover !important;
  }
  .object-fit-md-fill {
    object-fit: fill !important;
  }
  .object-fit-md-scale {
    object-fit: scale-down !important;
  }
  .object-fit-md-none {
    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: 5px !important;
  }
  .m-md-2 {
    margin: 10px !important;
  }
  .m-md-3 {
    margin: 20px !important;
  }
  .m-md-4 {
    margin: 30px !important;
  }
  .m-md-5 {
    margin: 60px !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-md-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-md-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-md-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-md-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-md-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-md-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-md-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-md-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 5px !important;
  }
  .mt-md-2 {
    margin-top: 10px !important;
  }
  .mt-md-3 {
    margin-top: 20px !important;
  }
  .mt-md-4 {
    margin-top: 30px !important;
  }
  .mt-md-5 {
    margin-top: 60px !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 5px !important;
  }
  .me-md-2 {
    margin-right: 10px !important;
  }
  .me-md-3 {
    margin-right: 20px !important;
  }
  .me-md-4 {
    margin-right: 30px !important;
  }
  .me-md-5 {
    margin-right: 60px !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 5px !important;
  }
  .mb-md-2 {
    margin-bottom: 10px !important;
  }
  .mb-md-3 {
    margin-bottom: 20px !important;
  }
  .mb-md-4 {
    margin-bottom: 30px !important;
  }
  .mb-md-5 {
    margin-bottom: 60px !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 5px !important;
  }
  .ms-md-2 {
    margin-left: 10px !important;
  }
  .ms-md-3 {
    margin-left: 20px !important;
  }
  .ms-md-4 {
    margin-left: 30px !important;
  }
  .ms-md-5 {
    margin-left: 60px !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 5px !important;
  }
  .p-md-2 {
    padding: 10px !important;
  }
  .p-md-3 {
    padding: 20px !important;
  }
  .p-md-4 {
    padding: 30px !important;
  }
  .p-md-5 {
    padding: 60px !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-md-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-md-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-md-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-md-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-md-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-md-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-md-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-md-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 5px !important;
  }
  .pt-md-2 {
    padding-top: 10px !important;
  }
  .pt-md-3 {
    padding-top: 20px !important;
  }
  .pt-md-4 {
    padding-top: 30px !important;
  }
  .pt-md-5 {
    padding-top: 60px !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 5px !important;
  }
  .pe-md-2 {
    padding-right: 10px !important;
  }
  .pe-md-3 {
    padding-right: 20px !important;
  }
  .pe-md-4 {
    padding-right: 30px !important;
  }
  .pe-md-5 {
    padding-right: 60px !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 5px !important;
  }
  .pb-md-2 {
    padding-bottom: 10px !important;
  }
  .pb-md-3 {
    padding-bottom: 20px !important;
  }
  .pb-md-4 {
    padding-bottom: 30px !important;
  }
  .pb-md-5 {
    padding-bottom: 60px !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 5px !important;
  }
  .ps-md-2 {
    padding-left: 10px !important;
  }
  .ps-md-3 {
    padding-left: 20px !important;
  }
  .ps-md-4 {
    padding-left: 30px !important;
  }
  .ps-md-5 {
    padding-left: 60px !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 5px !important;
  }
  .gap-md-2 {
    gap: 10px !important;
  }
  .gap-md-3 {
    gap: 20px !important;
  }
  .gap-md-4 {
    gap: 30px !important;
  }
  .gap-md-5 {
    gap: 60px !important;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 5px !important;
  }
  .row-gap-md-2 {
    row-gap: 10px !important;
  }
  .row-gap-md-3 {
    row-gap: 20px !important;
  }
  .row-gap-md-4 {
    row-gap: 30px !important;
  }
  .row-gap-md-5 {
    row-gap: 60px !important;
  }
  .column-gap-md-0 {
    column-gap: 0 !important;
  }
  .column-gap-md-1 {
    column-gap: 5px !important;
  }
  .column-gap-md-2 {
    column-gap: 10px !important;
  }
  .column-gap-md-3 {
    column-gap: 20px !important;
  }
  .column-gap-md-4 {
    column-gap: 30px !important;
  }
  .column-gap-md-5 {
    column-gap: 60px !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 {
    object-fit: contain !important;
  }
  .object-fit-lg-cover {
    object-fit: cover !important;
  }
  .object-fit-lg-fill {
    object-fit: fill !important;
  }
  .object-fit-lg-scale {
    object-fit: scale-down !important;
  }
  .object-fit-lg-none {
    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: 5px !important;
  }
  .m-lg-2 {
    margin: 10px !important;
  }
  .m-lg-3 {
    margin: 20px !important;
  }
  .m-lg-4 {
    margin: 30px !important;
  }
  .m-lg-5 {
    margin: 60px !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-lg-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-lg-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-lg-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-lg-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-lg-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-lg-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-lg-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-lg-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 5px !important;
  }
  .mt-lg-2 {
    margin-top: 10px !important;
  }
  .mt-lg-3 {
    margin-top: 20px !important;
  }
  .mt-lg-4 {
    margin-top: 30px !important;
  }
  .mt-lg-5 {
    margin-top: 60px !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 5px !important;
  }
  .me-lg-2 {
    margin-right: 10px !important;
  }
  .me-lg-3 {
    margin-right: 20px !important;
  }
  .me-lg-4 {
    margin-right: 30px !important;
  }
  .me-lg-5 {
    margin-right: 60px !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 5px !important;
  }
  .mb-lg-2 {
    margin-bottom: 10px !important;
  }
  .mb-lg-3 {
    margin-bottom: 20px !important;
  }
  .mb-lg-4 {
    margin-bottom: 30px !important;
  }
  .mb-lg-5 {
    margin-bottom: 60px !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 5px !important;
  }
  .ms-lg-2 {
    margin-left: 10px !important;
  }
  .ms-lg-3 {
    margin-left: 20px !important;
  }
  .ms-lg-4 {
    margin-left: 30px !important;
  }
  .ms-lg-5 {
    margin-left: 60px !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 5px !important;
  }
  .p-lg-2 {
    padding: 10px !important;
  }
  .p-lg-3 {
    padding: 20px !important;
  }
  .p-lg-4 {
    padding: 30px !important;
  }
  .p-lg-5 {
    padding: 60px !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-lg-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-lg-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-lg-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-lg-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-lg-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-lg-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-lg-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-lg-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 5px !important;
  }
  .pt-lg-2 {
    padding-top: 10px !important;
  }
  .pt-lg-3 {
    padding-top: 20px !important;
  }
  .pt-lg-4 {
    padding-top: 30px !important;
  }
  .pt-lg-5 {
    padding-top: 60px !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 5px !important;
  }
  .pe-lg-2 {
    padding-right: 10px !important;
  }
  .pe-lg-3 {
    padding-right: 20px !important;
  }
  .pe-lg-4 {
    padding-right: 30px !important;
  }
  .pe-lg-5 {
    padding-right: 60px !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 5px !important;
  }
  .pb-lg-2 {
    padding-bottom: 10px !important;
  }
  .pb-lg-3 {
    padding-bottom: 20px !important;
  }
  .pb-lg-4 {
    padding-bottom: 30px !important;
  }
  .pb-lg-5 {
    padding-bottom: 60px !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 5px !important;
  }
  .ps-lg-2 {
    padding-left: 10px !important;
  }
  .ps-lg-3 {
    padding-left: 20px !important;
  }
  .ps-lg-4 {
    padding-left: 30px !important;
  }
  .ps-lg-5 {
    padding-left: 60px !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 5px !important;
  }
  .gap-lg-2 {
    gap: 10px !important;
  }
  .gap-lg-3 {
    gap: 20px !important;
  }
  .gap-lg-4 {
    gap: 30px !important;
  }
  .gap-lg-5 {
    gap: 60px !important;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 5px !important;
  }
  .row-gap-lg-2 {
    row-gap: 10px !important;
  }
  .row-gap-lg-3 {
    row-gap: 20px !important;
  }
  .row-gap-lg-4 {
    row-gap: 30px !important;
  }
  .row-gap-lg-5 {
    row-gap: 60px !important;
  }
  .column-gap-lg-0 {
    column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    column-gap: 5px !important;
  }
  .column-gap-lg-2 {
    column-gap: 10px !important;
  }
  .column-gap-lg-3 {
    column-gap: 20px !important;
  }
  .column-gap-lg-4 {
    column-gap: 30px !important;
  }
  .column-gap-lg-5 {
    column-gap: 60px !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: 1400px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .object-fit-xl-contain {
    object-fit: contain !important;
  }
  .object-fit-xl-cover {
    object-fit: cover !important;
  }
  .object-fit-xl-fill {
    object-fit: fill !important;
  }
  .object-fit-xl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-xl-none {
    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: 5px !important;
  }
  .m-xl-2 {
    margin: 10px !important;
  }
  .m-xl-3 {
    margin: 20px !important;
  }
  .m-xl-4 {
    margin: 30px !important;
  }
  .m-xl-5 {
    margin: 60px !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-xl-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-xl-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-xl-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-xl-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-xl-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-xl-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-xl-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-xl-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 5px !important;
  }
  .mt-xl-2 {
    margin-top: 10px !important;
  }
  .mt-xl-3 {
    margin-top: 20px !important;
  }
  .mt-xl-4 {
    margin-top: 30px !important;
  }
  .mt-xl-5 {
    margin-top: 60px !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 5px !important;
  }
  .me-xl-2 {
    margin-right: 10px !important;
  }
  .me-xl-3 {
    margin-right: 20px !important;
  }
  .me-xl-4 {
    margin-right: 30px !important;
  }
  .me-xl-5 {
    margin-right: 60px !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 5px !important;
  }
  .mb-xl-2 {
    margin-bottom: 10px !important;
  }
  .mb-xl-3 {
    margin-bottom: 20px !important;
  }
  .mb-xl-4 {
    margin-bottom: 30px !important;
  }
  .mb-xl-5 {
    margin-bottom: 60px !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 5px !important;
  }
  .ms-xl-2 {
    margin-left: 10px !important;
  }
  .ms-xl-3 {
    margin-left: 20px !important;
  }
  .ms-xl-4 {
    margin-left: 30px !important;
  }
  .ms-xl-5 {
    margin-left: 60px !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 5px !important;
  }
  .p-xl-2 {
    padding: 10px !important;
  }
  .p-xl-3 {
    padding: 20px !important;
  }
  .p-xl-4 {
    padding: 30px !important;
  }
  .p-xl-5 {
    padding: 60px !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-xl-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-xl-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-xl-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-xl-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-xl-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-xl-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-xl-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-xl-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 5px !important;
  }
  .pt-xl-2 {
    padding-top: 10px !important;
  }
  .pt-xl-3 {
    padding-top: 20px !important;
  }
  .pt-xl-4 {
    padding-top: 30px !important;
  }
  .pt-xl-5 {
    padding-top: 60px !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 5px !important;
  }
  .pe-xl-2 {
    padding-right: 10px !important;
  }
  .pe-xl-3 {
    padding-right: 20px !important;
  }
  .pe-xl-4 {
    padding-right: 30px !important;
  }
  .pe-xl-5 {
    padding-right: 60px !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 5px !important;
  }
  .pb-xl-2 {
    padding-bottom: 10px !important;
  }
  .pb-xl-3 {
    padding-bottom: 20px !important;
  }
  .pb-xl-4 {
    padding-bottom: 30px !important;
  }
  .pb-xl-5 {
    padding-bottom: 60px !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 5px !important;
  }
  .ps-xl-2 {
    padding-left: 10px !important;
  }
  .ps-xl-3 {
    padding-left: 20px !important;
  }
  .ps-xl-4 {
    padding-left: 30px !important;
  }
  .ps-xl-5 {
    padding-left: 60px !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 5px !important;
  }
  .gap-xl-2 {
    gap: 10px !important;
  }
  .gap-xl-3 {
    gap: 20px !important;
  }
  .gap-xl-4 {
    gap: 30px !important;
  }
  .gap-xl-5 {
    gap: 60px !important;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 5px !important;
  }
  .row-gap-xl-2 {
    row-gap: 10px !important;
  }
  .row-gap-xl-3 {
    row-gap: 20px !important;
  }
  .row-gap-xl-4 {
    row-gap: 30px !important;
  }
  .row-gap-xl-5 {
    row-gap: 60px !important;
  }
  .column-gap-xl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    column-gap: 5px !important;
  }
  .column-gap-xl-2 {
    column-gap: 10px !important;
  }
  .column-gap-xl-3 {
    column-gap: 20px !important;
  }
  .column-gap-xl-4 {
    column-gap: 30px !important;
  }
  .column-gap-xl-5 {
    column-gap: 60px !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: 1600px) {
  .float-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .object-fit-xxl-contain {
    object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    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: 5px !important;
  }
  .m-xxl-2 {
    margin: 10px !important;
  }
  .m-xxl-3 {
    margin: 20px !important;
  }
  .m-xxl-4 {
    margin: 30px !important;
  }
  .m-xxl-5 {
    margin: 60px !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 5px !important;
    margin-left: 5px !important;
  }
  .mx-xxl-2 {
    margin-right: 10px !important;
    margin-left: 10px !important;
  }
  .mx-xxl-3 {
    margin-right: 20px !important;
    margin-left: 20px !important;
  }
  .mx-xxl-4 {
    margin-right: 30px !important;
    margin-left: 30px !important;
  }
  .mx-xxl-5 {
    margin-right: 60px !important;
    margin-left: 60px !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: 5px !important;
    margin-bottom: 5px !important;
  }
  .my-xxl-2 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .my-xxl-3 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .my-xxl-4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .my-xxl-5 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 5px !important;
  }
  .mt-xxl-2 {
    margin-top: 10px !important;
  }
  .mt-xxl-3 {
    margin-top: 20px !important;
  }
  .mt-xxl-4 {
    margin-top: 30px !important;
  }
  .mt-xxl-5 {
    margin-top: 60px !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 5px !important;
  }
  .me-xxl-2 {
    margin-right: 10px !important;
  }
  .me-xxl-3 {
    margin-right: 20px !important;
  }
  .me-xxl-4 {
    margin-right: 30px !important;
  }
  .me-xxl-5 {
    margin-right: 60px !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 5px !important;
  }
  .mb-xxl-2 {
    margin-bottom: 10px !important;
  }
  .mb-xxl-3 {
    margin-bottom: 20px !important;
  }
  .mb-xxl-4 {
    margin-bottom: 30px !important;
  }
  .mb-xxl-5 {
    margin-bottom: 60px !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 5px !important;
  }
  .ms-xxl-2 {
    margin-left: 10px !important;
  }
  .ms-xxl-3 {
    margin-left: 20px !important;
  }
  .ms-xxl-4 {
    margin-left: 30px !important;
  }
  .ms-xxl-5 {
    margin-left: 60px !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 5px !important;
  }
  .p-xxl-2 {
    padding: 10px !important;
  }
  .p-xxl-3 {
    padding: 20px !important;
  }
  .p-xxl-4 {
    padding: 30px !important;
  }
  .p-xxl-5 {
    padding: 60px !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
  .px-xxl-2 {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  .px-xxl-3 {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
  .px-xxl-4 {
    padding-right: 30px !important;
    padding-left: 30px !important;
  }
  .px-xxl-5 {
    padding-right: 60px !important;
    padding-left: 60px !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .py-xxl-2 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .py-xxl-3 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .py-xxl-4 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .py-xxl-5 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 5px !important;
  }
  .pt-xxl-2 {
    padding-top: 10px !important;
  }
  .pt-xxl-3 {
    padding-top: 20px !important;
  }
  .pt-xxl-4 {
    padding-top: 30px !important;
  }
  .pt-xxl-5 {
    padding-top: 60px !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 5px !important;
  }
  .pe-xxl-2 {
    padding-right: 10px !important;
  }
  .pe-xxl-3 {
    padding-right: 20px !important;
  }
  .pe-xxl-4 {
    padding-right: 30px !important;
  }
  .pe-xxl-5 {
    padding-right: 60px !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 5px !important;
  }
  .pb-xxl-2 {
    padding-bottom: 10px !important;
  }
  .pb-xxl-3 {
    padding-bottom: 20px !important;
  }
  .pb-xxl-4 {
    padding-bottom: 30px !important;
  }
  .pb-xxl-5 {
    padding-bottom: 60px !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 5px !important;
  }
  .ps-xxl-2 {
    padding-left: 10px !important;
  }
  .ps-xxl-3 {
    padding-left: 20px !important;
  }
  .ps-xxl-4 {
    padding-left: 30px !important;
  }
  .ps-xxl-5 {
    padding-left: 60px !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 5px !important;
  }
  .gap-xxl-2 {
    gap: 10px !important;
  }
  .gap-xxl-3 {
    gap: 20px !important;
  }
  .gap-xxl-4 {
    gap: 30px !important;
  }
  .gap-xxl-5 {
    gap: 60px !important;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 5px !important;
  }
  .row-gap-xxl-2 {
    row-gap: 10px !important;
  }
  .row-gap-xxl-3 {
    row-gap: 20px !important;
  }
  .row-gap-xxl-4 {
    row-gap: 30px !important;
  }
  .row-gap-xxl-5 {
    row-gap: 60px !important;
  }
  .column-gap-xxl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    column-gap: 5px !important;
  }
  .column-gap-xxl-2 {
    column-gap: 10px !important;
  }
  .column-gap-xxl-3 {
    column-gap: 20px !important;
  }
  .column-gap-xxl-4 {
    column-gap: 30px !important;
  }
  .column-gap-xxl-5 {
    column-gap: 60px !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;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 10px 10px;
  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: 0.7;
}
.hamburger.is-active:hover {
  opacity: 0.7;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #7D4B37;
}

.hamburger-box {
  width: 27px;
  height: 16px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 27px;
  height: 2px;
  background-color: #7D4B37;
  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: -7px;
}
.hamburger-inner::after {
  bottom: -7px;
}

/*
 * 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: -14px;
  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, -7px, 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);
}

.swal2-popup.swal2-toast {
  box-sizing: border-box;
  grid-column: 1/4 !important;
  grid-row: 1/4 !important;
  grid-template-columns: min-content auto min-content;
  padding: 1em;
  overflow-y: hidden;
  background: #fff;
  box-shadow: 0 0 1px hsla(0, 0%, 0%, 0.075), 0 1px 2px hsla(0, 0%, 0%, 0.075), 1px 2px 4px hsla(0, 0%, 0%, 0.075), 1px 3px 8px hsla(0, 0%, 0%, 0.075), 2px 4px 16px hsla(0, 0%, 0%, 0.075);
  pointer-events: all;
}
.swal2-popup.swal2-toast > * {
  grid-column: 2;
}
.swal2-popup.swal2-toast .swal2-title {
  margin: 0.5em 1em;
  padding: 0;
  font-size: 1em;
  text-align: initial;
}
.swal2-popup.swal2-toast .swal2-loading {
  justify-content: center;
}
.swal2-popup.swal2-toast .swal2-input {
  height: 2em;
  margin: 0.5em;
  font-size: 1em;
}
.swal2-popup.swal2-toast .swal2-validation-message {
  font-size: 1em;
}
.swal2-popup.swal2-toast .swal2-footer {
  margin: 0.5em 0 0;
  padding: 0.5em 0 0;
  font-size: 0.8em;
}
.swal2-popup.swal2-toast .swal2-close {
  grid-column: 3/3;
  grid-row: 1/99;
  align-self: center;
  width: 0.8em;
  height: 0.8em;
  margin: 0;
  font-size: 2em;
}
.swal2-popup.swal2-toast .swal2-html-container {
  margin: 0.5em 1em;
  padding: 0;
  overflow: initial;
  font-size: 1em;
  text-align: initial;
}
.swal2-popup.swal2-toast .swal2-html-container:empty {
  padding: 0;
}
.swal2-popup.swal2-toast .swal2-loader {
  grid-column: 1;
  grid-row: 1/99;
  align-self: center;
  width: 2em;
  height: 2em;
  margin: 0.25em;
}
.swal2-popup.swal2-toast .swal2-icon {
  grid-column: 1;
  grid-row: 1/99;
  align-self: center;
  width: 2em;
  min-width: 2em;
  height: 2em;
  margin: 0 0.5em 0 0;
}
.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content {
  display: flex;
  align-items: center;
  font-size: 1.8em;
  font-weight: bold;
}
.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring {
  width: 2em;
  height: 2em;
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line] {
  top: 0.875em;
  width: 1.375em;
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left] {
  left: 0.3125em;
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right] {
  right: 0.3125em;
}
.swal2-popup.swal2-toast .swal2-actions {
  justify-content: flex-start;
  height: auto;
  margin: 0;
  margin-top: 0.5em;
  padding: 0 0.5em;
}
.swal2-popup.swal2-toast .swal2-styled {
  margin: 0.25em 0.5em;
  padding: 0.4em 0.6em;
  font-size: 1em;
}
.swal2-popup.swal2-toast .swal2-success {
  border-color: #a5dc86;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line] {
  position: absolute;
  width: 1.6em;
  height: 3em;
  border-radius: 50%;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left] {
  top: -0.8em;
  left: -0.5em;
  transform: rotate(-45deg);
  transform-origin: 2em 2em;
  border-radius: 4em 0 0 4em;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right] {
  top: -0.25em;
  left: 0.9375em;
  transform-origin: 0 1.5em;
  border-radius: 0 4em 4em 0;
}
.swal2-popup.swal2-toast .swal2-success .swal2-success-ring {
  width: 2em;
  height: 2em;
}
.swal2-popup.swal2-toast .swal2-success .swal2-success-fix {
  top: 0;
  left: 0.4375em;
  width: 0.4375em;
  height: 2.6875em;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line] {
  height: 0.3125em;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip] {
  top: 1.125em;
  left: 0.1875em;
  width: 0.75em;
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long] {
  top: 0.9375em;
  right: 0.1875em;
  width: 1.375em;
}
.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip {
  animation: swal2-toast-animate-success-line-tip 0.75s;
}
.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long {
  animation: swal2-toast-animate-success-line-long 0.75s;
}
.swal2-popup.swal2-toast.swal2-show {
  animation: swal2-toast-show 0.5s;
}
.swal2-popup.swal2-toast.swal2-hide {
  animation: swal2-toast-hide 0.1s forwards;
}

div:where(.swal2-container) {
  display: grid;
  position: fixed;
  z-index: 1060;
  inset: 0;
  box-sizing: border-box;
  grid-template-areas: "top-start     top            top-end" "center-start  center         center-end" "bottom-start  bottom-center  bottom-end";
  grid-template-rows: minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);
  height: 100%;
  padding: 0.625em;
  overflow-x: hidden;
  transition: background-color 0.1s;
  -webkit-overflow-scrolling: touch;
}
div:where(.swal2-container).swal2-backdrop-show, div:where(.swal2-container).swal2-noanimation {
  background: rgba(0, 0, 0, 0.4);
}
div:where(.swal2-container).swal2-backdrop-hide {
  background: transparent !important;
}
div:where(.swal2-container).swal2-top-start, div:where(.swal2-container).swal2-center-start, div:where(.swal2-container).swal2-bottom-start {
  grid-template-columns: minmax(0, 1fr) auto auto;
}
div:where(.swal2-container).swal2-top, div:where(.swal2-container).swal2-center, div:where(.swal2-container).swal2-bottom {
  grid-template-columns: auto minmax(0, 1fr) auto;
}
div:where(.swal2-container).swal2-top-end, div:where(.swal2-container).swal2-center-end, div:where(.swal2-container).swal2-bottom-end {
  grid-template-columns: auto auto minmax(0, 1fr);
}
div:where(.swal2-container).swal2-top-start > .swal2-popup {
  align-self: start;
}
div:where(.swal2-container).swal2-top > .swal2-popup {
  grid-column: 2;
  place-self: start center;
}
div:where(.swal2-container).swal2-top-end > .swal2-popup, div:where(.swal2-container).swal2-top-right > .swal2-popup {
  grid-column: 3;
  place-self: start end;
}
div:where(.swal2-container).swal2-center-start > .swal2-popup, div:where(.swal2-container).swal2-center-left > .swal2-popup {
  grid-row: 2;
  align-self: center;
}
div:where(.swal2-container).swal2-center > .swal2-popup {
  grid-column: 2;
  grid-row: 2;
  place-self: center center;
}
div:where(.swal2-container).swal2-center-end > .swal2-popup, div:where(.swal2-container).swal2-center-right > .swal2-popup {
  grid-column: 3;
  grid-row: 2;
  place-self: center end;
}
div:where(.swal2-container).swal2-bottom-start > .swal2-popup, div:where(.swal2-container).swal2-bottom-left > .swal2-popup {
  grid-column: 1;
  grid-row: 3;
  align-self: end;
}
div:where(.swal2-container).swal2-bottom > .swal2-popup {
  grid-column: 2;
  grid-row: 3;
  place-self: end center;
}
div:where(.swal2-container).swal2-bottom-end > .swal2-popup, div:where(.swal2-container).swal2-bottom-right > .swal2-popup {
  grid-column: 3;
  grid-row: 3;
  place-self: end end;
}
div:where(.swal2-container).swal2-grow-row > .swal2-popup, div:where(.swal2-container).swal2-grow-fullscreen > .swal2-popup {
  grid-column: 1/4;
  width: 100%;
}
div:where(.swal2-container).swal2-grow-column > .swal2-popup, div:where(.swal2-container).swal2-grow-fullscreen > .swal2-popup {
  grid-row: 1/4;
  align-self: stretch;
}
div:where(.swal2-container).swal2-no-transition {
  transition: none !important;
}
div:where(.swal2-container) div:where(.swal2-popup) {
  display: none;
  position: relative;
  box-sizing: border-box;
  grid-template-columns: minmax(0, 100%);
  width: 32em;
  max-width: 100%;
  padding: 0 0 1.25em;
  border: none;
  border-radius: 5px;
  background: #fff;
  color: #545454;
  font-family: inherit;
  font-size: 1rem;
}
div:where(.swal2-container) div:where(.swal2-popup):focus {
  outline: none;
}
div:where(.swal2-container) div:where(.swal2-popup).swal2-loading {
  overflow-y: hidden;
}
div:where(.swal2-container) h2:where(.swal2-title) {
  position: relative;
  max-width: 100%;
  margin: 0;
  padding: 0.8em 1em 0;
  color: inherit;
  font-size: 1.875em;
  font-weight: 600;
  text-align: center;
  text-transform: none;
  word-wrap: break-word;
}
div:where(.swal2-container) div:where(.swal2-actions) {
  display: flex;
  z-index: 1;
  box-sizing: border-box;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: auto;
  margin: 1.25em auto 0;
  padding: 0;
}
div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled[disabled] {
  opacity: 0.4;
}
div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover {
  background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
}
div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:active {
  background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
}
div:where(.swal2-container) div:where(.swal2-loader) {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.2em;
  height: 2.2em;
  margin: 0 1.875em;
  animation: swal2-rotate-loading 1.5s linear 0s infinite normal;
  border-width: 0.25em;
  border-style: solid;
  border-radius: 100%;
  border-color: #2778c4 transparent #2778c4 transparent;
}
div:where(.swal2-container) button:where(.swal2-styled) {
  margin: 0.3125em;
  padding: 0.625em 1.1em;
  transition: box-shadow 0.1s;
  box-shadow: 0 0 0 3px transparent;
  font-weight: 500;
}
div:where(.swal2-container) button:where(.swal2-styled):not([disabled]) {
  cursor: pointer;
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm) {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #7066e0;
  color: #fff;
  font-size: 1em;
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):focus-visible {
  box-shadow: 0 0 0 3px rgba(112, 102, 224, 0.5);
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny) {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #dc3741;
  color: #fff;
  font-size: 1em;
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):focus-visible {
  box-shadow: 0 0 0 3px rgba(220, 55, 65, 0.5);
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel) {
  border: 0;
  border-radius: 0.25em;
  background: initial;
  background-color: #6e7881;
  color: #fff;
  font-size: 1em;
}
div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):focus-visible {
  box-shadow: 0 0 0 3px rgba(110, 120, 129, 0.5);
}
div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus-visible {
  box-shadow: 0 0 0 3px rgba(100, 150, 200, 0.5);
}
div:where(.swal2-container) button:where(.swal2-styled):focus-visible {
  outline: none;
}
div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner {
  border: 0;
}
div:where(.swal2-container) div:where(.swal2-footer) {
  margin: 1em 0 0;
  padding: 1em 1em 0;
  border-top: 1px solid #eee;
  color: inherit;
  font-size: 1em;
  text-align: center;
}
div:where(.swal2-container) .swal2-timer-progress-bar-container {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  grid-column: auto !important;
  overflow: hidden;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}
div:where(.swal2-container) div:where(.swal2-timer-progress-bar) {
  width: 100%;
  height: 0.25em;
  background: rgba(0, 0, 0, 0.2);
}
div:where(.swal2-container) img:where(.swal2-image) {
  max-width: 100%;
  margin: 2em auto 1em;
}
div:where(.swal2-container) button:where(.swal2-close) {
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 1.2em;
  height: 1.2em;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: -1.2em;
  padding: 0;
  overflow: hidden;
  transition: color 0.1s, box-shadow 0.1s;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #ccc;
  font-family: monospace;
  font-size: 2.5em;
  cursor: pointer;
  justify-self: end;
}
div:where(.swal2-container) button:where(.swal2-close):hover {
  transform: none;
  background: transparent;
  color: #f27474;
}
div:where(.swal2-container) button:where(.swal2-close):focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 3px rgba(100, 150, 200, 0.5);
}
div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner {
  border: 0;
}
div:where(.swal2-container) .swal2-html-container {
  z-index: 1;
  justify-content: center;
  margin: 0;
  padding: 1em 1.6em 0.3em;
  overflow: auto;
  color: inherit;
  font-size: 1.125em;
  font-weight: normal;
  line-height: normal;
  text-align: center;
  word-wrap: break-word;
  word-break: break-word;
}
div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea),
div:where(.swal2-container) select:where(.swal2-select),
div:where(.swal2-container) div:where(.swal2-radio),
div:where(.swal2-container) label:where(.swal2-checkbox) {
  margin: 1em 2em 3px;
}
div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea) {
  box-sizing: border-box;
  width: auto;
  transition: border-color 0.1s, box-shadow 0.1s;
  border: 1px solid #d9d9d9;
  border-radius: 0.1875em;
  background: transparent;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;
  color: inherit;
  font-size: 1.125em;
}
div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,
div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,
div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror {
  border-color: #f27474 !important;
  box-shadow: 0 0 2px #f27474 !important;
}
div:where(.swal2-container) input:where(.swal2-input):focus,
div:where(.swal2-container) input:where(.swal2-file):focus,
div:where(.swal2-container) textarea:where(.swal2-textarea):focus {
  border: 1px solid #b4dbed;
  outline: none;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px rgba(100, 150, 200, 0.5);
}
div:where(.swal2-container) input:where(.swal2-input)::placeholder,
div:where(.swal2-container) input:where(.swal2-file)::placeholder,
div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder {
  color: #ccc;
}
div:where(.swal2-container) .swal2-range {
  margin: 1em 2em 3px;
  background: #fff;
}
div:where(.swal2-container) .swal2-range input {
  width: 80%;
}
div:where(.swal2-container) .swal2-range output {
  width: 20%;
  color: inherit;
  font-weight: 600;
  text-align: center;
}
div:where(.swal2-container) .swal2-range input,
div:where(.swal2-container) .swal2-range output {
  height: 2.625em;
  padding: 0;
  font-size: 1.125em;
  line-height: 2.625em;
}
div:where(.swal2-container) .swal2-input {
  height: 2.625em;
  padding: 0 0.75em;
}
div:where(.swal2-container) .swal2-file {
  width: 75%;
  margin-right: auto;
  margin-left: auto;
  background: transparent;
  font-size: 1.125em;
}
div:where(.swal2-container) .swal2-textarea {
  height: 6.75em;
  padding: 0.75em;
}
div:where(.swal2-container) .swal2-select {
  min-width: 50%;
  max-width: 100%;
  padding: 0.375em 0.625em;
  background: transparent;
  color: inherit;
  font-size: 1.125em;
}
div:where(.swal2-container) .swal2-radio,
div:where(.swal2-container) .swal2-checkbox {
  align-items: center;
  justify-content: center;
  background: #fff;
  color: inherit;
}
div:where(.swal2-container) .swal2-radio label,
div:where(.swal2-container) .swal2-checkbox label {
  margin: 0 0.6em;
  font-size: 1.125em;
}
div:where(.swal2-container) .swal2-radio input,
div:where(.swal2-container) .swal2-checkbox input {
  flex-shrink: 0;
  margin: 0 0.4em;
}
div:where(.swal2-container) label:where(.swal2-input-label) {
  display: flex;
  justify-content: center;
  margin: 1em auto 0;
}
div:where(.swal2-container) div:where(.swal2-validation-message) {
  align-items: center;
  justify-content: center;
  margin: 1em 0 0;
  padding: 0.625em;
  overflow: hidden;
  background: #f0f0f0;
  color: #666666;
  font-size: 1em;
  font-weight: 300;
}
div:where(.swal2-container) div:where(.swal2-validation-message)::before {
  content: "!";
  display: inline-block;
  width: 1.5em;
  min-width: 1.5em;
  height: 1.5em;
  margin: 0 0.625em;
  border-radius: 50%;
  background-color: #f27474;
  color: #fff;
  font-weight: 600;
  line-height: 1.5em;
  text-align: center;
}
div:where(.swal2-container) .swal2-progress-steps {
  flex-wrap: wrap;
  align-items: center;
  max-width: 100%;
  margin: 1.25em auto;
  padding: 0;
  background: transparent;
  font-weight: 600;
}
div:where(.swal2-container) .swal2-progress-steps li {
  display: inline-block;
  position: relative;
}
div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step {
  z-index: 20;
  flex-shrink: 0;
  width: 2em;
  height: 2em;
  border-radius: 2em;
  background: #2778c4;
  color: #fff;
  line-height: 2em;
  text-align: center;
}
div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step {
  background: #2778c4;
}
div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step {
  background: #add8e6;
  color: #fff;
}
div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step-line {
  background: #add8e6;
}
div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line {
  z-index: 10;
  flex-shrink: 0;
  width: 2.5em;
  height: 0.4em;
  margin: 0 -1px;
  background: #2778c4;
}

div:where(.swal2-icon) {
  position: relative;
  box-sizing: content-box;
  justify-content: center;
  width: 5em;
  height: 5em;
  margin: 2.5em auto 0.6em;
  border: 0.25em solid transparent;
  border-radius: 50%;
  border-color: #000;
  font-family: inherit;
  line-height: 5em;
  cursor: default;
  user-select: none;
}
div:where(.swal2-icon) .swal2-icon-content {
  display: flex;
  align-items: center;
  font-size: 3.75em;
}
div:where(.swal2-icon).swal2-error {
  border-color: #f27474;
  color: #f27474;
}
div:where(.swal2-icon).swal2-error .swal2-x-mark {
  position: relative;
  flex-grow: 1;
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line] {
  display: block;
  position: absolute;
  top: 2.3125em;
  width: 2.9375em;
  height: 0.3125em;
  border-radius: 0.125em;
  background-color: #f27474;
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left] {
  left: 1.0625em;
  transform: rotate(45deg);
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right] {
  right: 1em;
  transform: rotate(-45deg);
}
div:where(.swal2-icon).swal2-error.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}
div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark {
  animation: swal2-animate-error-x-mark 0.5s;
}
div:where(.swal2-icon).swal2-warning {
  border-color: #facea8;
  color: #f8bb86;
}
div:where(.swal2-icon).swal2-warning.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}
div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-i-mark 0.5s;
}
div:where(.swal2-icon).swal2-info {
  border-color: #9de0f6;
  color: #3fc3ee;
}
div:where(.swal2-icon).swal2-info.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}
div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-i-mark 0.8s;
}
div:where(.swal2-icon).swal2-question {
  border-color: #c9dae1;
  color: #87adbd;
}
div:where(.swal2-icon).swal2-question.swal2-icon-show {
  animation: swal2-animate-error-icon 0.5s;
}
div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content {
  animation: swal2-animate-question-mark 0.8s;
}
div:where(.swal2-icon).swal2-success {
  border-color: #a5dc86;
  color: #a5dc86;
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line] {
  position: absolute;
  width: 3.75em;
  height: 7.5em;
  border-radius: 50%;
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left] {
  top: -0.4375em;
  left: -2.0635em;
  transform: rotate(-45deg);
  transform-origin: 3.75em 3.75em;
  border-radius: 7.5em 0 0 7.5em;
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right] {
  top: -0.6875em;
  left: 1.875em;
  transform: rotate(-45deg);
  transform-origin: 0 3.75em;
  border-radius: 0 7.5em 7.5em 0;
}
div:where(.swal2-icon).swal2-success .swal2-success-ring {
  position: absolute;
  z-index: 2;
  top: -0.25em;
  left: -0.25em;
  box-sizing: content-box;
  width: 100%;
  height: 100%;
  border: 0.25em solid rgba(165, 220, 134, 0.3);
  border-radius: 50%;
}
div:where(.swal2-icon).swal2-success .swal2-success-fix {
  position: absolute;
  z-index: 1;
  top: 0.5em;
  left: 1.625em;
  width: 0.4375em;
  height: 5.625em;
  transform: rotate(-45deg);
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-line] {
  display: block;
  position: absolute;
  z-index: 2;
  height: 0.3125em;
  border-radius: 0.125em;
  background-color: #a5dc86;
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip] {
  top: 2.875em;
  left: 0.8125em;
  width: 1.5625em;
  transform: rotate(45deg);
}
div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long] {
  top: 2.375em;
  right: 0.5em;
  width: 2.9375em;
  transform: rotate(-45deg);
}
div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip {
  animation: swal2-animate-success-line-tip 0.75s;
}
div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long {
  animation: swal2-animate-success-line-long 0.75s;
}
div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right {
  animation: swal2-rotate-success-circular-line 4.25s ease-in;
}

[class^=swal2] {
  -webkit-tap-highlight-color: transparent;
}

.swal2-show {
  animation: swal2-show 0.3s;
}

.swal2-hide {
  animation: swal2-hide 0.15s forwards;
}

.swal2-noanimation {
  transition: none;
}

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

.swal2-rtl .swal2-close {
  margin-right: initial;
  margin-left: 0;
}
.swal2-rtl .swal2-timer-progress-bar {
  right: 0;
  left: auto;
}

@keyframes swal2-toast-show {
  0% {
    transform: translateY(-0.625em) rotateZ(2deg);
  }
  33% {
    transform: translateY(0) rotateZ(-2deg);
  }
  66% {
    transform: translateY(0.3125em) rotateZ(2deg);
  }
  100% {
    transform: translateY(0) rotateZ(0deg);
  }
}
@keyframes swal2-toast-hide {
  100% {
    transform: rotateZ(1deg);
    opacity: 0;
  }
}
@keyframes swal2-toast-animate-success-line-tip {
  0% {
    top: 0.5625em;
    left: 0.0625em;
    width: 0;
  }
  54% {
    top: 0.125em;
    left: 0.125em;
    width: 0;
  }
  70% {
    top: 0.625em;
    left: -0.25em;
    width: 1.625em;
  }
  84% {
    top: 1.0625em;
    left: 0.75em;
    width: 0.5em;
  }
  100% {
    top: 1.125em;
    left: 0.1875em;
    width: 0.75em;
  }
}
@keyframes swal2-toast-animate-success-line-long {
  0% {
    top: 1.625em;
    right: 1.375em;
    width: 0;
  }
  65% {
    top: 1.25em;
    right: 0.9375em;
    width: 0;
  }
  84% {
    top: 0.9375em;
    right: 0;
    width: 1.125em;
  }
  100% {
    top: 0.9375em;
    right: 0.1875em;
    width: 1.375em;
  }
}
@keyframes swal2-show {
  0% {
    transform: scale(0.7);
  }
  45% {
    transform: scale(1.05);
  }
  80% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes swal2-hide {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}
@keyframes swal2-animate-success-line-tip {
  0% {
    top: 1.1875em;
    left: 0.0625em;
    width: 0;
  }
  54% {
    top: 1.0625em;
    left: 0.125em;
    width: 0;
  }
  70% {
    top: 2.1875em;
    left: -0.375em;
    width: 3.125em;
  }
  84% {
    top: 3em;
    left: 1.3125em;
    width: 1.0625em;
  }
  100% {
    top: 2.8125em;
    left: 0.8125em;
    width: 1.5625em;
  }
}
@keyframes swal2-animate-success-line-long {
  0% {
    top: 3.375em;
    right: 2.875em;
    width: 0;
  }
  65% {
    top: 3.375em;
    right: 2.875em;
    width: 0;
  }
  84% {
    top: 2.1875em;
    right: 0;
    width: 3.4375em;
  }
  100% {
    top: 2.375em;
    right: 0.5em;
    width: 2.9375em;
  }
}
@keyframes swal2-rotate-success-circular-line {
  0% {
    transform: rotate(-45deg);
  }
  5% {
    transform: rotate(-45deg);
  }
  12% {
    transform: rotate(-405deg);
  }
  100% {
    transform: rotate(-405deg);
  }
}
@keyframes swal2-animate-error-x-mark {
  0% {
    margin-top: 1.625em;
    transform: scale(0.4);
    opacity: 0;
  }
  50% {
    margin-top: 1.625em;
    transform: scale(0.4);
    opacity: 0;
  }
  80% {
    margin-top: -0.375em;
    transform: scale(1.15);
  }
  100% {
    margin-top: 0;
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes swal2-animate-error-icon {
  0% {
    transform: rotateX(100deg);
    opacity: 0;
  }
  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}
@keyframes swal2-rotate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes swal2-animate-question-mark {
  0% {
    transform: rotateY(-360deg);
  }
  100% {
    transform: rotateY(0);
  }
}
@keyframes swal2-animate-i-mark {
  0% {
    transform: rotateZ(45deg);
    opacity: 0;
  }
  25% {
    transform: rotateZ(-25deg);
    opacity: 0.4;
  }
  50% {
    transform: rotateZ(15deg);
    opacity: 0.8;
  }
  75% {
    transform: rotateZ(-5deg);
    opacity: 1;
  }
  100% {
    transform: rotateX(0);
    opacity: 1;
  }
}
body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
  overflow: hidden;
}
body.swal2-height-auto {
  height: auto !important;
}
body.swal2-no-backdrop .swal2-container {
  background-color: transparent !important;
  pointer-events: none;
}
body.swal2-no-backdrop .swal2-container .swal2-popup {
  pointer-events: all;
}
body.swal2-no-backdrop .swal2-container .swal2-modal {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
@media print {
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
    overflow-y: scroll !important;
  }
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) > [aria-hidden=true] {
    display: none;
  }
  body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container {
    position: static !important;
  }
}
body.swal2-toast-shown .swal2-container {
  box-sizing: border-box;
  width: 360px;
  max-width: 100%;
  background-color: transparent;
  pointer-events: none;
}
body.swal2-toast-shown .swal2-container.swal2-top {
  inset: 0 auto auto 50%;
  transform: translateX(-50%);
}
body.swal2-toast-shown .swal2-container.swal2-top-end, body.swal2-toast-shown .swal2-container.swal2-top-right {
  inset: 0 0 auto auto;
}
body.swal2-toast-shown .swal2-container.swal2-top-start, body.swal2-toast-shown .swal2-container.swal2-top-left {
  inset: 0 auto auto 0;
}
body.swal2-toast-shown .swal2-container.swal2-center-start, body.swal2-toast-shown .swal2-container.swal2-center-left {
  inset: 50% auto auto 0;
  transform: translateY(-50%);
}
body.swal2-toast-shown .swal2-container.swal2-center {
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
}
body.swal2-toast-shown .swal2-container.swal2-center-end, body.swal2-toast-shown .swal2-container.swal2-center-right {
  inset: 50% 0 auto auto;
  transform: translateY(-50%);
}
body.swal2-toast-shown .swal2-container.swal2-bottom-start, body.swal2-toast-shown .swal2-container.swal2-bottom-left {
  inset: auto auto 0 0;
}
body.swal2-toast-shown .swal2-container.swal2-bottom {
  inset: auto auto 0 50%;
  transform: translateX(-50%);
}
body.swal2-toast-shown .swal2-container.swal2-bottom-end, body.swal2-toast-shown .swal2-container.swal2-bottom-right {
  inset: auto 0 0 auto;
}

* {
  -webkit-font-smoothing: antialiased;
}

.sf-toolbar {
  display: none !important;
}

.lucide,
[data-lucide] {
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  vertical-align: -0.125em;
  stroke-width: 1px;
}

/* iOS-only-ish */
@supports (-webkit-touch-callout: none) {
  input,
  select,
  textarea,
  button {
    font-size: 16px;
  }
}
body {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: #7D4B37;
  background-color: #F5F0EB;
  font-size: 0.88rem;
  font-weight: 400;
  min-width: 350px;
  overflow-x: hidden;
}

main[role=main] {
  overflow-x: hidden;
}
@media (min-width: 768px) {
  main[role=main] {
    overflow-x: visible;
  }
}

/* Overlay globale per loading AJAX/Fetch */
#global-loading {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(4px);
  z-index: 99999;
  pointer-events: all;
  cursor: progress;
}

#global-loading.on {
  display: flex;
}

/* Loader circolare */
#global-loading .gl-spinner {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 3px solid rgba(125, 75, 55, 0.22);
  border-top-color: #7D4B37;
  animation: global-loader-spin 0.8s linear infinite;
}

@keyframes global-loader-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  #global-loading .gl-spinner {
    animation-duration: 1.8s;
  }
}
/* (opzionale) oscura lo scroll/interazioni del body */
body.is-loading {
  touch-action: none;
}

.swal2-backdrop-show {
  backdrop-filter: blur(4px);
}

/* Stili personalizzati per la tooltip di jQuery UI */
.custom-tooltip {
  background-color: #7D4B37;
  border-color: #7D4B37;
  color: #7D4B37;
  border-radius: 3px;
  padding: 8px 12px;
  font-size: 14px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  /* Stili per la freccia della tooltip */
}
.custom-tooltip .ui-tooltip-content::before {
  content: "";
  position: absolute;
  bottom: -10px;
  /* Posiziona sopra la tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #7D4B37 transparent transparent transparent;
}

a {
  color: #7D4B37;
  text-decoration: none;
}
a:focus {
  text-decoration: underline;
}
@media (hover: hover) {
  a:hover {
    text-decoration: underline;
  }
}
a:focus {
  color: inherit;
}
a:active {
  color: inherit;
}
@media (hover: hover) {
  a:hover {
    color: inherit;
  }
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
}

.password-wrapper {
  position: relative;
}

.password-toggle-btn {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  /* regola se serve */
  transform: translateY(-50%);
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  line-height: 1;
}

.password-toggle-btn i {
  font-size: 1rem;
  /* dimensione icona Bootstrap */
}

.text-primary {
  color: #7D4B37;
}

.btn {
  display: flex;
  line-height: 1;
  justify-content: center;
  align-items: center;
  transition: background-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  padding: 10px 20px;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  border: 1px solid #7D4B37;
  border-radius: 3px;
  text-decoration: none;
}
.btn:focus, .btn:active, .btn:hover, .btn:focus:active, .btn:focus-visible {
  text-decoration: none;
}
.btn.btn-lg {
  padding: 15px 25px;
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: #F5F0EB !important;
  pointer-events: none;
  background-color: #7D4B37 !important;
  border-color: #7D4B37 !important;
  opacity: 0.6;
}

button,
input[type=button],
input[type=submit],
input[type=reset],
.button {
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
}

.button {
  background-color: #7D4B37;
  border: 1px solid #7D4B37;
  color: #F5F0EB;
  border-radius: 3px;
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
  color: #F5F0EB !important;
  background-color: #7D4B37;
  border-color: #7D4B37;
  opacity: 0.6;
}

.dashedline {
  position: relative;
}

.blackStripes {
  position: relative;
}

.boxError {
  margin-bottom: 24px;
  text-transform: uppercase;
  color: #7D4B37;
}
@media (min-width: 768px) {
  .boxError {
    margin-bottom: 50px;
  }
}
.boxError .errorGen {
  min-height: 300px;
  padding: 30px;
}

.error-gen-icon {
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto 16px;
  color: #7D4B37;
  stroke-width: 1px;
}

.is-mobile-menu-open .dashedline {
  background-color: #7D4B37;
}
.is-mobile-menu-open .dashedline:after {
  border: none;
  background-color: #7D4B37;
}

img {
  max-width: 100%;
}

img.background-cover,
img.background-contain {
  object-position: 50% 50%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: auto;
  width: 94%;
}
@media (min-width: 576px) {
  img.background-cover,
  img.background-contain {
    width: 100%;
  }
}

img.background-cover {
  object-fit: cover;
}

img.background-contain {
  object-fit: contain;
}

.is-mobile-menu-open main[role=main] {
  overflow: hidden;
}

.main-padding {
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 576px) {
  .main-padding {
    padding-left: 24px;
    padding-right: 24px;
  }
}
@media (min-width: 768px) {
  .main-padding {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .main-padding {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (min-width: 1400px) {
  .main-padding {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 1600px) {
  .main-padding {
    padding-left: 100px;
    padding-right: 100px;
  }
}
.main-padding.other-pages {
  margin-top: 110px;
  padding-top: 30px;
}
@media (min-width: 576px) {
  .main-padding.other-pages {
    margin-top: 110px;
  }
}
@media (min-width: 576px) {
  .main-padding.other-pages {
    padding-top: 70px;
  }
}
.main-padding.account-page {
  padding: 30px 15px;
  position: relative;
  margin-top: 110px;
  margin-bottom: 0;
}
@media (min-width: 576px) {
  .main-padding.account-page {
    padding: 70px;
  }
}
@media (min-width: 576px) {
  .main-padding.account-page {
    margin-top: 110px;
  }
}
.main-padding.account-page * {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

.app-max-width {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.full-width {
  margin-left: -10px;
  margin-right: -10px;
}
@media (min-width: 576px) {
  .full-width {
    margin-left: -24px;
    margin-right: -24px;
  }
}
@media (min-width: 768px) {
  .full-width {
    margin-left: -30px;
    margin-right: -30px;
  }
}
@media (min-width: 992px) {
  .full-width {
    margin-left: -40px;
    margin-right: -40px;
  }
}
@media (min-width: 1400px) {
  .full-width {
    margin-left: -80px;
    margin-right: -80px;
  }
}
@media (min-width: 1600px) {
  .full-width {
    margin-left: -100px;
    margin-right: -100px;
  }
}

.sub-main-padding {
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 576px) {
  .sub-main-padding {
    padding-left: 18px;
    padding-right: 18px;
  }
}
@media (min-width: 768px) {
  .sub-main-padding {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 992px) {
  .sub-main-padding {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 1400px) {
  .sub-main-padding {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media (min-width: 1600px) {
  .sub-main-padding {
    padding-left: 80px;
    padding-right: 80px;
  }
}

.main-margin {
  margin-top: 50px;
  margin-bottom: 50px;
}
@media (min-width: 576px) {
  .main-margin {
    margin-top: 51.88px;
    margin-bottom: 51.88px;
  }
}
@media (min-width: 768px) {
  .main-margin {
    margin-top: 53.75px;
    margin-bottom: 53.75px;
  }
}
@media (min-width: 992px) {
  .main-margin {
    margin-top: 56.25px;
    margin-bottom: 56.25px;
  }
}
@media (min-width: 1400px) {
  .main-margin {
    margin-top: 58.13px;
    margin-bottom: 58.13px;
  }
}
@media (min-width: 1600px) {
  .main-margin {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}

.sub-main-margin {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 576px) {
  .sub-main-margin {
    margin-top: 31.88px;
    margin-bottom: 31.88px;
  }
}
@media (min-width: 768px) {
  .sub-main-margin {
    margin-top: 33.75px;
    margin-bottom: 33.75px;
  }
}
@media (min-width: 992px) {
  .sub-main-margin {
    margin-top: 36.25px;
    margin-bottom: 36.25px;
  }
}
@media (min-width: 1400px) {
  .sub-main-margin {
    margin-top: 38.13px;
    margin-bottom: 38.13px;
  }
}
@media (min-width: 1600px) {
  .sub-main-margin {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

.thin-scroll,
.medium-scroll {
  scrollbar-color: rgba(var(--theme-color), 1) rgba(var(--theme-color), 0.4);
}
.thin-scroll::-webkit-scrollbar-track, .thin-scroll::-webkit-scrollbar-thumb,
.medium-scroll::-webkit-scrollbar-track,
.medium-scroll::-webkit-scrollbar-thumb {
  border-radius: 0;
}
.thin-scroll::-webkit-scrollbar-track,
.medium-scroll::-webkit-scrollbar-track {
  background-color: rgba(var(--theme-color), 0.4);
}
.thin-scroll::-webkit-scrollbar-thumb,
.medium-scroll::-webkit-scrollbar-thumb {
  transition: background-color 0.3s ease-out;
  background-color: rgba(var(--theme-color), 0.8);
}
.thin-scroll::-webkit-scrollbar-thumb:hover,
.medium-scroll::-webkit-scrollbar-thumb:hover {
  background-color: rgba(var(--theme-color), 1);
}
.thin-scroll::-webkit-scrollbar-corner,
.medium-scroll::-webkit-scrollbar-corner {
  background: rgba(var(--theme-color), 0.4);
}

.thin-scroll {
  scrollbar-width: thin;
}
.thin-scroll::-webkit-scrollbar {
  width: 3px;
  height: 3px;
}

.thin-scroll-h::-webkit-scrollbar {
  height: 3px;
}

.thin-scroll-v::-webkit-scrollbar {
  width: 3px;
}

.medium-scroll::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}

.medium-scroll-v::-webkit-scrollbar {
  width: 7px;
}

.btn {
  font-size: inherit;
}

.accordion-body {
  padding: 20px;
}

strong {
  font-weight: 600 !important;
}

.btn-primary {
  position: relative;
  background-color: #7D4B37;
  transition: background-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1), border-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  text-transform: uppercase;
  color: #F5F0EB;
  border-radius: 3px;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  border: solid 1px #7D4B37;
  font-weight: 300;
  text-decoration: none;
}
.btn-primary:focus, .btn-primary:active, .btn-primary:focus:active {
  color: #F5F0EB !important;
  background-color: #b6d1cb !important;
}
@media (hover: hover) {
  .btn-primary:hover {
    background-color: #F5F0EB;
    border-color: #7D4B37;
    color: #7D4B37 !important;
    text-decoration: none;
  }
}

.btn-secondary {
  position: relative;
  background-color: #DDCFC7;
  transition: background-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1), border-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  text-transform: uppercase;
  color: #F5F0EB;
  border-radius: 3px;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  border: solid 1px #DDCFC7;
  font-weight: 300;
}
.btn-secondary:focus, .btn-secondary:active, .btn-secondary:focus:active {
  background-color: #b6d1cb !important;
}
@media (hover: hover) {
  .btn-secondary:hover {
    background-color: transparent;
    border-color: #7D4B37;
    color: #7D4B37 !important;
  }
}

.btn-dark {
  background-color: #7D4B37;
  border-color: #7D4B37;
  color: #F5F0EB;
}
.btn-dark:focus, .btn-dark:active, .btn-dark:focus:active {
  box-shadow: inset 0 0 0 2px #fff;
}
@media (hover: hover) {
  .btn-dark:hover {
    background-color: #7D4B37;
    border-color: #7D4B37;
    color: #F5F0EB !important;
  }
}

.btn-outline-primary,
.btn-outline-secondary,
.btn-outline-dark {
  background-color: transparent;
  border-color: #7D4B37 !important;
  color: #7D4B37;
  box-shadow: none;
}

.btn-outline-primary:focus,
.btn-outline-secondary:focus,
.btn-outline-dark:focus,
.btn-outline-primary:active,
.btn-outline-secondary:active,
.btn-outline-dark:active {
  background-color: transparent;
  border-color: #FFF;
  color: #F5F0EB;
}

.btn-outline-primary:hover,
.btn-outline-secondary:hover,
.btn-outline-dark:hover {
  background-color: #7D4B37;
  border-color: #7D4B37;
  color: #F5F0EB;
  transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.form-control,
.form-select,
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),
textarea,
select {
  border: 1px solid #DDCFC7;
  border-radius: 3px;
  color: #7D4B37;
  background-color: transparent;
  font-weight: 600;
}

.form-select:focus {
  background-color: transparent;
  border-color: #7D4B37 !important;
  box-shadow: 0 0 0 3px rgba(125, 75, 55, 0.25);
  color: #7D4B37;
}

.form-control {
  padding: 10px 20px;
  text-align: center;
  font-weight: 400;
  display: inline-block;
  margin: 0;
}
@media (min-width: 768px) {
  .form-control {
    margin: 0;
  }
}
.form-control:focus {
  background-color: transparent;
  border-color: #7D4B37 !important;
  box-shadow: 0 0 0 3px rgba(125, 75, 55, 0.25);
  color: #7D4B37 !important;
}

.form-check {
  display: flex;
  margin-top: 2px;
  margin-bottom: 2px;
  align-items: center;
}
.form-check label {
  margin-bottom: 0 !important;
}
.form-check .form-check-input {
  margin-right: 10px;
  flex-shrink: 0;
  border: 1px solid #7D4B37;
  width: 14px;
  height: 14px;
  padding: 0;
  border-radius: 3px;
}
.form-check .form-check-input:checked[type=radio] {
  background-color: #7D4B37;
  border-color: #7D4B37;
}
.form-check .form-check-input:focus {
  box-shadow: 0 0 0 1px rgba(125, 75, 55, 0.25);
  border-color: #7D4B37;
}

.form-group label {
  margin-bottom: 4px;
}

.cookie-bar {
  width: 100%;
  min-height: 100px;
  background: #fff;
  padding: 10px 0;
  position: fixed;
  bottom: -1px;
  left: 0;
  z-index: 100;
  border-top: solid 1px #7D4B37;
}

.btn-accept-cookies {
  margin-top: 30px;
}

:target {
  scroll-margin-top: 120px;
  /* Modifica il valore in base all'altezza della tua header */
}

.swal-width-100 {
  width: 100vw;
}

.swal-wide {
  width: 50% !important;
  padding-top: 20px;
  padding-bottom: 20px;
}

.swal-widest {
  width: 90% !important;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (max-width: 767.98px) {
  .swal-widest {
    width: 100% !important;
  }
}

.swal2-popup {
  border-radius: 6px !important;
  justify-content: start !important;
}
.swal2-popup #basket-shipping-warning {
  text-align: center;
}
.swal2-popup #basket-shipping-warning .shipping-progress {
  margin-top: 8px;
  padding: 10px 10px 8px;
  background-color: #FFF;
  border-radius: 3px;
}
.swal2-popup #basket-shipping-warning .shipping-progress__row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.swal2-popup #basket-shipping-warning .shipping-progress__label {
  color: #707070;
  font-weight: 400;
  white-space: nowrap;
  font-size: 0.75rem;
}
.swal2-popup #basket-shipping-warning .shipping-progress__track {
  position: relative;
  height: 10px;
  flex: 1 1 auto;
  background-color: #dcdcdc;
  border-radius: 3px;
  overflow: visible;
}
.swal2-popup #basket-shipping-warning .shipping-progress__fill {
  height: 100%;
  background-color: #7D4B37;
  border-radius: 3px;
  width: var(--progress);
}
.swal2-popup #basket-shipping-warning .shipping-progress__pin {
  position: absolute;
  top: -26px;
  left: clamp(14px, var(--progress), 100% - 14px);
  transform: translateX(-50%);
  padding: 2px 8px;
  border-radius: 3px;
  background-color: #FFF;
  border: 1px solid #dcdcdc;
  color: #7D4B37;
  font-size: 11px;
  line-height: 1.2;
  white-space: nowrap;
}
.swal2-popup #basket-shipping-warning .shipping-progress__pin::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  border-width: 5px 5px 0 5px;
  border-style: solid;
  border-color: #dcdcdc transparent transparent transparent;
}
.swal2-popup #basket-shipping-warning .shipping-progress__text {
  margin: 10px 0 0;
  color: #7D4B37;
  font-weight: 400;
  justify-content: center !important;
}
.swal2-popup #basket-shipping-warning .shipping-progress__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  line-height: normal;
}
.swal2-popup #basket-shipping-warning .shipping-progress__icon {
  font-size: 20px;
  color: #7D4B37;
}

.swal2-container.swal2-center {
  padding: 10px;
}
.swal2-container .swal2-modal {
  overflow: hidden;
  width: 45em;
  height: auto;
}
.swal2-container .swal2-modal .swal2-html-container {
  font-size: 0.88rem;
}
@media (min-width: 576px) {
  .swal2-container .swal2-modal .swal2-html-container {
    font-size: 1rem;
  }
}
.swal2-container .swal2-modal p {
  color: #7D4B37;
  display: flex;
  justify-content: space-between;
}
.swal2-container .swal2-modal p strong {
  color: #7D4B37;
}
.swal2-container .swal2-modal .swal2-error {
  display: none !important;
}
.swal2-container .swal2-modal .swal2-close {
  display: block !important;
  position: absolute;
  right: 10px;
  top: 10px;
  opacity: 1 !important;
  width: 22px !important;
  height: 22px !important;
  z-index: 2;
  font-size: 18px;
  line-height: 0px;
  border: solid 1px #7D4B37;
  color: #FFF;
  border-radius: 3px;
  background-color: #7D4B37;
  padding: 4px;
}
.swal2-container .swal2-modal .swal2-close:focus {
  box-shadow: none;
}
.swal2-container .swal2-modal .swal2-close svg {
  display: block;
  width: 100%;
  height: 100%;
  stroke: currentColor;
}
.swal2-container .swal2-modal .swal2-title {
  color: #7D4B37;
  padding: 20px 30px 20px;
  text-transform: uppercase;
  font-size: 1.13rem;
  font-weight: 400;
}
@media (min-width: 576px) {
  .swal2-container .swal2-modal .swal2-title {
    font-size: 1.25rem;
  }
}
.swal2-container .swal2-modal .swal2-actions {
  padding: 0px 10%;
  flex-flow: column-reverse;
  width: 100%;
}
@media (min-width: 768px) {
  .swal2-container .swal2-modal .swal2-actions {
    padding: 0px 20%;
  }
}
.swal2-container .swal2-modal .swal2-actions button {
  margin: 10px;
  text-transform: uppercase;
  display: block;
  width: 100%;
  border-radius: 3px;
  font-weight: 300;
}
@keyframes shipping-progress-fill {
  from {
    width: 0;
  }
  to {
    width: var(--progress);
  }
}
.swal-mobile-menu {
  font-size: 14px;
}
.swal-mobile-menu .swal2-content {
  padding: 0px 0px 0px 45px;
  text-align: left;
  overflow: auto;
  margin-left: -43px;
}
.swal-mobile-menu .swal2-content .swal-modal-logo {
  border-bottom: solid 1px #cccccc;
  padding-bottom: 20px;
  margin-top: 10px;
}
.swal-mobile-menu .swal2-content .swal-modal-logo a {
  outline: none;
  margin-left: 35px;
}
.swal-mobile-menu .swal2-content .swal-modal-logo img {
  width: 90px;
}
.swal-mobile-menu .swal2-content p.menu-col-title {
  margin-top: 20px;
}
.swal-mobile-menu .swal2-content p.modal-cat-level2 {
  font-weight: 600;
}
.swal-mobile-menu .swal2-content p.modal-cat-level2 a {
  text-decoration: none;
  transition: 0.5s;
}
.swal-mobile-menu .swal2-content p.modal-cat-level2 a:hover {
  text-decoration: underline;
}
.swal-mobile-menu .swal2-content p.modal-cat-level2.titCat {
  text-transform: uppercase;
  font-size: large;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-rowMenu-mobile {
  display: flex;
  align-items: flex-end;
  padding-bottom: 0;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-column-container {
  border-bottom: solid 1px #cccccc;
  padding-bottom: 20px;
  flex-grow: 1;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-column-container .modal-cat-level3 {
  margin-bottom: 5px;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-column-container .modal-cat-level3.modal-cat-level3-indented {
  margin-left: 20px;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-column-container .modal-cat-level3 a {
  text-decoration: none;
  transition: 0.5s;
}
.swal-mobile-menu .swal2-content .modal-cat-level3-column-container .modal-cat-level3 a:hover {
  text-decoration: underline;
}
.swal-mobile-menu .swal2-cancel {
  position: absolute;
  top: 20px;
  left: 14px;
  padding: 10px;
  font-size: 16px;
  color: transparent;
  border: solid 0px #ccc;
  background-image: url(/build/images/close.ea830322.gif);
  background-position: center;
  background-size: cover;
}

.slick-dots {
  position: absolute;
  right: 0;
  left: 0;
  bottom: -18px;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .slick-dots {
    bottom: 30px;
  }
}
.slick-dots li {
  position: relative;
  margin: 0 5px;
}
@media (min-width: 576px) {
  .slick-dots li {
    margin: 0 10px;
  }
}
.slick-dots li button {
  position: relative;
  border: 0;
  background: transparent;
  display: block;
  height: 24px;
  width: 30px;
  padding: 10px 0;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  cursor: pointer;
}
@media (min-width: 576px) {
  .slick-dots li button {
    width: 30px;
  }
}
@media (min-width: 768px) {
  .slick-dots li button {
    width: 40px;
  }
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  height: 3px;
  border-radius: 3px;
  background-color: #d4d4d4;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition-property: opacity, height;
  transition-duration: 250ms;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}
.slick-dots li.slick-active button:before {
  opacity: 1;
  background-color: #707070;
}

.slick-arrow {
  display: none !important;
}
@media (min-width: 576px) {
  .slick-arrow {
    display: block !important;
  }
}

.is-mobile-menu-open .breadcrumb-nav:after {
  border-bottom: none !important;
}

nav.breadcrumb-nav {
  width: auto;
  margin-bottom: 0;
  margin-top: 0;
}
@media (min-width: 992px) {
  nav.breadcrumb-nav {
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  nav.breadcrumb-nav {
    margin-top: 0;
  }
}
nav.breadcrumb-nav .breadcrumb {
  align-items: center;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item {
  color: #7D4B37;
  font-size: 0.81rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  nav.breadcrumb-nav .breadcrumb .breadcrumb-item {
    font-size: 0.88rem;
  }
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item + .breadcrumb-item {
  margin: 5px;
  padding: 3px 0px 3px 5px;
  display: flex;
  align-items: center;
  border-radius: 3px;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item + .breadcrumb-item:last-child {
  padding: 3px 5px 3px 5px;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item::before {
  color: #7D4B37;
  padding-right: 5px;
  content: ">";
  font-size: 0.81rem;
}
@media (min-width: 768px) {
  nav.breadcrumb-nav .breadcrumb .breadcrumb-item::before {
    font-size: 0.81rem;
  }
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item:first-child::before {
  display: none;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item:last-child::before {
  background-color: none;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item:last-child {
  color: #7D4B37;
  text-transform: capitalize;
  background-color: #FFF;
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item a {
  text-decoration: underline;
  font-size: 0.81rem;
}
@media (min-width: 768px) {
  nav.breadcrumb-nav .breadcrumb .breadcrumb-item a {
    font-size: 0.81rem;
  }
}
nav.breadcrumb-nav .breadcrumb .breadcrumb-item .ok-icon {
  fill: #7D4B37;
  stroke: #7D4B37;
  stroke-width: 0;
  color: #7D4B37;
  display: inline-block;
  flex-shrink: 0;
  position: relative;
  width: 1em;
}

.dfd-fullscreen.dfd-animate .dfd-layer {
  left: none;
  width: none;
  max-height: 100%;
  /*    .dfd-card-title::first-letter{
        text-transform: uppercase;
      }

      .dfd-card-title{
        text-transform: lowercase;
      }*/
  /*s[data-dfd-role=scroll-sentinel] {
    height: auto;
  }*/
}
@media (min-width: 992px) {
  .dfd-fullscreen.dfd-animate .dfd-layer {
    left: 30%;
  }
}
@media (min-width: 992px) {
  .dfd-fullscreen.dfd-animate .dfd-layer {
    width: 70%;
  }
}
@media (min-width: 992px) {
  .dfd-fullscreen.dfd-animate .dfd-layer {
    max-height: 75%;
  }
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-searchbox {
  border-bottom: 2px solid #7D4B37;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-btn-term-filter::before {
  border-radius: 0px;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-close-button {
  --dfd-close-button-scale: 70%;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-card-flag {
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  background-color: #7D4B37;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-slider-tooltip {
  border-radius: 0px;
  background: #ffffff;
  color: #7D4B37;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-slider-handle {
  border: 2px solid #7D4B37;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-card:hover, .dfd-fullscreen.dfd-animate .dfd-layer .dfd-card:focus-visible {
  box-shadow: none;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-card {
  border-width: 1px;
  border-style: solid;
  border-color: var(--df-neutral-outline, #cbcccd);
  border-radius: 0px;
  color: var(--df-neutral-high-contrast, #323334);
  background-color: var(--df-neutral-surface, white);
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-meta, .dfd-fullscreen.dfd-animate .dfd-layer .dfd-branding {
  display: none !important;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-aside {
  width: 300px !important;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-results-grid {
  grid-template-columns: repeat(var(--dfd-results-grid-column-count, auto-fill), var(--dfd-results-grid-column-size, minmax(144px, 1fr)));
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-suggestion-button {
  border-radius: 0;
}
.dfd-fullscreen.dfd-animate .dfd-layer .dfd-fullscreen button[data-dfd-role=back-to-top] {
  display: none;
}
.dfd-mobile .dfd-aside {
  border-radius: 0px !important;
}
.dfd-mobile .dfd-aside-header small {
  visibility: hidden;
}
.dfd-mobile .dfd-back-to-top-button {
  display: none;
}
.dfd-mobile .dfd-toggle-filters-button, .dfd-mobile .dfd-close-filters-button, .dfd-mobile .dfd-clear-filters-button, .dfd-mobile .dfd-smart-filter-button-primary {
  border-radius: 0px;
}
.dfd-mobile .dfd-results-grid {
  padding-left: 16px;
  padding-right: 16px;
}
.dfd-mobile .dfd-card:hover, .dfd-mobile .dfd-card:focus-visible {
  box-shadow: none;
}
.dfd-mobile .dfd-card {
  border-width: 1px;
  border-style: solid;
  border-color: var(--df-neutral-outline, #cbcccd);
  border-radius: 0px;
  color: var(--df-neutral-high-contrast, #323334);
  background-color: var(--df-neutral-surface, white);
}
.dfd-mobile .dfd-smart-filter-button {
  border-radius: 0;
}
.dfd-mobile .dfd-meta, .dfd-mobile .dfd-branding {
  display: none !important;
}

.header-banner:not(.slick-initialized) .slide-content:not(:first-child) {
  display: none;
}
.header-banner .slide-content {
  position: relative;
  background-color: rgba(125, 75, 55, 0.05);
  vertical-align: top;
}
.header-banner .slide-content .embed-container1 {
  position: relative;
  width: 100vw;
  left: 50%;
  margin-left: -50vw;
  overflow: hidden;
  height: 100svh;
  min-height: 100svh;
}
.header-banner .slide-content .embed-container1 iframe.background-cover,
.header-banner .slide-content .embed-container1 video.background-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.header-banner .banner-content {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  display: flex;
  text-align: center;
  z-index: 1;
  align-items: center;
  margin-top: 0;
  bottom: 0;
  transform: translateY(-30%);
  flex-direction: column;
  justify-content: center;
  min-height: 0;
}
@media (min-width: 992px) {
  .header-banner .banner-content {
    align-items: center;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    margin-top: 0;
  }
}
@media (min-width: 992px) {
  .header-banner .banner-content {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    bottom: 20vh;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    transform: translateY(0);
  }
}
@media (min-width: 992px) {
  .header-banner .banner-content {
    flex-direction: column;
  }
}
@media (min-width: 992px) {
  .header-banner .banner-content {
    justify-content: center;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    min-height: 0;
  }
}
@media (min-width: 1600px) {
  .header-banner .banner-content {
    min-height: 0;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    padding-left: 70px;
  }
}
@media (min-width: 768px) {
  .header-banner .banner-content {
    padding-right: 70px;
  }
}
.header-banner .banner-content .heading {
  color: #FFF;
  font-size: 2.25rem;
  text-transform: uppercase;
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.4);
}
@media (min-width: 992px) {
  .header-banner .banner-content .heading {
    font-size: 3rem;
  }
}
.header-banner .banner-content p {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: #FFF;
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.4);
  font-size: 14px;
}
@media (min-width: 992px) {
  .header-banner .banner-content p {
    font-size: 16px;
  }
}
.header-banner .banner-content .text {
  font-size: 1rem;
  line-height: 1.16;
}
@media (min-width: 992px) {
  .header-banner .banner-content .text {
    font-size: 1.13rem;
  }
}
.header-banner .banner-content .text:last-of-type {
  margin-bottom: 0;
}
.header-banner .banner-content .text:last-child {
  margin-bottom: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .header-banner .banner-content .text:last-child {
    margin-bottom: 2.25rem;
  }
}
.header-banner .banner-content .btn {
  font-size: inherit;
}
@media (min-width: 992px) {
  .header-banner .banner-content .btn {
    font-size: 20px;
  }
}
.header-banner .banner-content.banner-content-small .heading {
  font-size: calc(1.425rem + 2.1vw);
  max-width: 480px;
}
@media (min-width: 1200px) {
  .header-banner .banner-content.banner-content-small .heading {
    font-size: 3rem;
  }
}
.header-banner .banner-content.banner-content-small .text {
  font-size: 0.88rem !important;
  font-weight: 400;
  line-height: 1.42;
  max-width: 480px;
}
.header-banner .banner-content .btn {
  z-index: 10;
}
.header-banner .text-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  left: clamp(20px, 4vw, 60px);
  bottom: clamp(20px, 4vw, 60px);
  z-index: 20;
}
.header-banner .text-box h2 {
  color: #FFF;
  font-size: 1.5rem;
  text-transform: uppercase;
  letter-spacing: 0px;
  margin: 0;
  transition: transform 0.4s ease, opacity 0.4s ease;
  transform: translateY(0);
  text-align: start;
}
@media (min-width: 992px) {
  .header-banner .text-box h2 {
    font-size: 1.75rem;
  }
}
@media (min-width: 1400px) {
  .header-banner .text-box h2 {
    font-size: 2.25rem;
  }
}
@media (min-width: 1600px) {
  .header-banner .text-box h2 {
    font-size: 2.63rem;
  }
}
.header-banner .text-box p {
  color: #FFF;
  font-size: 0.88rem;
  margin: 0;
  text-align: start;
}
@media (min-width: 992px) {
  .header-banner .text-box p {
    font-size: 1.13rem;
  }
}
.header-banner .text-box a {
  color: #FFF;
  margin-top: 20px;
  font-size: 0.88rem;
  transition: background-color 0.3s ease, color 0.3s ease;
  text-align: start;
  padding: 10px 40px;
}
@media (min-width: 992px) {
  .header-banner .text-box a {
    font-size: 1rem;
  }
}
.header-banner .text-box a:hover {
  background-color: rgba(255, 255, 255, 0.8);
  color: #7D4B37;
}

.product-box {
  flex-direction: column;
  padding: 0;
  transition: all 0.3s ease;
}
@media (min-width: 576px) {
  .product-box {
    padding: 0;
  }
}
.product-box.homegallery h2 {
  font-size: 1.13rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  .product-box.homegallery h2 {
    font-size: 1.5rem;
  }
}
.product-box.homegallery .link .image-container {
  padding-bottom: 100%;
}
.product-box.slider-highlight {
  padding: 0;
  width: 100%;
}
@media (min-width: 576px) {
  .product-box.slider-highlight {
    width: 100%;
  }
}
.product-box .more-colors {
  display: flex;
  margin: 0 0 10px 0;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}
.product-box .more-colors .color-box.extra-color {
  display: none;
  opacity: 0;
}
.product-box .more-colors .color-box {
  width: 18px;
  height: 18px;
  margin: 0 6px 6px 0;
  border-radius: 3px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
}
@media (min-width: 576px) {
  .product-box .more-colors .color-box {
    width: 18px;
  }
}
@media (min-width: 576px) {
  .product-box .more-colors .color-box {
    height: 18px;
  }
}
@media (min-width: 576px) {
  .product-box .more-colors .color-box {
    margin: 0 6px 6px 0;
  }
}
.product-box .more-colors .color-box.is-loading {
  pointer-events: none;
}
.product-box .more-colors .color-box.is-loading:before {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.6);
  z-index: 1;
}
.product-box .more-colors .color-box.is-loading::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  border-radius: 100px;
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-top-color: #7D4B37;
  animation: spin 0.7s linear infinite;
  z-index: 2;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.product-box .more-colors .color-box.active {
  box-shadow: 0 0 0 2px transparent;
  position: relative;
}
.product-box .more-colors .color-box.active:before {
  border: 1px solid #7D4B37;
  border-radius: 6px;
  bottom: -3px;
  content: "";
  left: -3px;
  position: absolute;
  right: -3px;
  top: -3px;
}
.product-box .more-colors .color-more-text {
  margin: 0 0 6px 2px;
  cursor: pointer;
  user-select: none;
  text-decoration: none;
  font-size: 0.75rem;
  line-height: 18px;
  max-height: 18px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
@media (min-width: 576px) {
  .product-box .more-colors .color-more-text {
    margin: 0 0 6px 2px;
  }
}
@media (min-width: 768px) {
  .product-box .more-colors .color-more-text {
    font-size: 0.88rem;
  }
}
.product-box .more-colors .color-more-text.is-open {
  opacity: 0.8;
}
.product-box .link {
  display: flex;
  position: relative;
  overflow: hidden;
  flex-direction: column;
  text-decoration: none !important;
  transition: all 0.4s ease;
  border-radius: 3px;
}
.product-box .link:focus .image-container img {
  transform: scale(1.03);
}
.product-box .link:active .image-container img {
  transform: scale(1.03);
}
@media (hover: hover) {
  .product-box .link:hover .image-container img {
    transform: scale(1.03);
  }
}
.product-box .link .discount-badge {
  position: absolute;
  z-index: 2;
  color: #7D4B37;
  background-color: transparent;
  border-radius: 3px;
  font-weight: 600;
  border: solid 1px #DDCFC7;
  padding: 3px 8px;
  top: 5px;
  left: 5px;
  font-size: 0.75rem;
}
@media (min-width: 576px) {
  .product-box .link .discount-badge {
    padding: 3px 8px;
  }
}
@media (min-width: 576px) {
  .product-box .link .discount-badge {
    top: 10px;
    left: 10px;
  }
}
@media (min-width: 768px) {
  .product-box .link .discount-badge {
    font-size: 0.75rem;
  }
}
.product-box .link .image-container {
  position: relative;
  padding-bottom: 125%;
  margin-bottom: 0;
  margin-top: 0;
  background-color: #FAFAFA;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 3px;
  position: relative;
  overflow: hidden;
}
@media (min-width: 576px) {
  .product-box .link .image-container {
    margin-top: 0;
  }
}
.product-box .link .image-container .image-placeholder {
  position: absolute;
  inset: 0;
  z-index: 3;
  background: linear-gradient(90deg, rgba(125, 75, 55, 0.05) 0%, rgba(255, 255, 255, 0.45) 50%, rgba(125, 75, 55, 0.05) 100%);
  background-size: 200% 100%;
  animation: placeholder-shimmer 1.1s ease-in-out infinite;
  opacity: 1;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.product-box .link .image-container.is-loaded .image-placeholder {
  opacity: 0;
  animation: none;
}
.product-box .link .image-container .product-gallery {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  z-index: 1;
}
.product-box .link .image-container .product-gallery .splide__track,
.product-box .link .image-container .product-gallery .splide__list,
.product-box .link .image-container .product-gallery .splide__slide {
  height: 100%;
}
.product-box .link .image-container .product-gallery .splide__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FAFAFA;
}
.product-box .link .image-container .product-gallery .splide__slide img.background-cover,
.product-box .link .image-container .product-gallery .splide__slide img.background-contain {
  mix-blend-mode: multiply;
  object-position: 50% 50%;
  right: 5%;
  left: 5%;
  top: 5%;
  width: 90%;
  height: auto;
  object-fit: cover;
  display: block;
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__slide img.background-cover,
  .product-box .link .image-container .product-gallery .splide__slide img.background-contain {
    right: 5%;
  }
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__slide img.background-cover,
  .product-box .link .image-container .product-gallery .splide__slide img.background-contain {
    left: 5%;
  }
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__slide img.background-cover,
  .product-box .link .image-container .product-gallery .splide__slide img.background-contain {
    top: 5%;
  }
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__slide img.background-cover,
  .product-box .link .image-container .product-gallery .splide__slide img.background-contain {
    width: 90%;
  }
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__slide img.background-cover,
  .product-box .link .image-container .product-gallery .splide__slide img.background-contain {
    height: auto;
  }
}
.product-box .link .image-container .product-gallery .splide__pagination {
  bottom: 3px;
  left: 10px;
  right: 10px;
  transform: none;
  height: 2px;
  border-radius: 100px;
  background: rgba(125, 75, 55, 0.2);
  overflow: hidden;
  pointer-events: none;
  padding: 0;
  margin: 0;
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__pagination {
    bottom: 6px;
  }
}
@media (min-width: 576px) {
  .product-box .link .image-container .product-gallery .splide__pagination {
    left: 12px;
    right: 12px;
  }
}
.product-box .link .image-container .product-gallery .splide__pagination::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: var(--product-gallery-progress, 0%);
  background: #7D4B37;
  transition: width 0.25s ease;
}
.product-box .link .image-container .product-gallery .splide__pagination.is-single-slide {
  display: none;
}
.product-box .link .image-container .product-gallery .splide__pagination li {
  display: none;
}
.product-box .link .image-container .product-gallery .splide__pagination__page {
  display: none;
}
.product-box .link .image-container .background-cover-temp {
  position: absolute;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.25s ease;
  pointer-events: none;
}
@keyframes placeholder-shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.product-box .link .image-container img {
  mix-blend-mode: multiply;
  transition: top 2.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  border-radius: 3px;
  transition: transform 0.5s ease, opacity 0.2s ease;
  opacity: 0;
}
.product-box .link .image-container img.is-loaded {
  opacity: 1;
}
.product-box .link .product-details {
  padding: 10px 6% 20px 6%;
  text-align: left;
}
@media (min-width: 576px) {
  .product-box .link .product-details {
    padding: 15px 5% 15px 5%;
  }
}
.product-box .link .product-details .colors-count {
  font-size: 0.75rem;
  color: #7D4B37;
  margin-bottom: 4px;
  text-transform: capitalize;
}
@media (min-width: 768px) {
  .product-box .link .product-details .colors-count {
    font-size: 0.81rem;
  }
}
.product-box .link .product-details .category,
.product-box .link .product-details .name,
.product-box .link .product-details .price {
  position: relative;
  z-index: 2;
  color: #7D4B37;
}
.product-box .link .product-details .category:last-child,
.product-box .link .product-details .name:last-child,
.product-box .link .product-details .price:last-child {
  margin-bottom: 0 !important;
}
.product-box .link .product-details .category,
.product-box .link .product-details .name {
  line-height: 1.42;
  margin-bottom: 4px;
}
.product-box .link .product-details .category a,
.product-box .link .product-details .name a {
  text-decoration: none;
}
.product-box .link .product-details .category {
  font-size: 1rem;
}
.product-box .link .product-details h3.name {
  font-size: 0.81rem;
  font-weight: 600;
  text-transform: uppercase;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  .product-box .link .product-details h3.name {
    font-size: 0.88rem;
  }
}
@media (max-width: 767.98px) {
  .product-box .link .product-details h3.name .product-link {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    text-overflow: ellipsis;
    line-height: 1.1em;
    overflow: hidden;
    height: 2.2em;
  }
}
.product-box .link .product-details .price span {
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  .product-box .link .product-details .price span {
    font-size: 0.88rem;
  }
}
.product-box .link .product-details .price.discount-price span {
  white-space: nowrap;
  color: #7D4B37;
  font-weight: 600;
}
.product-box .link .product-details .price.discount-price span:first-child {
  color: #b9a091;
  text-decoration: line-through;
  margin-right: 2px;
  font-weight: 600;
}
.product-box .link .product-details .fake-link {
  font-weight: 600;
  text-decoration: underline;
  font-size: 0.88rem;
}
.product-box .link .label {
  position: absolute;
  right: 10px;
  z-index: 2;
  border-radius: 3px;
  padding: 3px 8px;
  top: 3px;
  right: 3px;
  font-size: 0.75rem;
}
@media (min-width: 576px) {
  .product-box .link .label {
    padding: 3px 8px;
  }
}
@media (min-width: 576px) {
  .product-box .link .label {
    top: 10px;
    right: 10px;
  }
}
@media (min-width: 768px) {
  .product-box .link .label {
    font-size: 0.75rem;
  }
}
.product-box .link .labelIcon {
  position: absolute;
  z-index: 2;
  display: flex;
  right: 0;
  padding: 3px 8px;
  top: 0;
  font-size: 0.81rem;
}
.product-box .link .labelIcon .icon {
  margin-right: 5px;
  width: 30px;
}
@media (min-width: 576px) {
  .product-box .link .labelIcon {
    padding: 3px 8px;
  }
}
@media (min-width: 576px) {
  .product-box .link .labelIcon {
    top: 7px;
  }
}

.product-box .image-container {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  /* 1/1 (quadrato), 4/5 ecc */
  overflow: hidden;
}
.product-box .image-container .buy-button {
  position: absolute;
  right: 10px;
  z-index: 2;
  border-radius: 3px;
  padding: 3px 3px;
  bottom: 10px;
  font-size: 0.75rem;
  background-color: #7D4B37;
  color: #FFF;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
@media (min-width: 576px) {
  .product-box .image-container .buy-button {
    padding: 3px 3px;
  }
}
@media (min-width: 576px) {
  .product-box .image-container .buy-button {
    bottom: 15px;
  }
}
@media (min-width: 768px) {
  .product-box .image-container .buy-button {
    font-size: 0.75rem;
  }
}
.product-box .image-container .buy-button .lucide,
.product-box .image-container .buy-button [data-lucide] {
  width: 16px;
  height: 16px;
}

/* la gallery deve riempire il container */
.product-box .image-container .product-gallery {
  width: 100%;
  height: 100%;
}

/* anche struttura splide deve avere altezza */
.product-box .product-gallery,
.product-box .product-gallery .splide__track,
.product-box .product-gallery .splide__list,
.product-box .product-gallery .splide__slide {
  width: 100%;
  height: 100%;
}

/* immagine cover */
.product-box .image-container img.background-cover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.image-container .loader {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  contain: strict;
  display: inline-block;
  height: 20px;
  margin: auto;
  width: 20px;
  animation: rotation 1s linear infinite;
  display: none;
}

.image-container.is-loading .loader {
  display: inline-block;
}

/* quando loaded sparisce */
.image-container.is-loaded .loader {
  display: none;
}

@keyframes rotation {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@media (max-width: 767px) {
  .main-slider .image-container .loader {
    display: none !important;
  }
}
.colors .selector .thumb {
  position: relative;
  width: 34px;
  /* cambia se vuoi */
  height: 34px;
  border-radius: 50%;
  overflow: hidden;
  background: #f3f3f3;
}

/* immagine copre tutto */
.colors .selector .thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  transition: opacity 0.2s ease;
}

/* quando loaded */
.colors .selector .thumb.is-loaded img {
  opacity: 1;
}

/* loader */
.colors .selector .thumb-loader {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  contain: strict;
  display: inline-block;
  height: 15px;
  margin: auto;
  width: 15px;
  animation: rotation 1s linear infinite;
  display: none;
}

/* mostra loader quando loading */
.colors .selector .thumb.is-loading .thumb-loader {
  display: inline-block;
}

@keyframes rotation {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.section-divider {
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
  text-transform: uppercase;
  display: block;
  font-size: calc(1.3rem + 0.6vw);
  font-weight: 600;
}
@media (min-width: 576px) {
  .section-divider {
    margin-top: 39.38px;
    margin-bottom: 39.38px;
  }
}
@media (min-width: 768px) {
  .section-divider {
    margin-top: 48.75px;
    margin-bottom: 48.75px;
  }
}
@media (min-width: 992px) {
  .section-divider {
    margin-top: 61.25px;
    margin-bottom: 61.25px;
  }
}
@media (min-width: 1400px) {
  .section-divider {
    margin-top: 70.63px;
    margin-bottom: 70.63px;
  }
}
@media (min-width: 1600px) {
  .section-divider {
    margin-top: 80px;
    margin-bottom: 80px;
  }
}
@media (min-width: 1200px) {
  .section-divider {
    font-size: 1.75rem;
  }
}

.products-highlight {
  overflow-x: clip;
  position: relative;
  padding: 10px;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .products-highlight {
    padding: 0;
  }
}
@media (min-width: 1400px) {
  .products-highlight {
    padding: 0;
  }
}
@media (min-width: 768px) {
  .products-highlight {
    margin-bottom: 0;
  }
}
@media (min-width: 1400px) {
  .products-highlight {
    margin-bottom: 0;
  }
}
.products-highlight .product-box {
  height: 100%;
}
.products-highlight .product-box .titCarosello {
  padding: 5px 10px;
  background-color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
  bottom: 0;
  border-radius: 0 0 3px 3px;
  z-index: 10;
  width: 100%;
  position: absolute;
}
@media (min-width: 768px) {
  .products-highlight .product-box .titCarosello {
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .products-highlight .product-box .titCarosello {
    bottom: 0;
  }
}
.products-highlight .product-box .titCarosello h6 {
  font-size: 0.88rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
}
@media (min-width: 768px) {
  .products-highlight .product-box .titCarosello h6 {
    font-size: 1rem;
  }
}
.products-highlight .slick-prod-highlight.product-carousel .splide__arrow {
  width: 40px;
  height: 40px;
  background: transparent;
  border: 0;
  padding: 0;
  color: #7D4B37;
  opacity: 1;
  z-index: 2;
}
.products-highlight .slick-prod-highlight.product-carousel .splide__arrow:disabled {
  opacity: 0.35;
}
.products-highlight .slick-prod-highlight.product-carousel .splide__arrow .lucide,
.products-highlight .slick-prod-highlight.product-carousel .splide__arrow [data-lucide] {
  width: 40px;
  height: 40px;
  fill: none;
  stroke-width: 1px;
}
.products-highlight .slick-track {
  display: flex;
  justify-content: start;
}
@media (min-width: 992px) {
  .products-highlight .slick-track {
    justify-content: center;
  }
}
.products-highlight .slick-track .slick-slide {
  display: flex;
  height: auto;
  margin: 0;
  width: 100% !important;
}
@media (min-width: 768px) {
  .products-highlight .slick-track .slick-slide {
    max-width: 325px;
  }
}
.products-highlight .slick-track .slick-slide > div {
  width: 100% !important;
}
.products-highlight .slick-prev {
  appearance: none;
}
.products-highlight .slick-prev,
.products-highlight .slick-next {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  appearance: none;
  width: 40px;
  height: 40px;
  border: none;
  font-size: 0;
}
.products-highlight .slick-prev {
  background: url(/build/images/prev-arrow.0870e352.svg) no-repeat center;
  background-size: 40px 40px;
  left: -10px;
}
@media (min-width: 992px) {
  .products-highlight .slick-prev {
    left: -55px;
  }
}
.page-product .products-highlight .slick-prev {
  display: none !important;
}
.products-highlight .slick-next {
  background: url(/build/images/next-arrow.c472147c.svg) no-repeat center;
  background-size: 40px 40px;
  right: -10px;
}
@media (min-width: 992px) {
  .products-highlight .slick-next {
    right: -55px;
  }
}
.page-product .products-highlight .slick-next {
  display: none !important;
}

.splide--peek .splide__track {
  overflow: visible;
  /* serve per mostrare la mezza slide */
  box-sizing: border-box;
  /* il padding non aumenta la larghezza reale */
}

/* prevenire qualunque scroll orizzontale della pagina in questa sezione */
.splideCarouselHomePage,
.splideCarouselHomePage .splide__track,
.splideCarouselHomePage .splide__list {
  max-width: 100%;
}

/* immagini a misura */
.splideCarouselHomePage .splide__slide img {
  display: block;
  width: 100%;
  height: auto;
}

/* immagini responsive (non obbligatorio ma consigliato) */
.splide__slide img {
  display: block;
  width: 100%;
  padding: 0;
  height: auto;
}
@media (min-width: 992px) {
  .splide__slide img {
    padding: 0;
  }
}

.full-width-image-banner .image-container {
  position: relative;
}

/* ========== BLOCK: BANNER CONTAINER ========== */
.bannerContainer {
  position: relative;
  color: #7D4B37;
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .bannerContainer {
    padding-top: 0;
  }
}
@media (min-width: 768px) {
  .bannerContainer {
    padding-bottom: 0;
  }
}
@media (min-width: 576px) and (max-width: 1399.98px) {
  .bannerContainer.container {
    max-width: 100%;
  }
}
.bannerContainer.sect02pre .products-highlight {
  border-top: solid 2px #ACAEAF;
  border-bottom: solid 2px #ACAEAF;
}
.bannerContainer.sect02pre .products-highlight a {
  display: inline-block;
  text-decoration: none;
  transition: color 0.3s ease, transform 0.3s ease;
  transform: scale(1);
  transform-origin: center;
  will-change: transform;
}
.bannerContainer.sect02pre .products-highlight a h2 {
  font-size: 1.13rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 992px) {
  .bannerContainer.sect02pre .products-highlight a h2 {
    font-size: 1.5rem;
  }
}
.bannerContainer.sect02pre .products-highlight a:hover {
  text-decoration: none;
  color: #7D4B37;
  transform: scale(1.05);
}
@media (max-width: 767.98px) {
  .bannerContainer .marginNegative {
    margin-top: -10px;
  }
}
.bannerContainer .splide__pagination__page {
  font-size: 0;
  opacity: 0.1;
  background: #7D4B37;
  width: 6px;
  height: 6px;
}
.bannerContainer .splide__pagination__page.is-active {
  opacity: 1;
  background: #7D4B37;
  transform: scale(1.1);
}
.bannerContainer .splide__arrow:disabled {
  display: none;
  cursor: not-allowed;
}
.bannerContainer .products-highlight.caroselloGen {
  padding: 0 !important;
}
.bannerContainer .bannerCat {
  display: flex;
  flex-direction: column;
  /* ========== CARD BASE (tutte le pos tranne hero specifico) ========== */
  /* ========== HERO FULL WIDTH (POS 1) con ratio 2310/900 ========== */
  /* ========== HERO VIDEO: stesso ratio del hero immagine ========== */
}
.bannerContainer .bannerCat .bannerContainer-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  overflow: hidden;
  transition: all 0.5s ease;
}
.bannerContainer .bannerCat .bannerContainer-card a {
  text-decoration: none;
}
.bannerContainer .bannerCat .bannerContainer-card .image-box {
  width: 100%;
  overflow: hidden;
  /* default immagini nei banner “normali” */
}
.bannerContainer .bannerCat .bannerContainer-card .image-box picture, .bannerContainer .bannerCat .bannerContainer-card .image-box img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.5s ease;
}
.bannerContainer .bannerCat .bannerContainer-card .image-box .splide__slide.greyBg {
  background: #EEF2F4;
}
.bannerContainer .bannerCat .bannerContainer-card .text-box {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 20px 10px;
}
@media (min-width: 768px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box {
    padding: 20px;
  }
}
@media (min-width: 992px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box {
    padding: 20px;
  }
}
.bannerContainer .bannerCat .bannerContainer-card .text-box h2 {
  color: #FFF;
  font-size: 1.5rem;
  text-transform: capitalize;
  letter-spacing: 0px;
  margin: 0;
  transition: transform 0.4s ease, opacity 0.4s ease;
  transform: translateY(0);
  text-align: start;
}
@media (min-width: 992px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box h2 {
    font-size: 1.75rem;
  }
}
@media (min-width: 1400px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box h2 {
    font-size: 2.25rem;
  }
}
@media (min-width: 1600px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box h2 {
    font-size: 2.63rem;
  }
}
.bannerContainer .bannerCat .bannerContainer-card .text-box p {
  color: #FFF;
  font-size: 0.88rem;
  margin: 0;
  text-align: start;
}
@media (min-width: 992px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box p {
    font-size: 1.13rem;
  }
}
.bannerContainer .bannerCat .bannerContainer-card .text-box a {
  color: #FFF;
  margin-top: 10px;
  font-size: 0.88rem;
  transition: background-color 0.3s ease, color 0.3s ease;
  text-align: start;
}
@media (min-width: 992px) {
  .bannerContainer .bannerCat .bannerContainer-card .text-box a {
    font-size: 1.13rem;
  }
}
.bannerContainer .bannerCat .bannerContainer-card:hover {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}
.bannerContainer .bannerCat .bannerContainer-card:hover .image-box img {
  transform: scale(1.03);
}
.bannerContainer .bannerCat .bannerContainer-card:hover .text-box h2 {
  transform: translateY(-5px);
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner {
  width: 100%;
  display: block;
  height: 100vh;
  height: 100svh;
}
@media (min-width: 768px) {
  .bannerContainer .bannerCat .bannerContainer-card.firstBanner {
    height: 100vh;
  }
}
@media (min-width: 768px) {
  .bannerContainer .bannerCat .bannerContainer-card.firstBanner {
    height: 100vh;
  }
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .splide__arrow {
  width: 40px;
  height: 40px;
  background: transparent;
  border: 0;
  padding: 0;
  color: #7D4B37;
  opacity: 1;
  z-index: 2;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .splide__arrow:disabled {
  opacity: 0.35;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .splide__arrow .lucide,
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .splide__arrow [data-lucide] {
  width: 40px;
  height: 40px;
  fill: none;
  stroke-width: 1px;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box {
  position: relative;
  width: 100%;
  height: 100%;
  transition: all 0.4s ease;
  /* Splide deve FILLARE il ratio box */
  /* l’immagine/video deve coprire senza deformare */
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box > .splide {
  position: absolute;
  inset: 0;
  height: 100%;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box > .splide .splide__track,
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box > .splide .splide__list,
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box > .splide .splide__slide {
  height: 100%;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box picture, .bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box img, .bannerContainer .bannerCat .bannerContainer-card.firstBanner .image-box iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner .text-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 20px;
}
@media (min-width: 768px) {
  .bannerContainer .bannerCat .bannerContainer-card.firstBanner .text-box {
    padding: 50px;
  }
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner:hover {
  box-shadow: none !important;
}
.bannerContainer .bannerCat .bannerContainer-card.firstBanner:hover .image-box img {
  transform: none !important;
}
.bannerContainer .bannerCat .embed-container1 {
  position: relative;
}
.bannerContainer .bannerCat .embed-container1::before {
  content: "";
  display: block;
  padding-top: 38.961038961%;
}
.bannerContainer .bannerCat .embed-container1 iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
@media (max-width: 767.98px) {
  .bannerContainer .bannerCat.fixPaddingMobile {
    padding: 0 10px 10px;
  }
}

/* ========== DESKTOP: pareggia le altezze dei banner “griglia” (non hero) ========== */
@media (min-width: 768px) {
  .bannerContainer {
    /* righe annidate nelle colonne half */
    /* Splide nei banner di griglia (non hero): eredita l’altezza */
    /* immagini nei banner di griglia: cover pieno */
  }
  .bannerContainer .row {
    align-items: stretch;
  }
  .bannerContainer .col-12.col-md-6.g-0.d-flex > .row {
    height: 100%;
    align-items: stretch;
  }
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) {
    width: 100%;
    height: 100%;
  }
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) > a {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    height: 100%;
  }
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .image-box {
    position: relative;
    flex: 1 1 auto;
    overflow: hidden;
    height: 100%;
    min-height: 100%;
  }
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .splide,
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .splide__track,
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .splide__list,
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .splide__slide {
    height: 100%;
  }
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .image-box picture,
  .bannerContainer .bannerCat .bannerContainer-card:not(.firstBanner) .image-box img {
    width: 100%;
    height: 100% !important; /* override del height:auto base */
    object-fit: cover;
    display: block;
  }
}
/* HERO: altezza viewport meno header, gestita sopra con rpmq */
.nl-box {
  background-color: #EEF2F4;
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 576px) {
  .nl-box {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 768px) {
  .nl-box {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 992px) {
  .nl-box {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 1400px) {
  .nl-box {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 1600px) {
  .nl-box {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.nl-box h2 {
  font-weight: 600;
  color: #7D4B37;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  .nl-box h2 {
    font-size: 1rem;
  }
}
.nl-box h4 {
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  .nl-box h4 {
    font-size: 1rem;
  }
}
.nl-box h3 {
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  .nl-box h3 {
    font-size: 1rem;
  }
}
.nl-box p {
  color: #7D4B37;
  font-size: 0.63rem;
}
@media (min-width: 768px) {
  .nl-box p {
    font-size: 0.69rem;
  }
}
.nl-box label {
  color: #707070;
  font-size: 0.75rem;
  font-weight: 400;
}
.nl-box .form-control {
  margin-bottom: 0;
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  width: auto;
}
.nl-box .left-box {
  padding: 0;
  height: 100%;
}
.nl-box .left-box img {
  object-fit: cover;
}
.nl-box .right-box {
  background-color: #F6DFB7;
  height: 100%;
  padding: 30px;
  text-align: center;
  width: 100%;
}
@media (min-width: 992px) {
  .nl-box .right-box {
    width: 50%;
  }
}
.nl-box form {
  background-color: #B6DAC2;
}
.nl-box .form-content {
  padding: 0;
}
.nl-box .form-content .sub-text {
  font-size: 1.06rem;
}
@media (min-width: 768px) {
  .nl-box .form-content .sub-text {
    font-size: 1.06rem;
  }
}

.common-heading {
  padding-bottom: 0;
}
@media (min-width: 992px) {
  .common-heading {
    padding-bottom: 30px;
  }
}
.common-heading .content {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: auto;
}
@media (min-width: 992px) {
  .common-heading .content {
    padding: 0;
  }
}
.common-heading .content h3 {
  color: #7D4B37;
  font-size: 0.88rem;
  font-weight: 400;
  text-transform: uppercase;
}
@media (min-width: 992px) {
  .common-heading .content h3 {
    font-size: 1.25rem;
  }
}

.grecaptcha-badge {
  visibility: hidden;
}

#newsletterModal .modal-dialog {
  width: calc(100vw - var(--bs-modal-margin) * 2);
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 600px;
}
#newsletterModal .modal-dialog .modal-content {
  border-radius: 3px;
}
#newsletterModal .modal-dialog .modal-content .modal-body {
  padding: 0;
}
#newsletterModal .modal-dialog .modal-content .btn-close {
  display: block !important;
  position: absolute;
  right: 10px;
  top: 10px;
  opacity: 1 !important;
  width: 22px !important;
  height: 22px !important;
  z-index: 2;
  font-size: 18px;
  line-height: 0px;
  border: solid 1px #7D4B37;
  color: #FFF;
  border-radius: 3px;
  background-color: #7D4B37;
  padding: 4px;
}
#newsletterModal .modal-dialog .modal-content .btn-close:focus {
  box-shadow: none;
}
#newsletterModal .modal-dialog .modal-content .btn-close svg {
  display: block;
  width: 100%;
  height: 100%;
  stroke: currentColor;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container {
  display: flex;
  align-items: stretch;
  min-width: 100%;
}
@media (min-width: 992px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container {
    min-width: 50%;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form {
  display: flex;
  align-items: center;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont {
  position: relative;
  color: #7D4B37;
  padding: 40px;
}
@media (min-width: 992px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont {
    padding: 80px;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont p {
  margin: 25px 0px 35px;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .form-check-label {
  font-weight: normal !important;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .form-control {
  margin-bottom: 0;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h2 {
  font-size: 1rem;
  margin-bottom: 10px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
}
@media (min-width: 768px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h2 {
    font-size: 1.25rem;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h3 {
  font-size: 1.75rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
}
@media (min-width: 768px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h3 {
    font-size: 2.25rem;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h3 span {
  font-size: 20x;
}
@media (min-width: 768px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont h3 span {
    font-size: 1.5rem;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont #HPNewsletterForm label {
  font-weight: 600;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .hp-nl-privacy {
  color: #7D4B37;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .hp-nl-privacy label {
  font-size: 0.69rem;
}
@media (min-width: 768px) {
  #newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .hp-nl-privacy label {
    font-size: 0.75rem;
  }
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-form .cont .hp-nl-privacy input:focus {
  box-shadow: none;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-img {
  object-fit: cover;
}
#newsletterModal .modal-dialog .modal-content .modal-nl-container .modal-nl-img img {
  width: 100%;
  height: 100%;
}

.search-offcanvas {
  height: auto !important;
  border-bottom: 1px solid rgba(125, 75, 55, 0.16);
  background-color: #FFF;
}
.search-offcanvas .offcanvas-header {
  align-items: center;
  padding: 1rem 1.25rem 0.75rem;
}
.search-offcanvas .offcanvas-title {
  letter-spacing: 0.02em;
}
.search-offcanvas .offcanvas-body {
  padding: 0 1.25rem 1.25rem;
}

.search-offcanvas__form {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.search-offcanvas__input.form-control {
  min-height: 48px;
  border-radius: 0;
  border-color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

.search-offcanvas__submit {
  min-height: 48px;
  white-space: nowrap;
}

@media (max-width: 575.98px) {
  .search-offcanvas__form {
    flex-direction: column;
    align-items: stretch;
  }
  .search-offcanvas__submit {
    width: 100%;
  }
}
header[role=banner] {
  z-index: 100;
  background-color: transparent;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  /* Migliora la collapse di Bootstrap con fade + slide */
  /* Stato durante il calcolo height di Bootstrap */
  /* Effetto sul pulsante: ruota l’icona quando aperto */
}
header[role=banner] #filtersCollapse {
  transition: height 0.35s ease, opacity 0.25s ease, transform 0.25s ease;
}
header[role=banner] #filtersCollapse.collapse:not(.show) {
  display: block;
  /* evita salti di layout durante l'animazione */
  height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-6px);
}
header[role=banner] #filtersCollapse.collapse.show {
  opacity: 1;
  transform: translateY(0);
}
header[role=banner] #filtersCollapse.collapsing {
  opacity: 0;
  transform: translateY(-6px);
}
header[role=banner] #showFiltersButtonDesk .filter-icon {
  transition: transform 0.25s ease;
}
header[role=banner] #showFiltersButtonDesk:not(.collapsed) .filter-icon {
  transform: rotate(90deg);
}
.is-mobile-menu-open header[role=banner] {
  border-bottom: none;
}
header[role=banner] + * {
  /*@media (max-width: breakpoint-max(dsk, $mobile-menu-breakpoints)) {
    padding-top: $header-height + $submenu-bar-height;
  }*/
}
header[role=banner] .promotions-bar {
  padding-left: 10px;
  padding-right: 10px;
  background-color: #DDCFC7;
  color: #7D4B37;
  transition: background-color 0.25s ease, color 0.25s ease;
  font-size: 0.75rem;
  height: 30px;
  z-index: 2;
  padding-top: 6px;
  padding-bottom: 6px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media (min-width: 576px) {
  header[role=banner] .promotions-bar {
    padding-left: 24px;
    padding-right: 24px;
  }
}
@media (min-width: 768px) {
  header[role=banner] .promotions-bar {
    padding-left: 30px;
    padding-right: 30px;
  }
}
header[role=banner] .promotions-bar p {
  font-weight: 400;
}
header[role=banner] .promotions-bar .center-text {
  width: 100%;
  text-align: center;
  font-size: 0.75rem;
  font-weight: 600;
}
@media (min-width: 992px) {
  header[role=banner] .promotions-bar {
    justify-content: space-between;
    text-align: left;
  }
}
@media (min-width: 1600px) {
  header[role=banner] .promotions-bar .center-text {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}
header[role=banner] .header-container {
  padding-top: 0px;
  transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
@media (min-width: 768px) {
  header[role=banner] .header-container {
    padding-top: 0px;
  }
}
.is-mobile-menu-open header[role=banner] .header-container {
  margin-top: 0px;
}
header[role=banner] .header-container.scrolled {
  padding: 0px;
  top: 30px;
  left: 0;
  right: 0;
  position: fixed;
  margin-top: 0px;
  background-color: #F5F0EB;
}
@media (min-width: 768px) {
  header[role=banner] .header-container.scrolled {
    padding: 0px;
  }
}
header[role=banner] .header-container.scrolled #mobileMenuToggleTarget {
  top: 110px !important;
  height: calc(100vh - 80px + 30px) !important;
}
header[role=banner] .header-container.scrolled .menu-bar {
  background-color: #F5F0EB;
}
header[role=banner] .link-img-header {
  width: 100%;
  height: 200px;
  position: relative;
}
@media (max-width: 767.98px) {
  header[role=banner] .link-img-header {
    height: 90%;
    margin: 0 auto;
  }
}
header[role=banner] .img-header {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 100% !important;
  display: block;
}
@media (max-width: 767.98px) {
  header[role=banner] .img-header {
    max-width: 90% !important;
  }
}
header[role=banner] .text-img-header {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: max-content; /* oppure fit-content */
  margin: 0;
  text-align: center !important;
  font-size: 1.5rem;
  color: #FFF;
}
header[role=banner] .text-img-header:hover {
  color: #7D4B37;
}
header[role=banner] .menu-bar {
  display: flex;
  justify-content: space-between;
  position: relative;
  background-color: #F5F0EB;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  max-width: 100vw;
  margin: 0;
  height: 80px;
  padding: 0;
  align-items: center;
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar {
    margin: 0;
  }
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar {
    height: 80px;
  }
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar {
    padding: 10px 50px;
  }
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar {
    align-items: center;
  }
}
header[role=banner] .menu-bar .hamburger-inner,
header[role=banner] .menu-bar .hamburger-inner::before,
header[role=banner] .menu-bar .hamburger-inner::after {
  background-color: #F5F0EB;
  width: 20px;
  border-radius: 0px;
  height: 1px;
  transition: background-color 0.25s ease;
}
header[role=banner] .menu-bar.light {
  border-bottom: solid 1px #DDCFC7;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.is-mobile-menu-open header[role=banner] .menu-bar .hamburger.is-active .hamburger-inner,
.is-mobile-menu-open header[role=banner] .menu-bar .hamburger.is-active .hamburger-inner::before,
.is-mobile-menu-open header[role=banner] .menu-bar .hamburger.is-active .hamburger-inner::after {
  width: 20px;
  background-color: #F5F0EB;
}
.is-mobile-menu-open header[role=banner] .menu-bar.light {
  background-color: #F5F0EB;
}
.is-mobile-menu-open header[role=banner] .menu-bar.light .hamburger.is-active .hamburger-inner,
.is-mobile-menu-open header[role=banner] .menu-bar.light .hamburger.is-active .hamburger-inner::before,
.is-mobile-menu-open header[role=banner] .menu-bar.light .hamburger.is-active .hamburger-inner::after {
  width: 20px;
}
header[role=banner] .menu-bar.light .hamburger-inner,
header[role=banner] .menu-bar.light .hamburger-inner::before,
header[role=banner] .menu-bar.light .hamburger-inner::after {
  background-color: #7D4B37 !important;
}
header[role=banner] .menu-bar ul.first-level {
  display: none;
  opacity: 0;
  padding: 0 3px;
  transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
header[role=banner] .menu-bar ul.first-level .category-level-1 {
  position: relative;
  min-width: 220px;
  padding: 0;
  display: none;
}
header[role=banner] .menu-bar ul.first-level .category-level-1.in {
  display: list-item;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 a {
  height: 30px;
  text-transform: none;
  padding-left: 20px;
  padding-right: 20px;
  transition: color 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  font-size: 0.88rem;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar ul.first-level .category-level-1 a {
    font-size: 1rem;
  }
}
header[role=banner] .menu-bar ul.first-level .category-level-1 a:hover {
  color: #7D4B37;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 a.category-link-lev1 {
  padding-bottom: 30px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content .mega-links-wrap {
  flex: 1 1 auto;
  min-width: 0;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content .mega-links-wrap.has-banners {
  flex: 1 1 auto;
  max-width: calc(100% - 320px);
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content .mega-menu-banners {
  margin-left: auto;
  flex: 0 0 400px;
  max-width: 400px;
  min-width: 400px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content .mega-banner-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 .mega-panel-content .mega-banner-list > .single-banner {
  flex: 0 1 calc(50% - 4px);
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  column-gap: 18px;
  row-gap: 8px;
  color: #FFF;
  padding: 0;
  margin: 0;
  list-style: none;
  min-height: 200px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .category-level-2 {
  flex: 0 0 170px;
  min-height: auto;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .category-level-2 a.category-link-lev2 {
  padding-bottom: 20px;
  font-weight: 600;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .mega-menu-list li {
  padding: 5px 0;
  max-width: 300px;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .mega-menu-list > li > a {
  --transform-origin-start: 0%;
  --transform-origin-end: 100%;
  display: inline-flex;
  width: fit-content;
  background: linear-gradient(to right, currentColor, currentColor) 0 100%/0 1px no-repeat;
  background-origin: content-box;
  background-clip: content-box;
  background-position-x: var(--transform-origin-end);
  text-decoration: none !important;
  transition: background-size 0.2s ease-in-out;
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .mega-menu-list > li > a:focus-visible {
  color: #7D4B37;
  background-size: 100% 1px;
  background-position-x: var(--transform-origin-start);
}
@media screen and (pointer: fine) and (min-width: 992px) {
  header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .mega-menu-list > li > a:not([aria-current=true], [aria-selected=true]):hover {
    color: #7D4B37;
    background-size: 100% 1px;
    background-position-x: var(--transform-origin-start);
  }
}
header[role=banner] .menu-bar ul.first-level .category-level-1 ul.mega-links .mega-menu-list span {
  line-height: 15px;
}
header[role=banner] .menu-bar ul.first-level.in {
  opacity: 1;
  display: flex;
  position: absolute;
  right: 0;
  left: 0;
  top: 80px;
  background-color: #F5F0EB;
  width: 100vw;
  padding: 30px 55px 50px;
}
header[role=banner] .menu-bar ul.first-level.in::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -40px;
  height: 40px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0));
  pointer-events: none;
}
header[role=banner] .menu-bar ul.first-level.in ul.cols {
  display: flex !important;
}
header[role=banner] .menu-bar ul.first-level.in a {
  color: #7D4B37;
}
header[role=banner] .menu-bar .image-container {
  position: relative;
  background-color: #FAFAFA;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 3px;
  position: relative;
  overflow: hidden;
}
header[role=banner] .menu-bar .image-container:focus {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}
header[role=banner] .menu-bar .image-container:focus img {
  transform: scale(1.015);
}
header[role=banner] .menu-bar .image-container:active {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}
header[role=banner] .menu-bar .image-container:active img {
  transform: scale(1.015);
}
@media (hover: hover) {
  header[role=banner] .menu-bar .image-container:hover {
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  }
  header[role=banner] .menu-bar .image-container:hover img {
    transform: scale(1.015);
  }
}
header[role=banner] .menu-bar .image-container img {
  mix-blend-mode: multiply;
  transition: top 2.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  border-radius: 3px;
  transition: transform 0.5s ease;
}
header[role=banner] .menu-bar .image-container span {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(238, 238, 238, 0.6666666667);
  padding: 10px;
}
header[role=banner] .menu-bar .image-container span h6 {
  margin: 0;
}
header[role=banner] .menu-bar .img-banner {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover;
}
header[role=banner] .menu-bar .menu-sx {
  display: block;
}
header[role=banner] .menu-bar .menu-sx .menu-container {
  width: 100%;
  transition: transform 0.5s ease-in-out;
  overflow: hidden;
  /* Nasconde ciò che esce fuori dal contenitore */
}
header[role=banner] .menu-bar .menu-sx .category {
  position: relative;
  transition: transform 0.5s ease-in-out;
}
header[role=banner] .menu-bar .menu-sx .shift-left {
  transform: translateX(-100%);
  /* Muove il menu completamente a sinistra */
}
header[role=banner] .menu-bar .menu-sx li {
  position: relative;
}
header[role=banner] .menu-bar .menu-sx li .sub-list {
  display: block;
  opacity: 0;
  position: absolute;
  width: 100%;
  transform: translateX(100%);
  /* Inizialmente la lista è fuori dallo schermo */
  transition: transform 0.3s ease-in-out;
}
header[role=banner] .menu-bar .menu-sx li .sub-list.show {
  opacity: 1;
  transform: translateX(0);
}
header[role=banner] .menu-bar .menu-sx li h2 {
  transition: transform 0.3s ease-in-out;
  margin: 0;
  padding: 20px 0px;
}
header[role=banner] .menu-bar .menu-sx li h2 a {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
header[role=banner] .menu-bar .menu-sx li h2 a .rotate-arrow {
  transform: rotate(180deg);
  transition: transform 0.3s ease-in-out;
}
header[role=banner] .menu-bar .menu-sx li h2 a svg {
  transition: transform 0.3s ease-in-out;
  /* Assicura l'animazione fluida anche quando torna indietro */
}
header[role=banner] .menu-bar .menu-sx li.others {
  background-color: #DDCFC7;
}
header[role=banner] .menu-bar .menu-sx li.others a span {
  color: #7D4B37;
}
header[role=banner] .menu-bar .desktop-only {
  display: none;
  margin-right: 25px;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav.brand-nav > ul > li.category.upper-level > a {
    --transform-origin-start: 0%;
    --transform-origin-end: 100%;
    background: linear-gradient(to right, currentColor, currentColor) 0 100%/0 1px no-repeat;
    background-origin: content-box;
    background-clip: content-box;
    background-position-x: var(--transform-origin-end);
    text-decoration: none;
    transition: background-size 0.2s ease-in-out;
  }
  header[role=banner] .menu-bar .main-nav.brand-nav > ul > li.category.upper-level > a:focus-visible {
    color: #7D4B37;
    background-size: 100% 1px;
    background-position-x: var(--transform-origin-start);
  }
}
@media screen and (pointer: fine) and (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav.brand-nav > ul > li.category.upper-level > a:not([aria-current=true], [aria-selected=true]):hover {
    color: #7D4B37;
    background-size: 100% 1px;
    background-position-x: var(--transform-origin-start);
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar {
    /* >= 992*/
  }
  header[role=banner] .menu-bar #mobileMenuToggleTarget {
    display: none;
  }
  header[role=banner] .menu-bar .desktop-only {
    display: block;
  }
}
header[role=banner] .menu-bar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  padding-right: 0;
  margin-top: 0;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar ul {
    padding-right: 0;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar ul {
    margin-top: 0;
  }
}
header[role=banner] .menu-bar ul li .sub-list a {
  font-size: 1.13rem;
  color: #7D4B37;
}
header[role=banner] .menu-bar ul li.accordion-item h2 {
  padding-left: 16px;
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar ul li.accordion-item h2 {
    padding-left: 16px;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar ul li.accordion-item h2 {
    padding-left: 0;
  }
}
header[role=banner] .menu-bar ul li h2 {
  width: 100%;
  color: #FFF;
  text-align: left;
  font-weight: normal;
  text-transform: uppercase;
  font-size: 1.13rem;
}
header[role=banner] .menu-bar ul li h2.main-link {
  margin-bottom: 0;
  padding: 0;
}
.is-mobile-menu-open header[role=banner] .menu-bar ul li h2.main-link {
  padding: 10px 0px;
}
header[role=banner] .menu-bar ul li h2 a {
  font-size: 0.88rem;
  color: #707070;
  text-transform: uppercase;
}
header[role=banner] .menu-bar ul li.category.upper-level {
  display: block;
}
header[role=banner] .menu-bar ul li.main-padding {
  padding-left: 0;
  padding-right: 0;
}
header[role=banner] .menu-bar ul li.category {
  list-style-type: none;
  border: none;
  background-color: transparent;
  justify-content: center;
  /*.is-mobile-menu-open & {

  a {
     background: url('../../images/arrow-right-white.svg') no-repeat center right;
   }
  } */
}
@media (min-width: 768px) {
  header[role=banner] .menu-bar ul li.category {
    background-color: transparent;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar ul li.category {
    justify-content: initial;
  }
}
header[role=banner] .menu-bar ul li.category button {
  padding-left: 0;
  text-transform: uppercase;
  height: 53px;
  background: #7D4B37;
  color: #FFF;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 0.88rem;
}
header[role=banner] .menu-bar ul li.category button:after {
  background-image: url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27><path d=%27M2 5L8 11L14 5%27/></svg>");
}
header[role=banner] .menu-bar ul li.category button:focus {
  box-shadow: none;
}
header[role=banner] .menu-bar ul li.category button:not(.collapsed) {
  box-shadow: none;
}
header[role=banner] .menu-bar ul li.category .accordion-body {
  background: #7D4B37;
  color: #FFF;
}
header[role=banner] .menu-bar a {
  display: flex;
  align-items: center;
  outline: none;
  position: relative;
  text-decoration: none !important;
  text-transform: capitalize;
  transition: color 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  justify-content: flex-start;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  padding: 5px 0;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar a {
    padding: 5px 15px;
  }
}
header[role=banner] .menu-bar a img {
  max-width: 160px;
  transition: filter 0.25s ease, opacity 0.25s ease;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar a img {
    max-width: 180px;
  }
}
header[role=banner] .menu-bar a:focus {
  color: #7D4B37;
}
header[role=banner] .menu-bar a:active {
  color: #7D4B37;
}
@media (hover: hover) {
  header[role=banner] .menu-bar a:hover {
    color: #7D4B37;
  }
}
.is-mobile-menu-open header[role=banner] .menu-bar a {
  color: #7D4B37;
}
header[role=banner] .menu-bar a.brand-website {
  justify-content: center;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav {
    flex-grow: 1;
    display: flex;
  }
  header[role=banner] .menu-bar .main-nav > ul {
    flex-grow: 1;
    justify-content: space-between;
    max-width: 600px;
  }
}
@media (min-width: 1600px) {
  header[role=banner] .menu-bar .main-nav > ul {
    flex-grow: 0;
    justify-content: flex-start;
    max-width: none;
  }
}
header[role=banner] .menu-bar .main-nav > .left {
  display: inline-flex;
  padding-top: 10px;
  align-items: flex-start;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav > .left {
    display: flex;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav > .left {
    padding-top: 10px;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav > .left {
    align-items: center;
  }
}
header[role=banner] .menu-bar .main-nav > .left .hamburger {
  opacity: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 0;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .main-nav > .left .hamburger {
    display: none;
  }
}
header[role=banner] .menu-bar .main-nav > .left .hamburger .hamburger-box {
  height: 18px;
}
header[role=banner] .menu-bar .main-nav > .left .hamburger.is-active .hamburger-inner,
header[role=banner] .menu-bar .main-nav > .left .hamburger.is-active .hamburger-inner::before,
header[role=banner] .menu-bar .main-nav > .left .hamburger.is-active .hamburger-inner::after {
  width: 20px;
}
@media (max-width: 991.98px) {
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget {
    position: fixed;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 80px);
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0px;
    border-bottom: 1px solid #E0E0E0;
    width: 100vw;
    inset: 0 0 0 auto;
    /* top:0; right:0; bottom:0; */
    background: #FFF;
    transform: translateX(100%);
    /* fuori dallo schermo */
    opacity: 0;
    visibility: hidden;
    transition: transform 0.32s ease, opacity 0.24s ease, visibility 0s linear 0.32s;
    /* ritarda la visibilità per evitare focus/flicker */
    will-change: transform, opacity;
    top: 110px;
    left: 0;
    z-index: 1050;
    /* sopra l’header */
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget.in {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
    transition: transform 0.32s ease, opacity 0.24s ease;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget.is-closing {
    transform: translateX(100%);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.32s ease, opacity 0.24s ease, visibility 0s linear 0.32s;
  }
  .is-mobile-menu-open header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget {
    background-color: #FFF;
  }
  .is-mobile-menu-open header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .form-select {
    margin: 0;
    padding: 10px 40px 10px 0;
    border: 1px solid #DDCFC7;
    background-color: transparent;
    color: #7D4B37;
    box-shadow: none;
    outline: none;
    text-transform: uppercase;
    border-radius: 3px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3E%3Cpath fill=%27none%27 stroke=%27%23FFFFFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3E%3C/svg%3E");
    font-weight: 600;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .nav-tabs {
    border-bottom: solid 1px transparent;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    overflow: hidden;
    font-size: 14px;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .nav-tabs .nav-item {
    width: 100%;
    display: flex;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .nav-tabs .nav-item .nav-link {
    color: #707070;
    padding: 10px 10px;
    width: 100%;
    display: flex;
    border: solid 1px #939393;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .nav-tabs .nav-item .nav-link.active {
    font-weight: 600;
    border: solid 1px #7D4B37;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .tab-content * {
    text-transform: uppercase !important;
    font-size: 14px;
    color: #707070;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links {
    background-color: #7D4B37;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links .main-link {
    margin-bottom: 0;
    padding: 0;
  }
  .is-mobile-menu-open header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links .main-link {
    padding: 10px 0px;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links .listino-select,
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links .translation-select {
    padding: 0px;
  }
  header[role=banner] .menu-bar .main-nav > #mobileMenuToggleTarget .extra-links a {
    font-size: 0.88rem;
    color: #FFF;
    text-transform: uppercase;
    font-weight: 600;
  }
}
header[role=banner] .menu-bar .user-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 10px 0;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .user-nav {
    padding: 10px 0;
  }
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav {
  align-items: center;
}
header[role=banner] .menu-bar .user-nav ul li.translation-select, header[role=banner] .menu-bar .user-nav ul li.listino-select {
  display: flex;
  align-items: center;
  margin-left: 5px;
  margin-right: 0;
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li.translation-select, .is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li.listino-select {
  margin-left: 0px;
  margin-top: 3px;
}
header[role=banner] .menu-bar .user-nav ul li.translation-select .form-select, header[role=banner] .menu-bar .user-nav ul li.listino-select .form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3E%3Cpath fill=%27none%27 stroke=%27%23FFFFFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3E%3C/svg%3E");
  text-align: end;
  margin: 0;
  padding: 5px 40px 5px 0;
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  box-shadow: none;
  outline: none;
  text-transform: capitalize;
  font-weight: 600;
}
header[role=banner] .menu-bar .user-nav ul li.translation-select .form-select option, header[role=banner] .menu-bar .user-nav ul li.listino-select .form-select option {
  background-color: #FFF !important;
  border: none !important;
  color: #7D4B37 !important;
  text-align: left !important;
  padding: 5px 10px !important;
  border-radius: 3px !important;
}
header[role=banner] .menu-bar .user-nav ul li.translation-select .form-select option:hover, header[role=banner] .menu-bar .user-nav ul li.listino-select .form-select option:hover {
  background-color: #FFF !important;
  color: #7D4B37 !important;
}
header[role=banner] .menu-bar .user-nav ul li.icon-only {
  margin: 0px;
}
header[role=banner] .menu-bar .user-nav ul li a {
  font-size: 0.88rem;
  color: #FFF;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  text-transform: uppercase;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
header[role=banner] .menu-bar .user-nav ul li a:hover, header[role=banner] .menu-bar .user-nav ul li a:focus-visible {
  color: #7D4B37;
}
header[role=banner] .menu-bar .user-nav ul li a .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 24px;
  width: 24px;
  background: none !important;
  background-size: auto;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
header[role=banner] .menu-bar .user-nav ul li a .icon.icon-lock {
  background-image: url(/build/images/lock.36ee0cbc.svg);
}
header[role=banner] .menu-bar .user-nav ul li a .icon.icon-search {
  background-image: url(/build/images/search.0e9ed7b7.svg);
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li a .icon.icon-search {
  background-image: url(/build/images/search.0e9ed7b7.svg);
}
header[role=banner] .menu-bar .user-nav ul li a .icon.icon-user {
  background-image: url(/build/images/profile.fb661b92.svg);
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li a .icon.icon-user {
  background-image: url(/build/images/profile.fb661b92.svg);
}
header[role=banner] .menu-bar .user-nav ul li a .icon.icon-shopping-cart {
  background-image: url(/build/images/buy.ee7676a4.svg);
}
header[role=banner] .menu-bar .user-nav ul li a .icon.icon-shopping-cart.has-items {
  background-image: url(/build/images/buy.ee7676a4.svg);
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li a .icon.icon-shopping-cart {
  background-image: url(/build/images/buy.ee7676a4.svg);
}
header[role=banner] .menu-bar .user-nav ul li a .icon + .text {
  margin-left: 6px;
}
header[role=banner] .menu-bar .user-nav ul li a .lucide,
header[role=banner] .menu-bar .user-nav ul li a [data-lucide] {
  display: block;
  font-size: 1.25rem;
  line-height: 1;
  color: #7D4B37;
  transition: color 0.25s ease;
}
header[role=banner] .menu-bar .user-nav ul li a .text {
  display: block;
}
header[role=banner] .menu-bar .user-nav ul li.reserved-area {
  border-left: 1px solid #E0E0E0;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area {
    border-right: 1px solid #E0E0E0;
  }
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area {
    margin-right: 6px;
  }
}
@media (max-width: 991.98px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area {
    padding-left: 10px;
  }
}
@media (min-width: 1600px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area {
    margin-right: 15px;
  }
}
@media (max-width: 1599.98px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area a {
    padding-left: 10px;
    padding-right: 10px;
  }
}
header[role=banner] .menu-bar .user-nav ul li.reserved-area a .text {
  font-size: 0.69rem;
  font-weight: 400;
}
@media (max-width: 1599.98px) {
  header[role=banner] .menu-bar .user-nav ul li.reserved-area a .text {
    display: none;
  }
}
header[role=banner] .menu-bar .user-nav ul li.icon-only a {
  padding: 0px 6px;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .user-nav ul li.icon-only a {
    padding: 0 20px;
  }
}
.is-mobile-menu-open header[role=banner] .menu-bar .user-nav ul li.icon-only a {
  padding: 0 6px;
}
header[role=banner] .menu-bar .user-nav ul li.icon-only a:focus {
  color: #7D4B37;
}
header[role=banner] .menu-bar .user-nav ul li.icon-only a:active {
  color: #7D4B37;
}
@media (hover: hover) {
  header[role=banner] .menu-bar .user-nav ul li.icon-only a:hover {
    color: #7D4B37;
  }
}
header[role=banner] .menu-bar .user-nav ul li.icon-only a .icon-shopping-cart .items-count {
  position: absolute;
  width: 16px;
  height: 16px;
  line-height: 14px;
  font-size: 0.63rem;
  font-weight: 600;
  text-align: center;
  visibility: hidden;
  color: white;
  background-color: #7D4B37;
  border-radius: 100px;
  bottom: 14px;
  left: 10px;
  border: 1px solid white;
}
header[role=banner] .menu-bar .user-nav ul li.icon-only a .iconLog {
  width: 28px;
  height: 28px;
  font-size: 0.88rem;
  font-weight: 400;
  text-align: center;
  line-height: 28px;
  border-radius: 3px;
  background-color: #7D4B37;
  color: #FFF;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
@media (min-width: 992px) {
  header[role=banner] .menu-bar .user-nav ul li.search {
    position: relative;
  }
}
header[role=banner] .menu-bar .user-nav ul li.search .input-group {
  margin-top: 5px;
  flex-wrap: nowrap;
  height: 100%;
}
header[role=banner] .menu-bar .user-nav ul li.search .form-control {
  width: 200px;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0;
  background: transparent;
  border-color: #DDCFC7;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
header[role=banner] .menu-bar .user-nav ul li.search .input-group-text {
  padding-top: 0;
  padding-bottom: 0;
  background: transparent;
  border-color: #DDCFC7;
}
header[role=banner] .menu-bar .user-nav ul li.search.in .search-panel {
  pointer-events: auto;
  opacity: 1;
  bottom: 0;
}
header[role=banner] .menu-bar .user-nav ul li.search.in > a::after {
  height: 5px;
}
header[role=banner] .menu-bar .user-nav ul li.search .search-panel {
  position: absolute;
  right: 0;
  bottom: 10px;
  transform: translateY(100%);
  background-color: #FFF;
  width: 300px;
  opacity: 0;
  pointer-events: none;
  transition-property: opacity, bottom;
  transition-duration: 250ms;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  z-index: 1;
}
@media (max-width: 767.98px) {
  header[role=banner] .menu-bar .user-nav ul li.search .search-panel {
    width: calc(100vw - 60px);
    transform: translate(-50%, 100%);
    right: auto;
    left: 50%;
  }
}
header[role=banner] .menu-bar .user-nav ul li.search .search-panel .form-control {
  margin: 0;
  padding-right: 40px;
}
header[role=banner] .menu-bar .user-nav ul li.search .search-panel button {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: none;
  background-color: transparent;
  width: 40px;
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-image: url(/build/images/search.0e9ed7b7.svg);
  outline: none;
  padding: 0;
}
header[role=banner] .menu-bar.light {
  color: #7D4B37;
}
header[role=banner] .menu-bar.light a {
  color: #7D4B37;
}
header[role=banner] .menu-bar.light .extra-links {
  background-color: #7D4B37 !important;
}
header[role=banner] .menu-bar.light .extra-links a,
header[role=banner] .menu-bar.light .extra-links .form-select {
  color: #7D4B37 !important;
}
header[role=banner] .menu-bar.light .form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3E%3Cpath fill=%27none%27 stroke=%27%23707070%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3E%3C/svg%3E") !important;
}
header[role=banner] .menu-bar.light .icon.icon-search {
  background-image: url(/build/images/search-light.5d387d7b.svg) !important;
}
header[role=banner] .menu-bar.light .icon.icon-user {
  background-image: url(/build/images/profile-light.9a9c7112.svg) !important;
}
header[role=banner] .menu-bar.light .icon.icon-shopping-cart {
  background-image: url(/build/images/buy-light.261caa2a.svg) !important;
}
header[role=banner] .menu-bar.light .user-nav .icon {
  background: none !important;
}
header[role=banner] .menu-bar.light .user-nav ul li .form-select {
  color: #7D4B37;
}
header[role=banner] .menu-bar.light .first-level.row.in ul li a,
header[role=banner] .menu-bar.light li.category a {
  color: #7D4B37;
  transition: all 0.3s ease;
}
header[role=banner] .menu-bar.light .first-level.row.in ul li a:hover,
header[role=banner] .menu-bar.light li.category a:hover {
  color: #7D4B37;
}
header[role=banner] .submenu-bar {
  padding: 14px 0px 0px 14px;
  display: flex;
  gap: 5px;
  flex-direction: row;
  justify-content: flex-start;
  align-items: baseline;
  align-content: center;
  height: auto;
  background: #FFF;
}
@media (min-width: 992px) {
  header[role=banner] .submenu-bar {
    display: none;
  }
}
header[role=banner] .submenu-bar .scroll-submenu {
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
}
header[role=banner] .submenu-bar .scroll-submenu a:last-child {
  margin-right: 16px;
}
header[role=banner] .submenu-bar .category {
  display: inline-block;
  background: #FFF;
  color: #7D4B37;
  border: solid 1px #7D4B37;
  padding: 7px 12px;
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
}
header[role=banner] .img-icon-header {
  width: 30px;
  object-fit: contain;
}

.select2-container--default .select2-selection--single {
  margin: 0;
  padding: 30px 40px 30px 0;
  border: none;
  background-color: transparent;
  color: white;
  box-shadow: none;
  outline: none;
  text-transform: capitalize;
  border-radius: 0;
  display: flex;
  align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: white;
  padding: 0;
}

.select2-container--default .select2-results__option--selected {
  background-color: white;
}

.select2-dropdown {
  background-color: white;
  color: #7D4B37;
  border: 0px;
  border-radius: 0px;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: white;
  font-weight: bold;
  color: #7D4B37;
}

.select2-results__option {
  background-color: white;
  padding: 4px 8px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 0px;
  background-image: url(/build/images/arrow-right-white.08c5130f.svg);
  background-repeat: no-repeat;
  background-position: center;
  transform: rotate(90deg);
  background-size: 6px;
  border: none;
  width: 10px;
  /* puoi regolarlo in base all’icona */
  height: 100%;
  right: 15px;
}

.select2-container--default .select2-results > .select2-results__options {
  padding: 10px;
}

.select2-container--default .select2-selection--single {
  padding: 0;
}

@media (max-width: 992px) {
  .select2-container--default .select2-selection--single .select2-selection__arrow {
    background-size: 20px;
    background-image: url(/build/images/icon-arrow-right.cf928b0b.svg);
    /* tua icona */
    right: 3px;
  }
  .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #7D4B37;
  }
  .select2-dropdown {
    background-color: #331f1f;
  }
  .select2-results__option {
    background-color: #331f1f;
  }
  .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #331f1f;
  }
  .select2-results__option {
    padding: 4px 0px;
  }
}
main[role=main],
.thankyou {
  position: relative;
}
main[role=main]::before,
.thankyou::before {
  content: "";
  width: 100vw;
  height: 100vh;
  background: rgba(125, 75, 55, 0);
  transition: background-color ease-in-out 0.5s;
  z-index: -1;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.submenu-open main[role=main]::before,
.submenu-open .thankyou::before {
  content: "";
  width: 100vw;
  height: 100vh;
  background: rgba(125, 75, 55, 0.9);
  transition: background-color ease-in-out 0.3s;
  z-index: 4;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

body.light main[role=main]::before,
body.light .thankyou::before {
  background: rgba(238, 238, 238, 0);
}
body.light.submenu-open main[role=main]::before,
body.light.submenu-open .thankyou::before {
  background: #eeeeee;
}

@media (max-width: 991.98px) {
  #mobileMenuToggleTarget {
    /* il viewport del menu */
    /* riduci motion */
  }
  #mobileMenuToggleTarget .mobile-mega-menu {
    position: relative;
    height: 100%;
    overflow: hidden;
  }
  #mobileMenuToggleTarget .mobile-accordion {
    width: 100%;
  }
  #mobileMenuToggleTarget .mobile-accordion-list,
  #mobileMenuToggleTarget .mobile-accordion-sublist {
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
  }
  #mobileMenuToggleTarget .mobile-accordion-item {
    margin: 0;
  }
  #mobileMenuToggleTarget .mobile-accordion-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 12px;
    background-color: #F5F0EB;
    border: 0;
    border-bottom: 1px solid #DDCFC7;
    text-transform: uppercase;
    font-weight: 300;
    color: #7D4B37;
    font-size: 1.13rem;
  }
  #mobileMenuToggleTarget .mobile-accordion-toggle:focus {
    outline: none;
    box-shadow: none;
  }
  #mobileMenuToggleTarget .mobile-accordion-title {
    font-weight: 300;
  }
  #mobileMenuToggleTarget .mobile-accordion-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    color: #7D4B37;
  }
  #mobileMenuToggleTarget .mobile-accordion-icon svg {
    width: 18px;
    height: 18px;
    stroke-width: 1.5;
  }
  #mobileMenuToggleTarget .mobile-accordion-icon .icon-minus {
    display: none;
  }
  #mobileMenuToggleTarget .mobile-accordion-toggle[aria-expanded=true] .mobile-accordion-icon .icon-plus {
    display: none;
  }
  #mobileMenuToggleTarget .mobile-accordion-toggle[aria-expanded=true] .mobile-accordion-icon .icon-minus {
    display: inline-flex;
  }
  #mobileMenuToggleTarget .mobile-accordion-panel {
    padding: 0 0 8px;
  }
  #mobileMenuToggleTarget .mobile-accordion-sublist li a,
  #mobileMenuToggleTarget .mobile-accordion-list > li.link.others > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 12px;
    text-transform: uppercase;
    font-weight: 300;
    color: #7D4B37;
    border-bottom: 1px solid #DDCFC7;
    font-size: 1.13rem;
  }
  #mobileMenuToggleTarget .mobile-accordion-sublist li:last-child a,
  #mobileMenuToggleTarget .mobile-accordion-list > li.link.others:last-child > a {
    border-bottom: none;
  }
  #mobileMenuToggleTarget .mobile-accordion-sublist .link.father a {
    background-color: #FAFAFA;
  }
  #mobileMenuToggleTarget .mobile-accordion-sublist .link.subnav a {
    padding-left: 25px;
  }
  #mobileMenuToggleTarget .mobile-accordion-sublist .link.all a {
    border-bottom: none;
    padding-top: 16px;
    padding-bottom: 6px;
    color: #7D4B37;
  }
  #mobileMenuToggleTarget .mobile-accordion-panel .mega-menu-banners h6 {
    font-weight: 300;
  }
  #mobileMenuToggleTarget .mobile-accordion-panel .mega-menu-banners a {
    font-weight: 300;
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  #mobileMenuToggleTarget .mobile-accordion-panel {
    transition: none;
  }
}
/* Quando il menu è aperto, blocca lo scroll del body */
body.is-mobile-menu-open {
  overflow: hidden;
  /* in JS fai anche .css("overflow","hidden") per iOS */
}

/* (Optional) backdrop minimale */
body.is-mobile-menu-open::after {
  content: "";
  position: fixed;
  inset: 0;
  filter: blur(40px);
  opacity: 1;
  transition: opacity 0.24s ease;
  pointer-events: none;
  /* se vuoi che il tap fuori NON chiuda, lascia così */
  z-index: 2;
  /* sotto il menu */
}

@media (prefers-reduced-motion: reduce) {
  #mobileMenuToggleTarget {
    transition: none;
  }
  #mobileMenuToggleTarget.in,
  #mobileMenuToggleTarget.is-closing {
    transition: none;
  }
  .promotions-bar,
  .header-container,
  .menu-bar,
  .menu-bar.light,
  .brand-website img,
  .user-nav .lucide,
  .user-nav [data-lucide],
  .user-nav .iconLog,
  .hamburger-inner,
  .hamburger-inner::before,
  .hamburger-inner::after {
    transition: none;
  }
}
body.page-homepage header[role=banner]:not(.header-scrolled) .promotions-bar {
  background-color: transparent;
  color: #FFF;
}
body.page-homepage header[role=banner]:not(.header-scrolled) .promotions-bar .center-text {
  color: #FFF;
}

body.page-homepage #nav-header-container:not(.scrolled) .menu-bar {
  background-color: transparent;
}
body.page-homepage #nav-header-container:not(.scrolled) .menu-bar.light {
  border-bottom: solid 1px #DDCFC7;
  color: #FFF;
}
body.page-homepage #nav-header-container:not(.scrolled) .menu-bar.light .form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3E%3Cpath fill=%27none%27 stroke=%27%23FFFFFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3E%3C/svg%3E") !important;
}
body.page-homepage #nav-header-container:not(.scrolled) .menu-bar.light .main-nav.brand-nav > ul > li > a {
  color: #FFF;
}
body.page-homepage #nav-header-container:not(.scrolled) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible {
  color: #7D4B37;
}
body.page-homepage #nav-header-container:not(.scrolled) .brand-website img {
  filter: brightness(0) invert(1);
}
body.page-homepage #nav-header-container:not(.scrolled) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled) .user-nav [data-lucide] {
  color: #FFF !important;
}
body.page-homepage #nav-header-container:not(.scrolled) .user-nav .iconLog {
  background-color: transparent;
  color: #FFF;
  border: 1px solid #FFF;
}
body.page-homepage #nav-header-container:not(.scrolled) .hamburger-inner,
body.page-homepage #nav-header-container:not(.scrolled) .hamburger-inner::before,
body.page-homepage #nav-header-container:not(.scrolled) .hamburger-inner::after {
  background-color: #FFF !important;
}

body.page-homepage #nav-header-container.scrolled .menu-bar,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar {
  background-color: #F5F0EB;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light a,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light a {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light .form-select,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .form-select,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .form-select,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .form-select,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .form-select,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3E%3Cpath fill=%27none%27 stroke=%27%23707070%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3E%3C/svg%3E") !important;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light .main-nav.brand-nav > ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .main-nav.brand-nav > ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container.scrolled .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .main-nav.brand-nav > ul > li > a:focus-visible {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light .user-nav ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .user-nav ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .user-nav ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .user-nav ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .user-nav ul > li > a,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .user-nav ul > li > a {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container.scrolled .menu-bar.light .user-nav ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .menu-bar.light .user-nav ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .menu-bar.light .user-nav ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .menu-bar.light .user-nav ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .menu-bar.light .user-nav ul > li > a:focus-visible,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .user-nav ul > li > a:hover,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .menu-bar.light .user-nav ul > li > a:focus-visible {
  color: #7D4B37;
}
body.page-homepage #nav-header-container.scrolled .user-nav .lucide,
body.page-homepage #nav-header-container.scrolled .user-nav [data-lucide],
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .user-nav [data-lucide],
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .user-nav [data-lucide],
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .user-nav [data-lucide],
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .user-nav [data-lucide],
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .user-nav .lucide,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .user-nav [data-lucide] {
  color: #7D4B37 !important;
}
body.page-homepage #nav-header-container.scrolled .brand-website img,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .brand-website img,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .brand-website img,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .brand-website img,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .brand-website img,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .brand-website img {
  filter: none;
}
body.page-homepage #nav-header-container.scrolled .user-nav .iconLog,
body.page-homepage #nav-header-container:not(.scrolled):has(ul.first-level.in) .user-nav .iconLog,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:hover) .user-nav .iconLog,
body.page-homepage #nav-header-container:not(.scrolled):has(.main-nav.brand-nav > ul > li.category.upper-level:focus-within) .user-nav .iconLog,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:hover) .user-nav .iconLog,
body.page-homepage #nav-header-container:not(.scrolled):has(.user-nav ul > li:focus-within) .user-nav .iconLog {
  background-color: #7D4B37;
  color: #FFF;
  border-color: transparent;
}

footer .content-info {
  background: #F5F0EB;
  padding-top: 0;
  padding-bottom: 35px;
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 768px) {
  footer .content-info {
    padding-top: 30px;
  }
}
@media (min-width: 768px) {
  footer .content-info {
    padding-bottom: 60px;
  }
}
@media (min-width: 576px) {
  footer .content-info {
    padding-left: 24px;
    padding-right: 24px;
  }
}
@media (min-width: 768px) {
  footer .content-info {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  footer .content-info {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media (min-width: 1400px) {
  footer .content-info {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 1600px) {
  footer .content-info {
    padding-left: 100px;
    padding-right: 100px;
  }
}
footer .content-info .footer-container {
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: flex-start;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1400px;
  flex-direction: column;
}
@media (min-width: 992px) {
  footer .content-info .footer-container {
    flex-direction: row;
  }
}
footer .content-info .footer-container .footer-col {
  /* #footer-collapse-4 {
    @include rpmq((margin-left), (xs: -20px, md: 0px));
  }*/
  text-align: left;
  border-top: 1px solid #DDCFC7;
}
footer .content-info .footer-container .footer-col:first-child {
  border-top-width: 0;
}
footer .content-info .footer-container .footer-col.logo-footer .footer-logo {
  margin-top: 30px;
  max-width: 160px;
}
footer .content-info .footer-container .footer-col .collapse-content {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .collapse-content {
    padding-top: 0;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .collapse-content {
    padding-bottom: 0;
  }
}
footer .content-info .footer-container .footer-col .footer-logo {
  max-width: 150px;
}
@media (min-width: 768px) {
  footer .content-info .footer-container .footer-col .footer-logo {
    max-width: 100%;
  }
}
footer .content-info .footer-container .footer-col .payment-icons {
  max-width: 100%;
}
@media (min-width: 768px) {
  footer .content-info .footer-container .footer-col .payment-icons {
    max-width: 100%;
  }
}
footer .content-info .footer-container .footer-col:first-child {
  margin-left: 0;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col:first-child {
    margin-left: 0;
  }
}
footer .content-info .footer-container .footer-col:last-child {
  margin-right: 0;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col:last-child {
    margin-right: 0;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col {
    border-top: none;
  }
}
footer .content-info .footer-container .footer-col:last-child {
  border-bottom: 1px solid #DDCFC7;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col:last-child {
    border-bottom: none;
  }
}
footer .content-info .footer-container .footer-col .title {
  color: #7D4B37;
  text-decoration: none;
  text-transform: uppercase;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 0;
  margin-top: 30px;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title {
    margin-bottom: 33px;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title {
    margin-top: 14px;
  }
}
footer .content-info .footer-container .footer-col .title a {
  font-weight: normal;
  color: #7D4B37;
  text-decoration: none;
  text-transform: uppercase;
  position: relative;
  -webkit-font-smoothing: antialiased;
  font-size: 1.06rem;
  padding-top: 20px;
  padding-bottom: 20px;
  display: inline-block;
  width: 100%;
  cursor: pointer;
  border-bottom: 1px dashed #DDCFC7;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    pointer-events: none;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    display: inline;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    width: auto;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    cursor: text;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a {
    border-bottom: none;
  }
}
footer .content-info .footer-container .footer-col .title a::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 25px;
  transition: transform 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  background: url(/build/images/arrow-right-white.08c5130f.svg) no-repeat center right;
  display: block;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a::after {
    background: none;
  }
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .title a::after {
    display: none;
  }
}
footer .content-info .footer-container .footer-col .title a[aria-expanded=true]::after {
  width: 25px;
  transform: translateY(-50%) rotate(90deg);
}
footer .content-info .footer-container .footer-col .list-link {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  padding-bottom: 16px;
}
@media (min-width: 992px) {
  footer .content-info .footer-container .footer-col .list-link {
    padding-bottom: 0;
  }
}
footer .content-info .footer-container .footer-col .list-link.social {
  display: flex;
  flex-direction: column;
}
footer .content-info .footer-container .footer-col .list-link.social li:not(:last-child) {
  margin-bottom: 5px;
}
footer .content-info .footer-container .footer-col .list-link li:not(:last-child) {
  margin-bottom: 7px;
}
@media (min-width: 768px) {
  footer .content-info .footer-container .footer-col .list-link li:not(:last-child) {
    margin-bottom: 10px;
  }
}
footer .content-info .footer-container .footer-col .list-link li a {
  display: flex;
  font-weight: 400;
  color: #7D4B37;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  font-size: 0.88rem;
}
footer .content-info .footer-container .footer-col.col-service p {
  color: #7D4B37;
  font-weight: 400;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  font-size: 0.88rem;
}
footer .content-info .footer-container a:hover {
  color: #7D4B37 !important;
  text-decoration: underline !important;
}
footer .footer-main-content {
  padding-left: 0;
  padding-right: 0;
}
footer .footer-main-content .footer-container {
  display: block;
  overflow-x: hidden;
}
@media (max-width: 991.98px) {
  footer .footer-main-content .footer-content-row .footer-col {
    border-top: 0;
    position: relative;
  }
  footer .footer-main-content .footer-content-row .footer-col:last-child {
    border-bottom: 0;
  }
  footer .footer-main-content .footer-content-row .footer-col::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: 100vw;
    transform: translateX(-50%);
    border-top: 1px solid #DDCFC7;
  }
  footer .footer-main-content .footer-content-row .footer-col:last-child::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 100vw;
    transform: translateX(-50%);
    border-bottom: 1px solid #DDCFC7;
  }
}
@media (min-width: 992px) {
  footer .footer-main-content {
    padding-top: 0;
  }
  footer .footer-main-content .footer-titles-band {
    border-top: 1px solid #DDCFC7;
    border-bottom: 1px solid #DDCFC7;
    margin-bottom: 25px;
    padding-top: 18px;
    padding-bottom: 18px;
  }
  footer .footer-main-content .footer-titles-row {
    align-items: center;
  }
  footer .footer-main-content .footer-titles-row .footer-col {
    display: flex;
    align-items: center;
  }
  footer .footer-main-content .footer-titles-row .title {
    margin: 0;
  }
  footer .footer-main-content .footer-titles-row .footer-title-placeholder {
    min-height: 1.5rem;
  }
  footer .footer-main-content .footer-content-row .footer-col .collapse-content {
    padding-top: 0;
  }
}
footer .bg-footer {
  background-color: #F5F0EB;
}
footer .content-info2 {
  background-color: #F5F0EB;
}
footer .content-info2 .footer-bottom-container {
  position: relative;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media (min-width: 992px) {
  footer .content-info2 .footer-bottom-container {
    align-items: center;
  }
}
@media (min-width: 992px) {
  footer .content-info2 .footer-bottom-container {
    flex-direction: column;
  }
}
footer .content-info2 .footer-bottom-container .company-info {
  text-align: center;
  margin-bottom: 0px;
  order: 3;
}
@media (min-width: 992px) {
  footer .content-info2 .footer-bottom-container .company-info {
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  footer .content-info2 .footer-bottom-container .company-info {
    order: unset;
  }
}
footer .content-info2 .footer-bottom-container .company-info a {
  color: #7D4B37 !important;
  text-decoration: none !important;
}
footer .content-info2 .footer-bottom-container .company-info p {
  font-weight: 400;
  color: #7D4B37 !important;
  margin-bottom: 0;
  font-size: 1rem;
}
footer .content-info2 .footer-bottom-container .company-info p.detail-1 {
  text-transform: uppercase;
}
footer .content-info2 .footer-bottom-container .company-info p.detail-2 {
  color: #7D4B37 !important;
  font-size: 0.75rem;
}
footer .content-info2 .footer-bottom-container .by {
  order: 5;
}
@media (min-width: 992px) {
  footer .content-info2 .footer-bottom-container .by {
    order: unset;
  }
}
footer .content-info2 .footer-bottom-container p {
  padding-top: 10px;
  padding-bottom: 10px;
  font-weight: 400;
  color: #7D4B37;
  margin-bottom: 0;
  font-size: 0.94rem;
}
footer .content-info2 .footer-bottom-container p a {
  text-decoration: none;
}
footer .form-check-label {
  color: #7D4B37;
}
footer .form-content h6 {
  color: #7D4B37;
}
footer .form-control {
  border-radius: 3px !important;
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  height: 40px;
  padding: 0;
}
footer .btn-secondary {
  border-radius: 3px !important;
  background-color: #7D4B37;
  border-color: #7D4B37;
  color: #F5F0EB;
  height: 40px;
}
footer .btn-nl-popup-subscribe {
  color: #F5F0EB !important;
  border: 1px solid #7D4B37 !important;
  width: 100%;
}
@media (min-width: 768px) {
  footer .btn-nl-popup-subscribe {
    width: 100%;
  }
}
footer .border-white {
  border-top: 1px solid #F5F0EB;
}
footer .list-unstyled li + li {
  margin-top: 0.25rem;
}

body.page-homepage .embed-container1 {
  position: relative;
}
body.page-homepage .video-overlay-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 5;
  cursor: pointer;
}
body.page-homepage .home-splide-img {
  background: linear-gradient(90deg, rgba(125, 75, 55, 0.05) 0%, rgba(255, 255, 255, 0.45) 50%, rgba(125, 75, 55, 0.05) 100%);
  background-size: 200% 100%;
  animation: homepage-placeholder-shimmer 1.1s ease-in-out infinite;
}
body.page-homepage .home-splide-img.is-loaded {
  background: none;
  animation: none;
}
@keyframes homepage-placeholder-shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
body.page-homepage .home-pos3-centered {
  position: relative;
  overflow: hidden;
  color: #FFF;
  background: #7D4B37;
}
body.page-homepage .home-pos3-centered__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: clamp(520px, 80vh, 900px);
}
body.page-homepage .home-pos3-centered__copy {
  background: #7D4B37;
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  padding: clamp(28px, 4vw, 64px);
}
body.page-homepage .home-pos3-centered__media {
  position: relative;
  min-height: clamp(360px, 60vh, 900px);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-homepage .home-pos3-centered__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.08);
  pointer-events: none;
}
body.page-homepage .home-pos3-centered__slider-wrap {
  position: relative;
  z-index: 2;
  width: min(360px, 72%);
}
body.page-homepage .home-pos3-centered__splide {
  overflow: visible;
}
body.page-homepage .home-pos3-centered__slide {
  display: flex;
  justify-content: center;
}
body.page-homepage .home-pos3-centered__card {
  width: 100%;
  aspect-ratio: 4/5;
  display: block;
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 0 24px 50px rgba(125, 75, 55, 0.25);
  background: #FFF;
}
body.page-homepage .home-pos3-centered__card picture,
body.page-homepage .home-pos3-centered__card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
body.page-homepage .home-pos3-centered__progress {
  position: relative;
  margin: clamp(12px, 2vw, 22px) auto 0;
  width: 100%;
  height: 2px;
  background: rgba(255, 255, 255, 0.5);
  z-index: 2;
}
body.page-homepage .home-pos3-centered__progress .splide__progress__bar {
  height: 100%;
  background: #FFF;
}
body.page-homepage .home-pos3-centered .text-box {
  position: static;
  margin: 0;
  height: 100%;
  width: 100%;
  max-width: min(32rem, 90vw);
  color: #FFF;
  pointer-events: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
body.page-homepage .home-pos3-centered .text-box h2 {
  margin: 0 0 auto;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 1.75rem;
  line-height: 0.95;
}
@media (min-width: 768px) {
  body.page-homepage .home-pos3-centered .text-box h2 {
    font-size: 2rem;
  }
}
@media (min-width: 992px) {
  body.page-homepage .home-pos3-centered .text-box h2 {
    font-size: 2.63rem;
  }
}
body.page-homepage .home-pos3-centered .text-box p {
  margin: 0 0 24px;
  max-width: 26rem;
  font-size: 1rem;
  line-height: 1.35;
}
@media (min-width: 768px) {
  body.page-homepage .home-pos3-centered .text-box p {
    font-size: 1.25rem;
  }
}
body.page-homepage .home-pos3-centered .text-box a {
  min-width: 160px;
  color: #FFF;
  border-color: rgba(255, 255, 255, 0.8);
}
body.page-homepage .home-pos3-centered .text-box a:hover {
  background: #FFF;
  color: #7D4B37;
}
@media (max-width: 991.98px) {
  body.page-homepage .home-pos3-centered__grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  body.page-homepage .home-pos3-centered__copy {
    padding: 36px 22px;
  }
  body.page-homepage .home-pos3-centered__media {
    min-height: clamp(360px, 70vh, 620px);
  }
  body.page-homepage .home-pos3-centered__slider-wrap {
    width: min(320px, 78vw);
  }
  body.page-homepage .home-pos3-centered .text-box {
    max-width: 100%;
  }
  body.page-homepage .home-pos3-centered .text-box h2 {
    margin-bottom: 20px;
    font-size: 1.75rem;
  }
}
@media (max-width: 991.98px) and (min-width: 768px) {
  body.page-homepage .home-pos3-centered .text-box h2 {
    font-size: 2rem;
  }
}
@media (max-width: 991.98px) and (min-width: 992px) {
  body.page-homepage .home-pos3-centered .text-box h2 {
    font-size: 2.63rem;
  }
}
@media (max-width: 991.98px) {
  body.page-homepage .home-pos3-centered .text-box p {
    font-size: 1rem;
    margin-bottom: 20px;
  }
}
@media (max-width: 991.98px) and (min-width: 576px) {
  body.page-homepage .home-pos3-centered .text-box p {
    font-size: 1.13rem;
  }
}
@media (max-width: 575.98px) {
  body.page-homepage .home-pos3-centered__copy {
    padding: 28px 18px;
  }
  body.page-homepage .home-pos3-centered__slider-wrap {
    width: min(290px, 82vw);
  }
}
body.page-homepage .home-carousel {
  background: #DDCFC7;
  width: 100%;
}
body.page-homepage .home-carousel__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(16px, 3vw, 28px);
}
@media (max-width: 575.98px) {
  body.page-homepage .home-carousel__inner {
    padding-left: 12px;
    padding-right: 0;
  }
}
body.page-homepage .home-carousel__splide .splide__track {
  overflow: hidden;
}
body.page-homepage .home-carousel__title {
  color: #7D4B37;
}
body.page-homepage .home-carousel__item {
  border-radius: 8px;
  overflow: hidden;
  background: #f5f1ed;
}
body.page-homepage .home-carousel__link {
  display: block;
  text-decoration: none;
}
body.page-homepage .home-carousel__image {
  width: 100%;
  aspect-ratio: 3/4;
  overflow: hidden;
  background: #e9e1db;
}
body.page-homepage .home-carousel__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
body.page-homepage .home-carousel__splide .splide__arrow {
  width: 40px;
  height: 40px;
  background: transparent;
  border: 0;
  padding: 0;
  color: #FFF;
  opacity: 1;
  z-index: 3;
}
body.page-homepage .home-carousel__splide .splide__arrow .lucide,
body.page-homepage .home-carousel__splide .splide__arrow [data-lucide] {
  width: 40px;
  height: 40px;
  fill: none;
  stroke-width: 1px;
}
body.page-homepage .bannerContainer.container.carosello {
  max-width: 100%;
  margin: 30px 0;
}
@media (min-width: 768px) {
  body.page-homepage .bannerContainer.container.carosello {
    margin: 60px 0;
  }
}
body.page-homepage .bannerContainer.container.carosello .products-highlight.caroselloGen {
  max-width: 1400px;
  margin: 0 auto;
  padding-left: clamp(16px, 3vw, 28px) !important;
  padding-right: clamp(16px, 3vw, 28px) !important;
}
@media (max-width: 575.98px) {
  body.page-homepage .bannerContainer.container.carosello .products-highlight.caroselloGen {
    padding-left: 12px !important;
    padding-right: 0 !important;
  }
}
body.page-homepage .bannerContainer.container.carosello .product-carousel {
  padding-top: clamp(16px, 3vw, 28px);
}
body.page-homepage main[role=main] h2 {
  text-transform: uppercase;
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  body.page-homepage main[role=main] h2 {
    font-size: 2rem;
  }
}
@media (min-width: 992px) {
  body.page-homepage main[role=main] h2 {
    font-size: 2.63rem;
  }
}

body.products-list {
  /* Sezioni sticky */
}
body.products-list .products-header {
  min-height: 0;
}
body.products-list .category-title {
  font-size: 1.38rem;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  body.products-list .category-title {
    font-size: 3rem;
  }
}
body.products-list .category-title-h2 {
  font-size: 0.88rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.2;
}
@media (min-width: 768px) {
  body.products-list .category-title-h2 {
    font-size: 1rem;
  }
}
body.products-list hr {
  opacity: 1;
  color: #DDCFC7;
  margin: 10px 0;
}
@media (min-width: 768px) {
  body.products-list hr {
    margin: 20px 0;
  }
}
body.products-list .filter-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.35);
  z-index: 1050;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}
body.products-list .filter-overlay.show {
  opacity: 1;
  pointer-events: all;
}
body.products-list .filter-overlay.show .filter-overlay__panel {
  transform: translateX(0);
}
body.products-list .filter-overlay__panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 90vw;
  max-width: 23.5rem;
  background-color: #FFF;
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1.25rem;
  overflow: hidden;
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}
body.products-list .filter-overlay__close {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #7D4B37;
  background-color: #FFF;
  color: #7D4B37;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
}
body.products-list .filter-overlay__content {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 4px;
}
body.products-list .filter-overlay__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1rem;
  border-bottom: 1px solid #dcdcdc;
  margin-bottom: 1rem;
  flex-shrink: 0;
}
body.products-list .filter-overlay__footer {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: 1px solid #dcdcdc;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex-shrink: 0;
}
body.products-list .filter-overlay__footer .filter-group-reset {
  text-transform: uppercase;
  font-weight: 600;
}
body.products-list .filter-overlay .filtri {
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  gap: 0 !important;
}
body.products-list .filter-overlay .filtri .row {
  margin-left: 0;
  margin-right: 0;
}
body.products-list .filter-overlay .desktop-filters .filter-group {
  padding: 16px 0;
  border-bottom: 1px solid #dcdcdc;
}
body.products-list .filter-overlay .desktop-filters .filter-group:last-child {
  border-bottom: none;
}
body.products-list.filters-open {
  overflow: hidden;
}
body.products-list main[role=main] {
  padding-top: 110px;
}
@media (min-width: 992px) {
  body.products-list main[role=main] {
    padding-top: 110px;
  }
}
body.products-list #page-header {
  padding-bottom: 10px;
}
body.products-list .sibling-categories ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
body.products-list .sibling-categories ul.sibling-categories-slider {
  display: flex;
}
@media (max-width: 767.98px) {
  body.products-list .sibling-categories ul.sibling-categories-slider {
    display: block;
  }
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized {
    display: block;
    overflow: visible;
  }
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized .slick-track {
    display: flex;
  }
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized .slick-slide {
    margin-right: 10px;
    opacity: 1;
    height: auto;
  }
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized .slick-slide > div {
    height: 100%;
  }
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized .slick-slide a {
    white-space: nowrap;
    display: inline-block;
    padding: 5px 10px;
    background-color: #f2f2f2;
  }
}
@media (max-width: 767.98px) and (min-width: 992px) {
  body.products-list .sibling-categories ul.sibling-categories-slider.slick-initialized .slick-slide a {
    background-color: none;
  }
}
body.products-list .sibling-categories ul li {
  display: inline-block;
  font-size: 0.94rem;
}
body.products-list .sibling-categories ul li:not(:first-child) {
  margin-left: 20px;
}
body.products-list .sibling-categories ul li a {
  text-decoration: none;
}
body.products-list .sibling-categories ul li a.active {
  font-weight: 600;
}
body.products-list section.filters {
  /* position: sticky; */
  top: 54px;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  z-index: 3;
  display: block;
  padding-top: 15px;
  padding-bottom: 0;
}
@media (min-width: 768px) {
  body.products-list section.filters {
    top: 60px;
  }
}
@media (min-width: 992px) {
  body.products-list section.filters {
    display: flex;
  }
}
@media (min-width: 768px) {
  body.products-list section.filters {
    padding-top: 15px;
  }
}
@media (min-width: 768px) {
  body.products-list section.filters {
    padding-bottom: 15px;
  }
}
body.products-list section.filters .filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 0;
  gap: 10px;
  min-width: 100%;
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar {
    justify-content: flex-end;
  }
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar {
    padding-bottom: 15px;
  }
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar {
    min-width: 100%;
  }
}
body.products-list section.filters .filter-bar .dropdown {
  min-width: 150px;
  position: relative; /* fondamentale per le % del menu */
  display: inline-block;
}
body.products-list section.filters .filter-bar .btndropdown-toggle {
  padding: 10px 10px;
  text-decoration: none;
  color: #7D4B37;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  width: 100%;
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar .btndropdown-toggle {
    padding: 10px 20px;
  }
}
@media (min-width: 992px) {
  body.products-list section.filters .filter-bar .btndropdown-toggle {
    width: 100%;
  }
}
body.products-list section.filters .filter-bar .btndropdown-toggle .filter-variety {
  background-color: #7D4B37;
  color: #FFF;
  font-weight: 300;
  padding: 10px 15px;
}
body.products-list section.filters .filter-bar .btndropdown-toggle .filter-order {
  padding-left: 0;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar .btndropdown-toggle .filter-order {
    padding-left: 65px;
  }
}
@media (min-width: 992px) {
  body.products-list section.filters .filter-bar .btndropdown-toggle .filter-order {
    padding-left: 0;
  }
}
body.products-list section.filters .filter-bar .btndropdown-toggle .filter-count-data,
body.products-list section.filters .filter-bar .btndropdown-toggle .filter-order-data {
  color: #707070;
  font-weight: 400;
  text-transform: capitalize;
}
body.products-list section.filters .filter-bar .btndropdown-toggle svg {
  padding: 0;
  transition: transform 0.25s ease;
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar .btndropdown-toggle svg {
    padding: 0;
  }
}
body.products-list section.filters .filter-bar .btndropdown-toggle svg.show {
  transform: rotate(180deg);
}
body.products-list section.filters .filter-bar .btndropdown-toggle[aria-expanded=true] svg {
  transform: rotate(180deg);
}
body.products-list section.filters .filter-bar .dropdown-menu {
  border-radius: 3px;
  font-size: 0.81rem;
  right: 0 !important;
  width: 100%;
  min-width: 0;
  border: solid 1px #7D4B37;
}
body.products-list section.filters .filter-bar .dropdown-menu span {
  color: #7D4B37;
}
body.products-list section.filters .filter-bar .dropdown-menu a {
  text-decoration: none;
}
body.products-list section.filters .filter-bar .dropdown-menu a.active {
  font-weight: 600;
  color: #7D4B37;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner {
  padding-left: 16px;
  padding-right: 16px;
  margin-top: 8px;
  margin-bottom: 8px;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner ul {
  list-style: none;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner h5 {
  font-size: 0.94rem;
  text-transform: uppercase;
  padding-left: 0;
  color: #7D4B37;
  font-weight: 500;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner label.container {
  padding-top: 5px;
  padding-bottom: 5px;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner label.container .form-check-input[type=checkbox] {
  border-radius: 3px;
}
body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner li label {
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  body.products-list section.filters .filter-bar .dropdown-menu .dropdown-menu-inner li label {
    font-size: 0.88rem;
  }
}
body.products-list #filtersProductsWrapper,
body.products-list .filters-products-container {
  overflow: visible !important;
  position: sticky;
  z-index: 3;
  background-color: #FFF;
  top: 110px;
}
@media (min-width: 768px) {
  body.products-list #filtersProductsWrapper,
  body.products-list .filters-products-container {
    top: 110px;
  }
}
body.products-list section.filters {
  align-self: flex-start;
  background-color: #F5F0EB;
}
body.products-list section.filtersDesktop {
  background: #FFF;
  background: linear-gradient(180deg, rgba(240, 240, 240, 0) 26%, rgb(240, 240, 240) 100%);
}
body.products-list .btn-filters {
  position: relative;
  background-color: transparent;
  transition: background-color 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  text-transform: uppercase;
  border-radius: 3px;
  border: solid 1px #DDCFC7;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  font-size: 0.81rem;
  min-width: 150px;
  color: #7D4B37;
}
@media (min-width: 768px) {
  body.products-list .btn-filters {
    font-size: 0.81rem;
  }
}
@media (min-width: 768px) {
  body.products-list .btn-filters {
    min-width: 150px;
  }
}
body.products-list .btn-filters span {
  font-size: 0.81rem;
  display: flex;
  align-items: center;
  padding: 0 10px;
}
@media (min-width: 768px) {
  body.products-list .btn-filters span {
    font-size: 0.81rem;
  }
}
body.products-list .btn-filters:focus, body.products-list .btn-filters:active, body.products-list .btn-filters:focus:active {
  color: #7D4B37 !important;
}
@media (hover: hover) {
  body.products-list .btn-filters:hover {
    background-color: transparent;
    border-color: #7D4B37;
    color: #7D4B37;
  }
}
body.products-list .category-image {
  padding-top: 30px;
}
body.products-list .category-image img {
  border-radius: 3px;
}
body.products-list section.products {
  position: relative;
  padding-top: 0px;
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  body.products-list section.products {
    padding-bottom: 30px;
  }
}
body.products-list section.products .shopping-items-list {
  display: grid;
  gap: 15px;
  grid-template-columns: repeat(2, 1fr);
  padding-left: 0px;
}
@media (min-width: 768px) {
  body.products-list section.products .shopping-items-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1400px) {
  body.products-list section.products .shopping-items-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767.98px) {
  body.products-list section.products .shopping-items-list .col-6 {
    width: auto !important;
  }
}
@media (min-width: 992px) {
  body.products-list section.products .shopping-items-list {
    padding-left: 0;
  }
}
body.products-list section.products .shopping-items-list #products-wrapper {
  display: contents;
}
body.products-list section.products .shopping-items-list #products-wrapper .list-no-prod {
  position: absolute;
  top: 45%;
  left: 45%;
}
body.products-list section.products .shopping-items-list .product-item {
  margin-bottom: 0;
  padding-left: 0px;
  padding-right: 0px;
  width: 100%;
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  body.products-list section.products .shopping-items-list .product-item {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  body.products-list section.products .shopping-items-list .product-item {
    padding-left: 5px;
    padding-right: 5px;
  }
}
body.products-list section.products .shopping-items-list .banner-horizontal {
  grid-column: span 2;
  border-radius: 3px;
}
body.products-list section.products .shopping-items-list .banner-horizontal img {
  object-fit: cover;
  height: 100%;
  border-radius: 3px;
}
body.products-list section.products .shopping-items-list .banner-fill-center {
  position: relative;
  overflow: hidden;
  min-height: 0;
  align-self: stretch;
}
body.products-list section.products .shopping-items-list .banner-fill-center picture,
body.products-list section.products .shopping-items-list .banner-fill-center > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
body.products-list section.products .shopping-items-list .banner-fill-center picture img,
body.products-list section.products .shopping-items-list .banner-fill-center > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  border-radius: 3px;
  display: block;
}
body.products-list section.products .shopping-items-list .banner-horizontal-initial {
  height: 100%;
  aspect-ratio: 4/3;
}
@media (min-width: 768px) {
  body.products-list section.products .shopping-items-list .banner-horizontal-initial {
    aspect-ratio: auto;
  }
}
body.products-list section.products .shopping-items-list .banner-vertical {
  grid-row: span 2;
  border-radius: 3px;
  overflow: hidden;
  display: flex;
  align-items: stretch;
}
body.products-list section.products .shopping-items-list .banner-vertical img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  border-radius: 3px;
}
body.products-list section.products nav {
  width: 100%;
}
body.products-list section.products nav ul.pagination {
  justify-content: center;
}
body.products-list section.products .pagination-nav {
  margin-top: 40px;
}
@media (min-width: 768px) {
  body.products-list section.products .pagination-nav {
    margin-top: 50px;
  }
}
body.products-list section.products .pagination-nav .pagination .page-item {
  margin-left: 2px;
  margin-right: 2px;
}
body.products-list section.products .pagination-nav .pagination .page-item.active .page-link {
  box-shadow: 0 0 0 1px #7D4B37;
  font-weight: 300;
}
body.products-list.search-results section.products-header .content {
  background: none;
  background-color: #7D4B37;
}
body.products-list .filters-mobile {
  width: 100vh;
}
body.products-list .desktop-filters h5 {
  font-weight: 600;
  font-size: 1rem;
}
body.products-list .desktop-filters .filtri {
  padding-bottom: 0;
}
@media (min-width: 768px) {
  body.products-list .desktop-filters .filtri {
    padding-bottom: 20px;
  }
}
body.products-list .desktop-filters .filter-group {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px solid #dcdcdc;
}
@media (min-width: 768px) {
  body.products-list .desktop-filters .filter-group {
    padding: 15px 0;
  }
}
@media (min-width: 768px) {
  body.products-list .desktop-filters .filter-group {
    border-bottom: none;
  }
}
body.products-list .desktop-filters .filter-group:last-child {
  border-bottom: none;
}
body.products-list .desktop-filters .filter-group-reset {
  text-align: center;
  padding: 0;
  text-transform: uppercase;
  font-weight: 600;
}
body.products-list .desktop-filters .filter-header {
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
body.products-list .desktop-filters .filter-accordion-toggle {
  border: none;
  background: transparent;
  padding: 0;
  color: #7D4B37;
  line-height: 1;
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
body.products-list .desktop-filters .filter-accordion-toggle .filter-accordion-icon {
  display: none;
}
body.products-list .desktop-filters .filter-accordion-toggle .icon-minus {
  display: inline-flex;
}
body.products-list .desktop-filters .filter-body {
  display: block;
}
body.products-list .desktop-filters .filter-group.is-collapsed .filter-body {
  display: none;
}
body.products-list .desktop-filters .filter-group.is-collapsed .filter-accordion-toggle .icon-minus {
  display: none;
}
body.products-list .desktop-filters .filter-group.is-collapsed .filter-accordion-toggle .icon-plus {
  display: inline-flex;
}
@media (max-width: 767.98px) {
  body.products-list .desktop-filters .filter-header {
    cursor: pointer;
  }
  body.products-list .desktop-filters .filter-accordion-toggle {
    display: inline-flex;
  }
}
body.products-list .desktop-filters .reset-filter {
  font-size: 12px;
  /* font-size: 20px; */
  text-decoration: none;
  color: #7D4B37;
}
body.products-list .desktop-filters .reset-filter-all {
  font-size: 12px;
  /* font-size: 20px; */
  text-decoration: none;
  font-weight: 600;
}
body.products-list .desktop-filters .size-option {
  border: 1px solid #DDCFC7;
  text-align: center;
  padding: 10px 0;
  cursor: pointer;
  font-size: 0.69rem;
  font-weight: 600;
  border-radius: 3px;
  background-color: #FFF;
}
body.products-list .desktop-filters .size-option.active {
  border: 1px solid #7D4B37;
  outline: solid 2px #7D4B37;
  color: #7D4B37;
  background-color: #FFF;
}
body.products-list .desktop-filters .price-option {
  border: 1px solid #DDCFC7;
  text-align: center;
  padding: 10px 0;
  cursor: pointer;
  font-size: 0.69rem;
  font-weight: 600;
  border-radius: 3px;
  background-color: #FFF;
}
body.products-list .desktop-filters .price-option.active {
  border: 1px solid #7D4B37;
  outline: solid 2px #7D4B37;
  color: #7D4B37;
  background-color: #FFF;
}
body.products-list .desktop-filters .color-option {
  border: 1px solid #DDCFC7;
  text-align: center;
  padding: 10px 0;
  cursor: pointer;
  font-size: 0.69rem;
  font-weight: 600;
  border-radius: 3px;
  background-color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
body.products-list .desktop-filters .color-option .color-swatch {
  width: 18px;
  height: 18px;
}
body.products-list .desktop-filters .color-option.active {
  border: 1px solid #7D4B37;
  outline: solid 2px #7D4B37;
  color: #7D4B37;
  background-color: #FFF;
}
body.products-list .desktop-filters .category-option {
  border: 1px solid #DDCFC7;
  text-align: center;
  padding: 10px 6px;
  cursor: pointer;
  font-size: 0.69rem;
  font-weight: 600;
  border-radius: 3px;
  background-color: #FFF;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 90px;
  line-height: 1;
}
body.products-list .desktop-filters .category-option .category-icon {
  width: 36px;
  height: 36px;
  object-fit: contain;
}
body.products-list .desktop-filters .category-option .category-label {
  text-transform: capitalize;
}
body.products-list .desktop-filters .category-option.active {
  border: 1px solid #7D4B37;
  outline: solid 2px #7D4B37;
  color: #7D4B37;
  background-color: #FFF;
}

body.page-product {
  /* .pswp__button::after, .pswp__button::before{
      align-items: center;
      border: 0;
      border-radius: 50%;

  } */
  /* opzionale: non nascondere l’UI dopo inattività */
}
body.page-product .pswp__bg {
  background: #FFF;
}
body.page-product .pswp__top-bar {
  background-color: #7D4B37 !important;
}
body.page-product .pswp__button pswp__button--arrow--left, body.page-product .pswp__button pswp__button--arrow--right {
  /* background-color: #7D4B37 !important; */
  color: #7D4B37;
}
body.page-product .pswp__img--placeholder--blank {
  background-color: #FFF !important;
}
body.page-product main {
  padding-top: 110px;
}
@media (min-width: 768px) {
  body.page-product main {
    padding-top: 110px;
  }
}
body.page-product main figure {
  margin: 0 0 0rem;
}
body.page-product main li:has(video) {
  margin: 0 0 0rem;
  background: none !important;
}
body.page-product .header-container {
  padding-top: 0px;
}
@media (min-width: 768px) {
  body.page-product .header-container {
    padding-top: 0px;
  }
}
.is-mobile-menu-open body.page-product .header-container {
  margin-top: 0px;
}
body.page-product .header-container.scrolled {
  padding: 0;
  top: 30px;
  left: 0;
  right: 0;
  position: fixed;
  margin-top: 0px;
  background-color: #F5F0EB;
}
@media (min-width: 768px) {
  body.page-product .header-container.scrolled {
    padding: 0px;
  }
}
body.page-product .size-guide-modal {
  width: 80% !important;
}
@media (max-width: 767.98px) {
  body.page-product .size-guide-modal {
    width: 100% !important;
  }
}
body.page-product .size-guide-modal .swal2-content {
  padding: 0;
}
@media (min-width: 768px) {
  body.page-product .size-guide-modal .swal2-content {
    padding: 30px;
  }
}
body.page-product .swal2-container .swal2-modal {
  width: 30em;
  border-radius: 1rem;
}
body.page-product .swal2-container .swal2-modal .swal2-error {
  display: none !important;
}
body.page-product .swal2-container .swal2-modal .swal2-title {
  display: flex !important;
  align-items: flex-end;
  justify-content: center;
  color: #7D4B37;
  padding: 45px 30px 20px;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.13rem;
}
@media (min-width: 576px) {
  body.page-product .swal2-container .swal2-modal .swal2-title {
    font-size: 1.5rem;
  }
}
body.page-product .swal2-container .swal2-modal .swal2-html-container {
  padding: 0px 10px 0px 10px;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.page-product .swal2-container .swal2-modal .swal2-html-container {
    padding: 20px 30px 20px 30px;
  }
}
@media (min-width: 576px) {
  body.page-product .swal2-container .swal2-modal .swal2-html-container {
    font-size: 1rem;
  }
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row {
  border-bottom: solid 1px #dcdcdc;
  padding: 15px 15px 15px 5px;
  flex-wrap: nowrap;
  display: flex;
  gap: 15px;
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row:first-child {
  border-top: solid 1px #dcdcdc;
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .product-image-main {
  width: 200px;
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .product-image-main .product-img {
  position: relative;
  padding-bottom: 100%;
  margin-top: 10px;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 576px) {
  body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .product-image-main .product-img {
    margin-top: 0;
  }
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .details {
  width: auto;
  text-align: right;
  display: flex;
  flex-direction: column;
  align-items: end;
  justify-content: center;
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .details .product-name {
  color: #7D4B37;
  display: inline-block;
  margin-bottom: 10px;
  font-size: 1rem;
  line-height: 1;
  text-transform: capitalize;
  font-weight: 400;
}
body.page-product .swal2-container .swal2-modal .swal2-html-container .product-row .details p {
  font-size: 0.88rem;
  color: #7D4B37;
  display: inline-block;
  text-transform: capitalize;
  font-weight: 400;
  line-height: 1.3em;
  margin-bottom: 0px;
  width: 100%;
}
body.page-product table.sizeTable > * {
  font-size: 0.75rem;
  color: #7D4B37;
}
body.page-product.is-mobile-menu-open section.product-header {
  border-bottom: none;
}
body.page-product section.product-header {
  position: relative;
  align-items: center;
  display: block;
  /*@include media-breakpoint-down(lg){
    justify-content: center;
  }
  @include media-breakpoint-up(lg){
    justify-content: space-between;
  }
  @include media-breakpoint-up(xxl){
    justify-content: flex-start;

    .filters {
      @include absolute(top 50% left 50%);
      transform: translate(-50%, -50%);
    }
  }*/
}
@media (min-width: 768px) {
  body.page-product section.product-header {
    display: block;
  }
}
body.page-product section.product-header .nav-label-container {
  flex-flow: row-reverse;
}
body.page-product section.product-header .breadcrumb-nav {
  display: none;
  justify-content: start;
  width: 100%;
  overflow-x: auto;
  white-space: nowrap;
  /* Nasconde la scrollbar */
  -ms-overflow-style: none;
  /* IE e Edge */
  scrollbar-width: none;
  /* Firefox */
}
@media (min-width: 768px) {
  body.page-product section.product-header .breadcrumb-nav {
    display: flex;
  }
}
body.page-product section.product-header .breadcrumb-nav::-webkit-scrollbar {
  display: none;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  scroll-behavior: smooth;
  margin-top: 0;
}
@media (min-width: 768px) {
  body.page-product section.product-header .breadcrumb-nav .breadcrumb {
    margin-top: 10px;
  }
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb::-webkit-scrollbar {
  display: none;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb .breadcrumb-item {
  flex-shrink: 0;
  color: #7D4B37 !important;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  display: inline-block;
  font-size: 0.81rem;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb .breadcrumb-item::before {
  content: ">";
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb .breadcrumb-item:first-child::before {
  display: none;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb .breadcrumb-item:last-child > span {
  color: #7D4B37 !important;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb a {
  text-decoration: none;
  transition: color 250ms ease-in-out;
  color: #7D4B37;
  text-transform: capitalize;
}
body.page-product section.product-header .breadcrumb-nav .breadcrumb a:hover {
  color: #7D4B37;
}
body.page-product section.product-header .filters form {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  body.page-product section.product-header .filters form {
    justify-content: flex-end;
  }
}
@media (min-width: 992px) and (max-width: 1599.98px) {
  body.page-product section.product-header .filters form {
    margin-right: -10px;
  }
}
@media (min-width: 1600px) {
  body.page-product section.product-header .filters form {
    justify-content: center;
  }
}
body.page-product section.product-header .filters form .form-check-inline {
  margin-left: 10px;
  margin-right: 10px;
}
body.page-product section.product {
  position: relative;
}
body.page-product section.product .mainBox {
  align-items: stretch;
}
@media (max-width: 767.98px) {
  body.page-product section.product {
    /*       padding-left: 0;
    padding-right: 0; */
  }
}
body.page-product section.product article {
  display: flex;
}
body.page-product section.product .product-images {
  position: relative;
  isolation: isolate;
  padding: 0;
}
body.page-product section.product .product-images img {
  mix-blend-mode: multiply;
  padding: 5%;
  object-fit: contain;
  border-radius: 3px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-images img {
    padding: 0;
  }
}
body.page-product section.product .product-images .image-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  flex: 1 1 auto;
  overflow: hidden;
  background-color: #FFF;
  border-radius: 3px;
}
body.page-product section.product .product-images .image-container .ps-anchor.main {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  display: block;
  object-fit: contain;
}
body.page-product section.product .product-images .main-slider {
  height: auto;
  position: relative;
}
body.page-product section.product .product-images .main-slider .maximize-img {
  position: absolute;
  bottom: 40px;
  right: 40px;
  pointer-events: none;
}
body.page-product section.product .product-images .main-slider .custom-pagination {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 20px;
}
body.page-product section.product .product-images .main-slider .custom-page-btn {
  padding: 10px 15px;
  border: 1px solid #ccc;
  background-color: #f5f5f5;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
body.page-product section.product .product-images .main-slider .custom-page-btn:hover {
  background-color: #E0DAC8;
}
body.page-product section.product .product-images .main-slider .custom-page-btn.active {
  background-color: #007bff;
  color: white;
}
body.page-product section.product .product-images .splide__track {
  isolation: isolate;
}
@media (min-width: 768px) {
  body.page-product section.product .product-images .splide__track > ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* Creates 2 columns of equal width */
    gap: 5px;
    /* Adds space between grid items */
  }
  body.page-product section.product .product-images .splide__track > ul .main-slide {
    grid-column: 1/-1;
  }
}
body.page-product section.product .product-images .splide__track figure,
body.page-product section.product .product-images .splide__track .splide__slide {
  mix-blend-mode: multiply;
}
body.page-product section.product .product-images .splide__track figure {
  height: 100%;
}
body.page-product section.product .product-images .splide__track figure a {
  height: 100%;
  display: flex;
}
body.page-product section.product .product-images .splide__track .splide__list {
  mix-blend-mode: multiply;
}
body.page-product section.product .product-images .splide__pagination__page {
  font-size: 0;
  opacity: 0.1;
  background: #7D4B37;
  width: 6px;
  height: 6px;
}
body.page-product section.product .product-images .splide__pagination__page.is-active {
  opacity: 1;
  background: #7D4B37;
  transform: scale(1.1);
}
body.page-product section.product .product-images .splide__pagination {
  bottom: 1em;
}
@media (min-width: 576px) {
  body.page-product section.product .product-images .splide__pagination {
    bottom: 1em;
  }
}
body.page-product section.product .product-images .main-slider {
  --main-slider-progress: 0%;
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-images .main-slider .splide__pagination {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: min(100%, 100% - 48px);
    height: 2px;
    border-radius: 100px;
    background: rgba(125, 75, 55, 0.2);
    overflow: hidden;
    pointer-events: none;
    padding: 0;
    margin: 0;
  }
  body.page-product section.product .product-images .main-slider .splide__pagination::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: var(--main-slider-progress, 0%);
    background: #7D4B37;
    transition: width 0.25s ease;
  }
  body.page-product section.product .product-images .main-slider .splide__pagination.is-single-slide {
    display: none;
  }
  body.page-product section.product .product-images .main-slider .splide__pagination li {
    display: none;
  }
  body.page-product section.product .product-images .main-slider .splide__pagination__page {
    display: none;
  }
}
body.page-product section.product .product-images .product-arrow-next,
body.page-product section.product .product-images .product-arrow-prev {
  background: transparent;
  width: 25px;
}
body.page-product section.product .product-images .product-arrow-next img,
body.page-product section.product .product-images .product-arrow-prev img {
  width: 100%;
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-images {
    position: relative;
  }
}
body.page-product section.product .product-images .background-cover {
  opacity: 0;
  /* Inizialmente invisibile */
  transition: opacity 0.5s ease;
  /* Transizione fluida sull'opacità */
}
body.page-product section.product .product-images .loaded {
  opacity: 1;
  display: block;
  /* Immagine visibile quando è completamente caricata */
}
body.page-product section.product .product-images .product-color-images {
  visibility: hidden;
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-images .product-color-images:not(.slick-initialized) .product-image:not(:first-child) {
    display: none !important;
  }
}
body.page-product section.product .product-images .product-color-images:not(.selected-color) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
body.page-product section.product .product-images .product-color-images.selected-color {
  visibility: visible;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-images .product-color-images.selected-color {
    margin-bottom: 30px;
    display: block;
  }
}
body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
  height: 100%;
  width: 100%;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    width: calc(50% - 2.5px);
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    width: calc(50% - 5px);
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    margin-bottom: 5px;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    margin-bottom: 10px;
  }
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    display: block !important;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-images .product-color-images.selected-color figure.product-image {
    border: 1px solid transparent;
  }
}
body.page-product section.product .product-images .product-color-images.selected-color figure.product-image a {
  position: relative;
  display: block;
}
body.page-product section.product .slider-product-nav {
  display: none;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
body.page-product section.product .slider-product-nav.selected-color {
  display: none;
}
@media (min-width: 768px) {
  body.page-product section.product .slider-product-nav.selected-color {
    display: flex;
  }
}
body.page-product section.product .slider-product-nav .img-slider-nav {
  border: 1px solid #dcdcdc;
  margin-right: 0;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  body.page-product section.product .slider-product-nav .img-slider-nav {
    margin-right: 10px;
    margin-bottom: 10px;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .slider-product-nav .img-slider-nav {
    margin-right: 20px;
    margin-bottom: 20px;
  }
}
body.page-product section.product .slider-product-nav .img-slider-nav.current {
  border-color: #7D4B37;
}
body.page-product section.product .slider-product-nav .img-slider-nav img {
  max-width: 0;
}
@media (min-width: 768px) {
  body.page-product section.product .slider-product-nav .img-slider-nav img {
    max-width: 70px;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .slider-product-nav .img-slider-nav img {
    max-width: 108px;
  }
}
body.page-product section.product .product-info {
  position: relative;
  top: unset;
  background-color: transparent;
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  body.page-product section.product .product-info {
    position: static;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-info {
    top: 80px;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info {
    display: flex;
  }
}
body.page-product section.product .product-info .inner-content {
  height: 100%;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 30px;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 1400px) {
  body.page-product section.product .product-info .inner-content {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content {
    padding-top: 0;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content {
    margin-left: 0;
    margin-right: 0;
  }
}
body.page-product section.product .product-info .inner-content.white {
  background-color: transparent;
  height: auto;
}
body.page-product section.product .product-info .inner-content h1.name {
  font-size: 1.13rem;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 5px;
  text-transform: uppercase;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content h1.name {
    font-size: 1.5rem;
  }
}
body.page-product section.product .product-info .inner-content .product-label span {
  border-radius: 3px;
  font-weight: 400;
  text-transform: uppercase;
  padding: 3px 8px;
  font-size: 0.75rem;
}
@media (min-width: 576px) {
  body.page-product section.product .product-info .inner-content .product-label span {
    padding: 3px 8px;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-label span {
    font-size: 0.75rem;
  }
}
body.page-product section.product .product-info .inner-content .category {
  font-size: 0.94rem;
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .category {
    font-size: 1.25rem;
  }
}
body.page-product section.product .product-info .inner-content .details-right {
  color: #ACAEAF;
  font-size: 0.75rem;
}
body.page-product section.product .product-info .inner-content .price {
  order: 5;
  font-size: 1rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .price {
    order: initial;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .price {
    font-size: 1.13rem;
  }
}
body.page-product section.product .product-info .inner-content .price span {
  white-space: nowrap;
}
body.page-product section.product .product-info .inner-content .price span.priceOrigin {
  color: #7D4B37;
  font-weight: 600;
}
body.page-product section.product .product-info .inner-content .price.discount-price span {
  white-space: nowrap;
}
body.page-product section.product .product-info .inner-content .price.discount-price span.priceOrigin {
  color: #939393;
  text-decoration: line-through;
  margin-right: 10px;
  font-weight: 400;
}
body.page-product section.product .product-info .inner-content .price.discount-price span.priceFull {
  color: #7D4B37;
  font-weight: 600;
}
body.page-product section.product .product-info .inner-content .price .discount-badge {
  color: white;
  background-color: #7D4B37;
  padding: 5px 10px;
  font-size: 0.81rem;
  border-radius: 3px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .price .discount-badge {
    font-size: 0.88rem;
  }
}
body.page-product section.product .product-info .inner-content .price .new-badge {
  display: inline-flex;
  align-items: center;
  color: #FFF;
  background-color: #0C3317;
  padding: 5px 10px;
  font-size: 0.81rem;
  border-radius: 3px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .price .new-badge {
    font-size: 0.88rem;
  }
}
body.page-product section.product .product-info .inner-content .priceLowest {
  color: #dcdcdc;
  font-size: 0.81rem;
}
body.page-product section.product .product-info .inner-content .description {
  order: 5;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .description {
    order: initial;
  }
}
body.page-product section.product .product-info .inner-content .description * {
  font-size: 0.94rem;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .description * {
    font-size: 0.94rem;
  }
}
body.page-product section.product .product-info .inner-content .description ul {
  padding-left: 20px;
}
body.page-product section.product .product-info .inner-content .product-characteristics {
  display: flex;
  flex-direction: row;
  order: 5;
  padding-top: 20px;
  padding-bottom: 20px;
  flex-wrap: wrap;
  border-bottom: 1px dashed #7D4B37;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics {
    display: flex;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics {
    order: initial;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics {
    padding-top: 25px;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics {
    padding-bottom: 25px;
  }
}
body.page-product section.product .product-info .inner-content .product-characteristics .char {
  display: flex;
  align-items: center;
  flex-direction: row;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics .char {
    flex-direction: row;
  }
}
body.page-product section.product .product-info .inner-content .product-characteristics .char:not(:last-child) {
  margin-right: 20px;
}
body.page-product section.product .product-info .inner-content .product-characteristics .char img {
  display: block;
  width: 32px;
  height: 32px;
  max-width: fit-content;
}
body.page-product section.product .product-info .inner-content .product-characteristics .char span {
  padding-left: 8px;
  font-weight: 300;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .product-characteristics .char span {
    font-size: 1.06rem;
  }
}
body.page-product section.product .product-info .inner-content > .klarna-payoff {
  display: none;
  padding-top: 20px;
  text-align: left;
}
body.page-product section.product .product-info .inner-content > .klarna-payoff .klarna-logo {
  font-family: "Klarna Headline";
  font-weight: 300;
  letter-spacing: -0.5px;
}
body.page-product section.product .product-info .inner-content > .klarna-payoff .klarna-modal {
  text-decoration: underline;
}
body.page-product section.product .product-info .inner-content > .scalapay-payoff {
  display: none;
  padding-bottom: 10px;
  text-align: left;
}
body.page-product section.product .product-info .inner-content > .scalapay-payoff .scalapay-modal {
  text-decoration: underline;
}
body.page-product section.product .product-info .inner-content .colors {
  order: 1;
  padding-top: 10px;
  padding-bottom: 20px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors {
    order: initial;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors {
    padding-bottom: 0;
  }
}
body.page-product section.product .product-info .inner-content .colors .label {
  font-weight: normal;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size: 0.94rem;
  display: inline-block;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .label {
    margin-bottom: 5px;
  }
}
body.page-product section.product .product-info .inner-content .colors #currentColorLabel {
  font-weight: 600;
  font-size: 0.94rem;
}
body.page-product section.product .product-info .inner-content .colors .selector-group-price {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 20px;
  margin-bottom: 5px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .selector-group-price {
    margin-top: 20px;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .selector-group-price {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .selector-group-price {
    font-size: 1rem;
  }
}
body.page-product section.product .product-info .inner-content .colors .selector-group-price__full {
  font-weight: 400;
  text-decoration: line-through;
  color: #939393;
}
body.page-product section.product .product-info .inner-content .colors .selector-group-price__discounted, body.page-product section.product .product-info .inner-content .colors .selector-group-price__percent {
  color: #7D4B37;
  font-weight: 600;
}
body.page-product section.product .product-info .inner-content .colors .selector {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  margin-top: 10px;
  margin-bottom: 20px;
  gap: 10px;
  text-decoration: none;
  margin-top: 0;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content .colors .selector {
    grid-template-columns: repeat(7, 1fr) !important;
  }
}
@media (min-width: 1400px) {
  body.page-product section.product .product-info .inner-content .colors .selector {
    grid-template-columns: repeat(9, 1fr) !important;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .selector {
    margin-top: 5px;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .colors .selector {
    margin-bottom: 0;
  }
}
body.page-product section.product .product-info .inner-content .colors .selector .color {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .color-list-box {
  width: 100%;
  text-align: center;
  position: relative;
}
body.page-product section.product .product-info .inner-content .colors .selector .color.selected-color .thumb {
  background-color: #FAFAFA;
  border: 1px solid #7D4B37;
  outline: 1px solid #7D4B37;
}
body.page-product section.product .product-info .inner-content .colors .selector .color.selected-color .thumb img {
  mix-blend-mode: multiply;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .color-text {
  font-size: 0.75rem;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: #707070;
  text-transform: uppercase;
  margin-top: 5px;
}
@media (min-width: 576px) {
  body.page-product section.product .product-info .inner-content .colors .selector .color .color-text {
    font-size: 0.81rem;
  }
}
body.page-product section.product .product-info .inner-content .colors .selector .color .thumb {
  position: relative;
  padding-bottom: calc(91% - 2px);
  width: 100%;
  transition: border 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid #DDCFC7;
  border-radius: 3px;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .thumb img {
  width: 100%;
  border-radius: 3px;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .thumb:focus {
  border: 1px solid #7D4B37;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .thumb:active {
  border: 1px solid #7D4B37;
}
@media (hover: hover) {
  body.page-product section.product .product-info .inner-content .colors .selector .color .thumb:hover {
    border: 1px solid #7D4B37;
  }
}
body.page-product section.product .product-info .inner-content .colors .selector .color .promo {
  color: #FFF;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: center;
  background-color: #7D4B37;
  border-radius: 3px;
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  width: fit-content;
  padding: 1px 8px;
  white-space: nowrap;
}
body.page-product section.product .product-info .inner-content .colors .selector .color .promo.new-badge {
  background-color: #0C3317;
}
body.page-product section.product .product-info .inner-content .label {
  font-size: 1.13rem;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form {
  padding-bottom: 10px;
  order: 3;
  padding-top: 10px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form {
    order: initial;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details {
  padding: 20px 0px 10px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .klarna-payoff {
  text-align: left;
  order: 3;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .klarna-payoff {
    order: initial;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .klarna-payoff .klarna-logo {
  font-family: "Klarna Headline";
  font-weight: 300;
  letter-spacing: -0.5px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .klarna-payoff .klarna-modal {
  text-decoration: underline;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .scalapay-payoff {
  padding-bottom: 10px;
  text-align: left;
  order: 4;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .scalapay-payoff {
    order: initial;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .scalapay-payoff .scalapay-modal {
  text-decoration: underline;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .payment-details .paypal-img {
  width: 82px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container {
  display: none;
  width: 100%;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container.selected-color {
  display: grid !important;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  margin-top: 10px;
  margin-bottom: 20px;
  gap: 10px;
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector {
    grid-template-columns: repeat(7, 1fr) !important;
  }
}
@media (min-width: 1400px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector {
    grid-template-columns: repeat(9, 1fr) !important;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector .size-item {
  font-size: 0.75rem;
  transition: all 200ms ease-out;
  border: 1px solid #DDCFC7;
  border-radius: 3px;
  text-align: center;
  line-height: 44px;
  text-decoration: none;
  color: #7D4B37;
  user-select: none;
  display: inline-block;
  background-color: transparent;
  font-weight: 600;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector .size-item {
    font-size: 0.88rem;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector .size-item:hover {
  border-color: #7D4B37;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .sizes-container .size-selector .size-item.current {
  border: 1px solid #7D4B37;
  background-color: #7D4B37;
  color: #FFF;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section {
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section {
    margin-bottom: 0px;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section label {
  color: #7D4B37;
  font-weight: 600;
  font-size: 0.94rem;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section label #selectedSizeLabel {
  text-transform: uppercase;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section .size-scale-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.81rem;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section .size-scale-toggle .form-check-input {
  margin: 0;
  cursor: pointer;
  appearance: none;
  position: relative;
  width: 48px;
  height: 26px;
  border: 1px solid #dcdcdc;
  background-color: #dcdcdc;
  border-radius: 3px;
  transition: all 160ms ease-in-out;
  box-shadow: inset 0 0 0 2px #f7f7f7;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section .size-scale-toggle .form-check-input:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 3px;
  background: #7D4B37;
  transition: all 160ms ease-in-out;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section .size-scale-toggle .form-check-input:checked:after {
  transform: translateX(22px);
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section .size-scale-toggle .scale-label {
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide-section a {
  color: #7D4B37;
  text-decoration: none;
  font-weight: 400;
  display: flex;
  align-items: center;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide {
  display: flex;
  font-weight: 400;
  text-decoration: none;
  font-size: 0.88rem;
}
@media (min-width: 576px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .size-guide {
    font-size: 0.88rem;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist {
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  text-decoration: none;
  font-size: 0.81rem;
  text-align: center;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist {
    text-align: center;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .add,
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .remove {
  padding-right: 0;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .heart-img,
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .heart-img-filled {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .heart-img-filled {
  color: #7D4B37;
  fill: currentColor;
  stroke: currentColor;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist .heart-img-filled path {
  fill: currentColor;
  stroke: currentColor;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div > a.js-wishlist svg:not(.heart-img):not(.heart-img-filled) {
  width: 12px;
  height: 12px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form > div:first-child p {
  width: 100%;
  margin-bottom: 14px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 12px 16px 12px;
  padding-bottom: calc(12px + env(safe-area-inset-bottom));
  background-color: rgba(255, 255, 255, 0.95);
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.15);
  z-index: 1010;
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 160ms ease-in-out, opacity 160ms ease-in-out;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky .add-to-cart {
  width: 100%;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky.is-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky {
    display: none !important;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 12px 24px;
  background-color: rgba(245, 240, 235, 0.96);
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.15);
  z-index: 1100;
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 180ms ease-in-out, opacity 180ms ease-in-out;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-info {
  flex: 1 1 auto;
  min-width: 0;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-name {
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-name {
    font-size: 0.88rem;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-name {
    font-size: 1rem;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 0.81rem;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-meta .sticky-size {
  padding-left: 12px;
  border-left: 1px solid rgba(125, 75, 55, 0.12);
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-price {
  font-weight: 600;
  white-space: nowrap;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-price {
    font-size: 1.13rem;
  }
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .sticky-price {
    font-size: 1.25rem;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop .add-to-cart {
  width: auto;
  min-width: 250px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop.is-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 575.98px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .add-to-cart-sticky-desktop {
    display: none !important;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions {
  height: 100%;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section,
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions {
    height: 45px;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn {
  margin-top: 0;
  margin-bottom: 0;
  display: block;
  width: 100%;
  height: 45px;
  transition: all 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
  font-weight: 300;
  background-color: transparent;
  border-color: #7D4B37;
  color: #7D4B37;
  font-size: 1rem;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn,
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn {
    height: 100%;
  }
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn,
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn {
    font-size: 1.13rem;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn span,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn span {
  text-transform: uppercase;
  font-weight: 300;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.add-to-cart,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.add-to-cart {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding-left: 10px;
  padding-right: 10px;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.add-to-cart,
  body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.add-to-cart {
    padding-left: 18px;
    padding-right: 18px;
  }
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.add-to-cart .add-to-cart-main,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.add-to-cart .add-to-cart-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.add-to-cart .add-to-cart-label,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.add-to-cart .add-to-cart-label {
  text-transform: uppercase;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.add-to-cart .add-to-cart-price,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.add-to-cart .add-to-cart-price {
  display: none;
  color: #FFF;
  white-space: nowrap;
  text-transform: none;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn:hover,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn:hover {
  background-color: #DDCFC7;
  border-color: #DDCFC7;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy {
  background-color: #7D4B37;
  border-color: #7D4B37;
  justify-content: space-between;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy .add-to-cart-label,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy .add-to-cart-label {
  color: #FFF;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy .add-to-cart-main,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy .add-to-cart-main {
  justify-content: flex-start;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy .add-to-cart-price,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy .add-to-cart-price {
  display: inline-flex;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy:hover,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy:hover {
  background-color: transparent;
  border-color: #7D4B37;
}
body.page-product section.product .product-info .inner-content .add-to-cart-form .btn-section .btn.ready-to-buy:hover *,
body.page-product section.product .product-info .inner-content .add-to-cart-form .sticky-actions .btn.ready-to-buy:hover * {
  color: #7D4B37 !important;
}
body.page-product section.product .product-info .inner-content .accordions-section {
  padding: 10px 0;
}
@media (min-width: 992px) {
  body.page-product section.product .product-info .inner-content .accordions-section {
    padding: 10px 0;
  }
}
@media (min-width: 1400px) {
  body.page-product section.product .product-info .inner-content .accordions-section {
    padding: 20px 0;
  }
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion {
  padding: 10px 0;
  border-top: solid 1px #DDCFC7;
  order: 6;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .accordions-section .accordion {
    order: initial;
  }
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-item {
  background-color: transparent;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-item .accordion-header {
  border: 0;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-body {
  padding: 10px;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion.collapsed.accordion-button {
  border: 0;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion:not(.collapsed).accordion-button {
  border-bottom: 1px solid #DDCFC7 !important;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .products-badge {
  width: 90px;
  height: 90px;
  margin-left: 10px;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button {
  padding: 10px;
  font-size: 0.75rem;
  font-weight: 300;
  color: #7D4B37;
  background-color: transparent;
  display: flex;
  justify-content: space-between;
  font-weight: 600;
  text-transform: uppercase;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  box-shadow: none !important;
  align-items: center;
}
@media (min-width: 768px) {
  body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button {
    font-size: 0.88rem;
  }
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button .accordion-toggle-icons {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button .accordion-toggle-icons .accordion-icon {
  display: none;
  width: 18px;
  height: 18px;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button .accordion-toggle-icons .accordion-icon-minus {
  display: inline-flex;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button::after {
  display: none;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button:focus {
  box-shadow: none !important;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button.collapsed .accordion-icon-minus {
  display: none;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .accordion-button.collapsed .accordion-icon-plus {
  display: inline-flex;
}
body.page-product section.product .product-info .inner-content .accordions-section .accordion .product-highlight-header {
  display: none;
}
body.page-product section.product .product-info .inner-content .match-with .heading {
  margin-bottom: 30px;
  font-size: 1.38rem;
}
@media (max-width: 767.98px) {
  body.page-product section.product .product-info .inner-content .match-with .product-box {
    max-width: 400px;
  }
}
body.page-product .swal2-header .swal2-title {
  margin-bottom: 30px;
  font-size: 26px;
}
body.page-product .section-divider {
  padding-top: 50px;
  font-size: 1.13rem;
}
@media (min-width: 768px) {
  body.page-product .section-divider {
    padding-top: 40px;
  }
}
@media (min-width: 768px) {
  body.page-product .section-divider {
    font-size: 1.38rem;
  }
}
body.page-product .pswp__button--arrow--left:before,
body.page-product .pswp__button--arrow--right:before {
  display: none;
}
body.page-product .pswp__button,
body.page-product .pswp__button--arrow--left:before,
body.page-product .pswp__button--arrow--right:before {
  width: 40px;
  height: 40px;
  padding: 10px;
  top: 0;
}
body.page-product .arrow-custom {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ccc !important;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 20px;
  margin-right: 20px;
}
body.page-product .pswp__button--arrow--left,
body.page-product .pswp__button--arrow--right {
  margin-top: 0;
}
body.page-product .remove {
  padding-right: 8px;
}
body.page-product .whishlist-color {
  display: none;
}
body.page-product .whishlist-color.selected-color {
  display: block;
}
body.page-product .pswp__button--arrow {
  opacity: 1 !important;
  visibility: visible !important;
}
body.page-product .pswp--ui-hidden .pswp__button--arrow {
  opacity: 1 !important;
  visibility: visible !important;
}
body.page-product .pswp__button--arrow {
  width: 48px;
  height: 48px;
}
body.page-product .pswp__button--arrow--prev {
  left: 12px;
  top: 50%;
}
body.page-product .pswp__button--arrow--next {
  right: 12px;
  top: 50%;
}

@media (max-width: 767px) {
  body.static-page .gx-4 {
    --bs-gutter-x: 0px;
  }
}
body.static-page main .boxStaticPage {
  max-width: 1400px;
  padding: 15px;
  padding-top: 110px;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage {
    padding: 0;
  }
}
@media (min-width: 992px) {
  body.static-page main .boxStaticPage {
    padding-top: 110px;
  }
}
body.static-page main .boxStaticPage h1 {
  color: #7D4B37;
  text-transform: uppercase;
  padding: 0 20px;
  font-size: 1rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage h1 {
    padding: 0 30px 30px 30px;
  }
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage h1 {
    font-size: 1.25rem;
  }
}
body.static-page main .boxStaticPage .page-content {
  margin-bottom: 0;
  border-radius: 3px;
  /*    &.faq {
    @include rpmq(padding-top, (xs: 0px, md: 60px));
  }*/
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content {
    margin-bottom: 60px;
  }
}
body.static-page main .boxStaticPage .page-content > div:first-child {
  background-color: #FFF;
  border-radius: 3px;
  padding: 30px;
  padding: 15px;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content > div:first-child {
    padding: 30px;
  }
}
body.static-page main .boxStaticPage .page-content > section:first-child {
  background-color: #FFF;
  border-radius: 3px;
  padding: 15px;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content > section:first-child {
    padding: 30px;
  }
}
body.static-page main .boxStaticPage .page-content.page-content-highlighted {
  background: #DDCFC7 !important;
  border: 1px solid #7D4B37 !important;
  text-align: center !important;
  padding-bottom: 30px;
}
body.static-page main .boxStaticPage .page-content .static-page-title {
  font-size: 2rem;
  padding-bottom: 20px;
}
body.static-page main .boxStaticPage .page-content h2 {
  padding: 10px 0 0 0;
  font-size: 1rem;
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content h2 {
    padding: 10px 0 10px 0;
  }
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content h2 {
    font-size: 1.13rem;
  }
}
body.static-page main .boxStaticPage .page-content h4,
body.static-page main .boxStaticPage .page-content h5 {
  font-weight: 600;
  padding: 20px 0 0 0;
  margin-bottom: 0;
  font-size: 1.1em;
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
body.static-page main .boxStaticPage .page-content h4.thanks-text,
body.static-page main .boxStaticPage .page-content h5.thanks-text {
  font-size: 1.4em;
}
body.static-page main .boxStaticPage .page-content .static-page-text {
  padding-bottom: 40px;
  font-size: 1.1em;
  text-align: justify;
}
body.static-page main .boxStaticPage .page-content .static-page-text .faq-wrap {
  padding-bottom: 15px;
}
body.static-page main .boxStaticPage .page-content .shops-list {
  padding: 20px;
  margin-bottom: 20px;
  background: #eee;
  display: block;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: baseline;
  align-content: center;
  flex-grow: 1;
}
@media (min-width: 992px) {
  body.static-page main .boxStaticPage .page-content .shops-list {
    display: flex;
  }
}
body.static-page main .boxStaticPage .page-content .shops-list strong {
  line-height: 4em;
}
body.static-page main .boxStaticPage .page-content .shops-list p {
  line-height: 0.7em;
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper {
  margin-top: 0;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content .contact-form-wrapper {
    margin-top: 0;
  }
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper .contact-phone-icon {
  transform-origin: 50% 50%;
  animation: contact-phone-ring 1.2s ease-in-out infinite;
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .form-control {
  border-radius: 3px;
  background-color: transparent;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .form-control {
    font-size: 1rem;
  }
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm textarea.form-control {
  border-radius: 3px;
  text-align: left;
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .form-select {
  margin: 0;
  background-color: transparent;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .form-check-label {
  font-size: 0.9em;
  color: #7D4B37;
}
body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .btn {
  padding: 10px 20px;
  font-size: 0.88rem;
  border-radius: 3px;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .btn {
    padding: 15px 30px;
  }
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage .page-content .contact-form-wrapper #ContactForm .btn {
    font-size: 1rem;
  }
}
body.static-page main .boxStaticPage .page-content.store-locator-page-content .store-locator-wrapper {
  min-height: 680px;
}
body.static-page main .boxStaticPage .page-content.store-locator-page-content .store-locator-wrapper #storerocket-widget {
  min-height: 620px;
}
body.static-page main .boxStaticPage #static-pages-column-navigator ul {
  margin-top: 30px;
  padding: 0 !important;
  list-style-type: none;
  border-radius: 3px;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage #static-pages-column-navigator ul {
    margin-top: 0;
  }
}
body.static-page main .boxStaticPage #static-pages-column-navigator ul li {
  margin-bottom: 10px;
}
body.static-page main .boxStaticPage #static-pages-column-navigator ul li a {
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 600;
  color: #7D4B37;
  display: block;
  width: 90%;
  margin-left: 5%;
  padding: 15px 25px;
  border-radius: 3px;
  transition: all 300ms cubic-bezier(0.165, 0.84, 0.44, 1);
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.static-page main .boxStaticPage #static-pages-column-navigator ul li a {
    font-size: 0.88rem;
  }
}
body.static-page main .boxStaticPage #static-pages-column-navigator ul li a:hover, body.static-page main .boxStaticPage #static-pages-column-navigator ul li a.active {
  background: #7D4B37;
  color: #FFF;
}
body.static-page header[role=banner] {
  z-index: 100;
  background-color: transparent;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
}
body.static-page.page-thank-you {
  background-color: #FFF;
}
body.static-page.page-thank-you .thankyou {
  padding-top: 110px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 50vh;
}
@media (min-width: 992px) {
  body.static-page.page-thank-you .thankyou {
    padding-top: 110px;
  }
}
body.static-page.page-thank-you .thankyou h3 {
  color: #7D4B37;
  margin-top: 30px;
}
body.static-page.page-thank-you .thankyou .boxThankYou {
  padding: 30px;
  margin: 15px;
  max-width: 700px;
}
@media (min-width: 768px) {
  body.static-page.page-thank-you .thankyou .boxThankYou {
    padding: 50px;
  }
}
@media (min-width: 768px) {
  body.static-page.page-thank-you .thankyou .boxThankYou {
    margin: 0;
  }
}
body.static-page.page-thank-you .thankyou .thank-you-icon {
  width: 60px;
  height: 60px;
  color: #7D4B37;
  stroke-width: 0.5px;
}

@keyframes contact-phone-ring {
  0%, 48%, 100% {
    transform: rotate(0deg) translateX(0);
  }
  8% {
    transform: rotate(12deg) translateX(1px);
  }
  16% {
    transform: rotate(-12deg) translateX(-1px);
  }
  24% {
    transform: rotate(10deg) translateX(1px);
  }
  32% {
    transform: rotate(-8deg) translateX(-1px);
  }
  40% {
    transform: rotate(6deg) translateX(1px);
  }
  44% {
    transform: rotate(-4deg) translateX(-1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  body.static-page .contact-phone-icon {
    animation: none;
  }
}
body.cart .swal2-container .swal-size-xlg {
  width: 80%;
}
body.cart .ui-autocomplete {
  z-index: 9999;
}
body.cart .common-heading .content h3 {
  font-size: 1.25rem;
  text-transform: uppercase;
  font-weight: 600;
  color: #7D4B37;
}
body.cart .btn-disable-on-loading.loading {
  position: relative;
  color: transparent !important;
  pointer-events: none;
  cursor: wait;
  background-color: #b6d1cb !important;
}
body.cart .btn-disable-on-loading.loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.2rem;
  height: 1.2rem;
  margin: -0.6rem 0 0 -0.6rem;
  border-radius: 50%;
  border: 2px solid rgba(125, 75, 55, 0.4);
  border-top-color: #7D4B37;
  animation: cart-btn-spin 0.8s linear infinite;
}
@keyframes cart-btn-spin {
  to {
    transform: rotate(360deg);
  }
}
body.cart h3.riga-sopra {
  width: 100%;
  margin-top: 40px;
  padding-bottom: 10px;
  padding-top: 20px;
  border-top: solid 1px #DDCFC7;
  font-size: 1rem;
}
@media (min-width: 768px) {
  body.cart h3.riga-sopra {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  body.cart h3.riga-sopra {
    font-size: 1.25rem;
  }
}

@keyframes shipping-progress-fill {
  from {
    width: 0;
  }
  to {
    width: var(--progress);
  }
}
@media (prefers-reduced-motion: reduce) {
  #basket-shipping-warning .shipping-progress__fill {
    animation: none;
    width: var(--progress);
  }
}
body.cart main {
  padding-top: 0;
  /*
  Clearpay / Afterpay
  */
}
body.cart main .adyen-checkout__payment-method--afterpaytouch {
  display: none !important;
}
body.cart main .main-margin {
  margin-bottom: 70px;
}
@media (min-width: 576px) {
  body.cart main .main-margin {
    margin-bottom: 94.38px;
  }
}
@media (min-width: 768px) {
  body.cart main .main-margin {
    margin-bottom: 118.75px;
  }
}
@media (min-width: 992px) {
  body.cart main .main-margin {
    margin-bottom: 151.25px;
  }
}
@media (min-width: 1400px) {
  body.cart main .main-margin {
    margin-bottom: 175.63px;
  }
}
@media (min-width: 1600px) {
  body.cart main .main-margin {
    margin-bottom: 200px;
  }
}
body.cart main .step-menu-row {
  margin-left: 0;
  margin-right: 0;
  border-bottom: solid 1px #7D4B37;
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  body.cart main .step-menu-row {
    margin-bottom: 40px;
  }
}
body.cart main .step-menu-row .step {
  min-height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: #7D4B37;
}
body.cart main .step-menu-row .step.current {
  /*border-top-left-radius: $input-border-radius;
  border-top-right-radius: $input-border-radius;*/
  background-color: #7D4B37;
  color: #FFF;
}
body.cart main .step-menu-row .step.current h3 {
  font-weight: 600;
}
body.cart main .step-menu-row .step.current span.circle::after {
  background-color: #fff;
}
body.cart main .step-menu-row .step h3 {
  text-transform: uppercase;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 400;
  margin: 10px 0;
  line-height: 2;
}
@media (min-width: 768px) {
  body.cart main .step-menu-row .step h3 {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  body.cart main .step-menu-row .step h3 {
    line-height: 1;
  }
}
body.cart main .step-menu-row .step h3 span.circle {
  position: relative;
}
body.cart main .step-menu-row .step h3 span.circle::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 1px solid var(--bs-border-color);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
body.cart main section.row {
  /********************************************************
  * Cart aside
  ********************************************************/
}
body.cart main section.row .preliminary-header h3 {
  text-transform: uppercase;
  font-weight: 600;
  margin-top: 0;
}
body.cart main section.row .preliminary-header .preliminary-choice {
  width: 100%;
}
body.cart main section.row .preliminary-header .shipping-options {
  display: flex;
  gap: 1rem;
}
body.cart main section.row .preliminary-header .shipping-options input[type=radio] {
  display: none;
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 1rem 1rem 1.5rem;
  border: 2px solid #FFF;
  border-radius: 3px;
  cursor: pointer;
  user-select: none;
  text-align: center;
  transition: border-color 0.2s, background-color 0.2s;
  background-color: #FFF;
}
@media (min-width: 576px) {
  body.cart main section.row .preliminary-header .shipping-options .shipping-card {
    width: 200px;
  }
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card .icon {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card .icon .lucide,
body.cart main section.row .preliminary-header .shipping-options .shipping-card .icon [data-lucide] {
  width: 24px;
  height: 24px;
  color: #7D4B37;
  stroke-width: 1px;
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card .title {
  margin-bottom: 0;
  text-transform: uppercase;
  color: #7D4B37;
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card .subtitle {
  font-size: 0.9rem;
  color: #707070;
}
body.cart main section.row .preliminary-header .shipping-options .shipping-card:hover {
  border-color: #7D4B37;
}
body.cart main section.row .preliminary-header .shipping-options input[type=radio]:checked + .shipping-card {
  border-color: #7D4B37;
  background-color: #FFF;
  border-width: 2px;
}
body.cart main section.row .pudo-shipping-data .btn-search-pudo {
  display: flex;
  align-items: center;
  line-height: 1.42;
}
body.cart main section.row .pudo-shipping-data #GMap {
  height: 400px;
}
body.cart main section.row .pudo-shipping-data #PudoInfo {
  padding: 25px;
  background-color: #FFF;
  border: solid 2px #7D4B37;
  border-radius: 3px;
}
@media (min-width: 576px) {
  body.cart main section.row .pudo-shipping-data #PudoInfo {
    padding: 25px;
  }
}
body.cart main section.row .pudo-shipping-data #PudoInfo h5 {
  text-transform: uppercase;
  font-size: 0.8rem !important;
}
body.cart main section.row .pudo-shipping-data #PudoInfo h6 {
  text-transform: uppercase;
  font-size: 1rem !important;
  font-weight: 600;
}
body.cart main section.row .pudo-shipping-data #PudoInfo p {
  font-size: 0.8rem !important;
}
body.cart main section.row > aside {
  position: relative;
  top: unset;
}
@media (min-width: 992px) {
  body.cart main section.row > aside {
    position: sticky;
  }
}
@media (min-width: 992px) {
  body.cart main section.row > aside {
    top: 130px;
  }
}
body.cart main section.row > aside .row {
  margin-left: 0;
  margin-right: 0;
  margin: 0 15px;
  margin-top: 30px;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row {
    margin: 0;
  }
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row {
    margin-top: 0;
  }
}
body.cart main section.row > aside .row > .sideCart {
  border-radius: 3px;
  font-size: 0.88rem;
  padding: 20px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  background-color: #FFF;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart {
    font-size: 1rem;
  }
}
body.cart main section.row > aside .row > .sideCart h4 {
  display: block;
  font-size: 1.25rem;
  padding-bottom: 14px;
  margin: 0 0 20px;
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart h4 {
    text-align: center;
  }
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart h4 {
    font-size: 1.5rem;
  }
}
body.cart main section.row > aside .row > .sideCart .products {
  margin-bottom: 30px;
}
body.cart main section.row > aside .row > .sideCart h3 {
  color: #7D4B37;
  font-size: 1.25rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart h3 {
    font-size: 1.5rem;
  }
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning {
  text-align: center;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress {
  margin-top: 8px;
  padding: 10px 10px 8px;
  background-color: #FFF;
  border-radius: 3px;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__row {
  display: flex;
  align-items: center;
  gap: 10px;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__label {
  color: #707070;
  font-weight: 400;
  white-space: nowrap;
  font-size: 0.75rem;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__track {
  position: relative;
  height: 10px;
  flex: 1 1 auto;
  background-color: #DDCFC7;
  border-radius: 3px;
  overflow: visible;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__fill {
  height: 100%;
  background-color: #7D4B37;
  border-radius: 3px;
  width: 0;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__pin {
  position: absolute;
  top: -26px;
  left: clamp(14px, var(--progress), 100% - 14px);
  transform: translateX(-50%);
  padding: 2px 8px;
  border-radius: 3px;
  background-color: #FFF;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
  font-size: 11px;
  line-height: 1.2;
  white-space: nowrap;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__pin::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  border-width: 5px 5px 0 5px;
  border-style: solid;
  border-color: #DDCFC7 transparent transparent transparent;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress.is-animated .shipping-progress__fill {
  animation: shipping-progress-fill 1.1s ease forwards;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__text {
  margin: 10px 0 0;
  color: #7D4B37;
  font-weight: 400;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  line-height: normal;
}
body.cart main section.row > aside .row > .sideCart #basket-shipping-warning .shipping-progress__icon {
  font-size: 20px;
  color: #7D4B37;
}
body.cart main section.row > aside .row > .sideCart .product-cart-item {
  padding-top: 10px;
  padding-bottom: 10px;
  align-items: center;
  border-bottom: solid 1px #DDCFC7;
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .product-image-thumb {
  width: 20%;
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .product-image-thumb .image-container {
  mix-blend-mode: multiply;
  position: relative;
  padding-bottom: 100%;
  margin-top: 10px;
  background-image: none;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 576px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .product-image-thumb .image-container {
    margin-top: 0;
  }
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .product-image-thumb img {
  width: 100%;
  height: auto;
  mix-blend-mode: multiply;
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .description {
  padding-left: 20px;
  padding-right: 5px;
  color: #7D4B37;
  font-size: 0.88rem;
  width: 55%;
  line-height: 22px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .description {
    padding-left: 5px;
  }
}
@media (min-width: 992px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .description {
    padding-left: 20px;
  }
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .description {
    padding-right: 5px;
  }
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .description {
    width: 55%;
  }
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .description .product-name {
  display: inline-block;
  margin-bottom: 0;
  line-height: 1;
  text-transform: capitalize;
  color: #7D4B37;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .description .product-name {
    margin-bottom: 10px;
  }
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .description .label {
  font-size: 0.81rem;
  color: #707070;
}
body.cart main section.row > aside .row > .sideCart .product-cart-item .price {
  font-size: 0.88rem;
  color: #7D4B37;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  width: 25%;
  text-align: end;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .product-cart-item .price {
    width: 25%;
  }
}
body.cart main section.row > aside .row > .sideCart .separator {
  display: inline-block;
  margin-top: 30px;
  height: auto;
  width: 100%;
}
body.cart main section.row > aside .row > .sideCart .price-row {
  display: flex;
  justify-content: space-between;
  padding: 10px 0px;
  color: #7D4B37;
  font-weight: normal;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .price-row {
    font-size: 1rem;
  }
}
body.cart main section.row > aside .row > .sideCart .price-row span:last-child {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
body.cart main section.row > aside .row > .sideCart .price-row .amount {
  font-weight: 600;
}
body.cart main section.row > aside .row > .sideCart .price-row.total-cart:first-child {
  text-transform: uppercase;
}
body.cart main section.row > aside .row > .sideCart .price-row.value-coupon {
  color: #7D4B37;
  font-weight: 600;
}
body.cart main section.row > aside .row > .sideCart .price-row.value-coupon span:first-child {
  color: #7D4B37;
}
body.cart main section.row > aside .row > .sideCart .actions {
  margin-top: 20px;
  margin-bottom: 5px;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .sideCart .actions {
    font-size: 1rem;
  }
}
body.cart main section.row > aside .row > .sideCart .actions .btn {
  width: 100%;
  text-align: center;
  text-decoration: none;
}
body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward .lucide,
body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward [data-lucide] {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  transition: transform 220ms ease;
  transform: translateX(0);
}
body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward:hover .lucide,
body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward:hover [data-lucide], body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward:focus-visible .lucide,
body.cart main section.row > aside .row > .sideCart .actions .btn.js-go-forward:focus-visible [data-lucide] {
  transform: translateX(4px);
}
body.cart main section.row > aside .row > .sideCart .actions .btn.btn-paypal {
  margin-top: 14px;
  height: 42px;
  background-image: url(/build/images/paypal_express_button.821d1645.gif);
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  border-radius: 3px;
  background-color: #E9E9E9;
  border-color: #E9E9E9;
  transition: none;
  padding: 0;
}
body.cart main section.row > aside .row > .sideCart .actions .btn.btn-paypal:hover {
  background-image: url(/build/images/paypal_express_button_hover.7e8525c1.gif);
  background-color: #D8D8D8;
  border-color: #D8D8D8;
}
body.cart main section.row > aside .row > .sideCart .custom-checkbox {
  padding-left: 34px;
  margin: 26px auto 0;
}
body.cart main section.row > aside .row > .sideCart .custom-checkbox label {
  font-size: 0.63rem;
}
body.cart main section.row > aside .row > .sideCart .custom-checkbox label::before, body.cart main section.row > aside .row > .sideCart .custom-checkbox label::after {
  left: -34px;
}
body.cart main section.row > aside .row > .sideCart .custom-checkbox a {
  text-decoration: underline;
}
body.cart main section.row > aside .row > .coupon {
  margin-top: 10px;
  padding: 20px 20px;
}
@media (min-width: 768px) {
  body.cart main section.row > aside .row > .coupon {
    padding: 20px;
  }
}

/********************************************************
* Cart step 1
********************************************************/
body.cart.step-1 main .products-row {
  align-items: flex-start !important;
  /********************************************************
  * Cart table columns width
  ********************************************************/
  /********************************************************
  * Cart table header (desktop)
  ********************************************************/
  /********************************************************
  * Cart product item
  ********************************************************/
  /********************************************************
  * bannerbasket container
  ********************************************************/
  /********************************************************
  * Coupon container
  ********************************************************/
  /********************************************************
  * Empty cart
  ********************************************************/
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row {
    padding-top: 20px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col {
    padding-right: 30px;
  }
}
body.cart.step-1 main .products-row .products-col .product-image-thumb {
  width: 90px;
}
@media (min-width: 576px) {
  body.cart.step-1 main .products-row .products-col .product-image-thumb {
    width: 200px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-image-thumb {
    width: 120px;
  }
}
@media (min-width: 992px) {
  body.cart.step-1 main .products-row .products-col .product-image-thumb {
    width: 140px;
  }
}
body.cart.step-1 main .products-row .products-col .product-info {
  justify-content: space-around;
  width: calc(100% - 110px);
}
@media (min-width: 576px) {
  body.cart.step-1 main .products-row .products-col .product-info {
    width: calc(100% - 200px);
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-info {
    width: calc(100% - 120px);
  }
}
@media (min-width: 992px) {
  body.cart.step-1 main .products-row .products-col .product-info {
    width: calc(100% - 140px);
  }
}
body.cart.step-1 main .products-row .products-col .product-info .description {
  width: 100%;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-info .description {
    width: 38%;
  }
}
body.cart.step-1 main .products-row .products-col .product-info .price {
  width: 100%;
  color: #7D4B37;
  font-weight: 400;
  margin-top: 10px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-info .price {
    width: 21%;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-info .price {
    margin-top: 0;
  }
}
body.cart.step-1 main .products-row .products-col .product-info .quantity {
  width: 100%;
}
body.cart.step-1 main .products-row .products-col .product-info .total-price {
  width: 24%;
}
body.cart.step-1 main .products-row .products-col .product-info .remove {
  width: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .products-col .product-info .remove {
    width: 30px;
  }
}
body.cart.step-1 main .products-row .products-col .productsCarousel {
  padding: 0 15px;
}
body.cart.step-1 main .products-row .table-header {
  text-transform: uppercase;
  text-align: center;
  padding-left: 10px;
  padding-bottom: 20px;
  margin-bottom: 0;
  margin-top: 20px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    padding-bottom: 10px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    font-size: 0.88rem;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .table-header {
    font-weight: 600;
  }
}
body.cart.step-1 main .products-row .table-header .product-image-thumb {
  padding-left: 10px;
}
body.cart.step-1 main .products-row .table-header .product-info {
  padding-right: 10px;
}
body.cart.step-1 main .products-row article.product-cart-item {
  position: relative;
  padding: 15px 0;
  margin: 0 15px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  border-bottom: solid 1px #DDCFC7;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item {
    margin: 0 0 20px 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item {
    font-size: 0.88rem;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-image-thumb {
  margin-right: 10px;
}
body.cart.step-1 main .products-row article.product-cart-item .product-image-thumb .image-container {
  position: relative;
  padding-bottom: 91%;
  margin-top: 0;
  background-color: #FFF;
  z-index: 1;
  border-radius: 3px;
}
@media (min-width: 576px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-image-thumb .image-container {
    margin-top: 0;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-image-thumb img {
  width: 100%;
  height: auto;
  border-radius: 3px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info > div {
    flex-shrink: 1;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .label {
  font-size: 0.95em;
  min-width: 0;
  color: #707070;
  display: inline-block;
  font-weight: 400;
  text-transform: uppercase;
}
@media (min-width: 576px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .label {
    min-width: 100px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .label {
    min-width: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .description {
    padding-right: 10px;
  }
}
@media (min-width: 992px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .description {
    padding-right: 20px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .description {
    font-size: 0.88rem;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .description .product-name {
  color: #7D4B37;
  display: inline-block;
  margin-bottom: 0;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 600;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .description .product-name {
    margin-bottom: 10px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .description .product-name {
    font-size: 0.81rem;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .price .label {
  display: none;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity {
  padding-top: 14px;
  padding-bottom: 14px;
  overflow: hidden;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity {
    overflow: visible;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .label {
    display: none;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .form-control {
  border: 1px solid #DDCFC7;
  width: 31px;
  padding-left: 3px;
  padding-right: 3px;
  text-align: center;
  font-weight: 400;
  display: inline-block;
  margin: 10px 0;
  background-color: transparent;
  color: #7D4B37;
  border-radius: 3px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .form-control {
    width: 36px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .form-control {
    margin: 10px 0;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .form-control:focus {
  box-shadow: none;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn {
  cursor: pointer;
  font-size: 1.5rem;
  padding: 0 5px;
  width: 30px;
  width: 20px;
  text-align: center;
  color: #7D4B37;
  background-color: transparent;
  border-radius: 3px;
  border: none;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn {
    width: 30px;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn.btn:focus,
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn .btn:active,
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn .btn:focus:active,
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn .btn:focus-visible {
  color: #7D4B37 !important;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn .lucide,
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn [data-lucide] {
  width: 14px;
  height: 14px;
  stroke-width: 2.2px;
  display: block;
  margin: 0 auto;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn:disabled,
body.cart.step-1 main .products-row article.product-cart-item .product-info .quantity .btn.is-disabled {
  color: #F5F0EB !important;
  cursor: not-allowed;
  border: none;
  background-color: transparent !important;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price {
  border-top: 1px solid var(--bs-border-color);
  padding-top: 14px;
  margin-top: 2px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price {
    padding-top: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price {
    padding-right: 10px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price {
    text-align: right;
    border-top: none;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .total-price .label {
    display: none;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .remove {
  bottom: 22px;
  right: 10px;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row article.product-cart-item .product-info .remove {
    bottom: 32px;
  }
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .remove a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .remove .icon-close {
  width: 16px;
  height: 16px;
  color: #7D4B37;
  stroke-width: 2px;
}
body.cart.step-1 main .products-row article.product-cart-item .product-info .remove img {
  width: 12px;
  height: 12px;
}
body.cart.step-1 main .products-row .bannerBasket {
  padding: 20px 0;
  text-align: center;
  font-weight: 600;
  display: flex;
  justify-content: center;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .bannerBasket {
    padding: 30px;
  }
}
body.cart.step-1 main .products-row .coupon {
  margin-top: 0;
  margin-bottom: 15px;
}
body.cart.step-1 main .products-row .coupon .input-group {
  gap: 0;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .coupon .input-group {
    gap: 0;
  }
}
body.cart.step-1 main .products-row .coupon .input-group input.form-control {
  border: 1px solid #DDCFC7;
  margin: 0 !important;
  color: #7D4B37;
  padding: 10px;
  background-color: transparent;
}
body.cart.step-1 main .products-row .coupon > div {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
body.cart.step-1 main .products-row .coupon > div .input-group-text {
  border-color: #7D4B37;
  background-color: #7D4B37;
  color: #FFF;
}
body.cart.step-1 main .products-row .coupon > div > div:first-child {
  padding-right: 0;
  padding-top: 0;
  line-height: 1;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .coupon > div > div:first-child {
    padding-right: 0px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .coupon > div > div:first-child {
    padding-top: 0px;
  }
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .coupon > div > div:first-child {
    font-size: 0.88rem;
  }
}
body.cart.step-1 main .products-row .coupon > div > div:last-child {
  margin-top: 0;
}
@media (min-width: 768px) {
  body.cart.step-1 main .products-row .coupon > div > div:last-child {
    margin-top: 0;
  }
}
body.cart.step-1 main .products-row .coupon > div > div:last-child span {
  font-weight: 400;
  font-size: 1rem;
  text-transform: uppercase;
  color: #7D4B37;
}
body.cart.step-1 main .products-row .coupon > div > div:last-child span.title {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
}
body.cart.step-1 main .products-row .coupon > div > div:last-child span.active-coupon {
  margin-left: 10px;
  margin-right: 10px;
  font-weight: 600;
}
body.cart.step-1 main .products-row .coupon > div > div:last-child #verifyCouponButton {
  text-align: center;
  border-radius: 0 3px 3px 0;
  color: #F5F0EB;
  background-color: #7D4B37;
  transition: none;
  font-weight: 600;
  border: solid 1px #7D4B37;
  height: 100%;
  padding: 5px 15px;
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
body.cart.step-1 main .products-row .coupon > div > div:last-child #verifyCouponButton:active {
  border: 1px solid transparent;
}
body.cart.step-1 main .products-row .empty-cart {
  margin-top: 50px;
  margin-bottom: 150px;
  text-align: center;
  padding: 25px;
}
body.cart.step-1 main .products-row .empty-cart h4 {
  font-size: 0.88rem;
  margin-bottom: 40px;
  text-transform: uppercase;
}
body.cart.step-1 main .accordion {
  border: none;
}
body.cart.step-1 main .accordion .accordion-item {
  background-color: transparent;
}
body.cart.step-1 main .accordion .accordion-item .accordion-header {
  font-size: 0.88rem;
  color: #7D4B37;
  margin-bottom: 15px;
  font-weight: normal;
}
body.cart.step-1 main .accordion .accordion-item .accordion-header .accordion-button:focus {
  z-index: 0;
  border: none;
  box-shadow: none;
}
body.cart.step-1 main .accordion .accordion-item .accordion-header button {
  background-color: transparent;
  padding: 0;
  box-shadow: none !important;
  color: #7D4B37;
}
body.cart.step-1 main .accordion .accordion-item .accordion-header a {
  text-decoration: none;
}
body.cart.step-1 main .accordion .accordion-item .accordion-body {
  padding: 0;
}

/********************************************************
* Cart step 2
********************************************************/
body.cart.step-2 main .accessTable {
  padding-top: 0px;
}
@media (min-width: 576px) {
  body.cart.step-2 main .accessTable {
    padding-top: 20px;
  }
}
body.cart.step-2 main .accountTable {
  padding-top: 20px;
}
body.cart.step-2 main .accountTable h3 {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 30px;
}
body.cart.step-2 main .main-margin {
  margin-bottom: 70px;
}
@media (min-width: 576px) {
  body.cart.step-2 main .main-margin {
    margin-bottom: 94.38px;
  }
}
@media (min-width: 768px) {
  body.cart.step-2 main .main-margin {
    margin-bottom: 118.75px;
  }
}
@media (min-width: 992px) {
  body.cart.step-2 main .main-margin {
    margin-bottom: 151.25px;
  }
}
@media (min-width: 1400px) {
  body.cart.step-2 main .main-margin {
    margin-bottom: 175.63px;
  }
}
@media (min-width: 1600px) {
  body.cart.step-2 main .main-margin {
    margin-bottom: 200px;
  }
}

/********************************************************
* Cart step 3
********************************************************/
body.cart.step-3 main .btn-primary {
  font-size: 1rem;
}
body.cart.step-3 main .step3table {
  padding-top: 20px;
  align-items: flex-start !important;
}
body.cart.step-3 main .step3table .shipping-details > div {
  border-radius: 3px;
  padding: 0 20px 20px 20px;
}
body.cart.step-3 main .step3table .shipping-details .shipping-data-intro .riga-sopra {
  width: 100%;
}
body.cart.step-3 main .step3table .shipping-details .shipping-data-intro input,
body.cart.step-3 main .step3table .shipping-details .shipping-data-intro select {
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  margin: 0;
}
body.cart.step-3 main .step3table .shipping-details .step-4 #billing input {
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
}
body.cart.step-3 main #newShippingAddressForm .hPart {
  margin-bottom: 10px;
}
body.cart.step-3 main #shippingResume .shipping-resume-warn {
  text-align: center;
  font-weight: 600;
  margin-bottom: 30px;
  padding: 20px;
  background-color: #FAFAFA;
  font-size: 1rem;
}
body.cart.step-3 main #shippingResume .d-flex .modify-guest-address-cont {
  margin-left: 0;
  margin-top: 20px;
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  body.cart.step-3 main #shippingResume .d-flex .modify-guest-address-cont {
    margin-left: 20px;
  }
}
@media (min-width: 576px) {
  body.cart.step-3 main #shippingResume .d-flex .modify-guest-address-cont {
    margin-top: 30px;
  }
}
@media (min-width: 576px) {
  body.cart.step-3 main #shippingResume .d-flex .modify-guest-address-cont {
    margin-bottom: 0;
  }
}
body.cart.step-3 main #shippingResume .header-mod-address h3 {
  font-size: 0.88rem;
  color: #7D4B37;
  text-transform: uppercase;
  font-weight: 600;
}
body.cart.step-3 main #shippingAddressContinueButton {
  font-size: 1rem;
}
body.cart.step-3 main .form-col {
  /*@include media-breakpoint-up(md) {
    padding-right: 30px;
  }*/
}
body.cart.step-3 main .form-col form h3 {
  text-transform: uppercase;
  font-weight: 600;
}
body.cart.step-3 main .form-col .billing-checkbox,
body.cart.step-3 main .form-col .privacy-checkbox {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (min-width: 576px) {
  body.cart.step-3 main .form-col .billing-checkbox,
  body.cart.step-3 main .form-col .privacy-checkbox {
    margin-bottom: 0;
  }
}
body.cart.step-3 main .form-col .billing-checkbox .form-check,
body.cart.step-3 main .form-col .privacy-checkbox .form-check {
  align-items: flex-start;
}
body.cart.step-3 main .form-col .privacy-checkbox {
  margin-top: 30px;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col .privacy-checkbox {
    margin-top: 40px;
  }
}
body.cart.step-3 main .form-col .privacy-checkbox .form-check-label {
  font-size: 0.88rem;
}
body.cart.step-3 main .form-col .billing-header {
  margin-top: 20px;
  margin-bottom: 20px;
}
body.cart.step-3 main .form-col .billing-header h3 {
  margin-bottom: 0;
  margin-right: 10px;
}
body.cart.step-3 main .form-col #shippingDataFormPart .btn-return {
  margin: 0 auto 20px;
  display: block;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col #shippingDataFormPart .btn-return {
    margin: 0 0 20px 0;
    order: 2;
  }
}
body.cart.step-3 main .form-col #shippingDataFormPart .btn-save {
  margin: 10px auto 0;
  display: block;
}
body.cart.step-3 main .form-col #shippingDataFormPart input {
  background-color: transparent;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
}
body.cart.step-3 main .form-col #cBox {
  margin-bottom: 30px;
}
body.cart.step-3 main .form-col #cBox .header {
  margin-bottom: 20px;
}
body.cart.step-3 main .form-col #cBox .header h3 {
  margin-bottom: 20px;
}
@media (min-width: 576px) {
  body.cart.step-3 main .form-col #cBox .header h3 {
    margin-bottom: 0;
    margin-right: 10px;
  }
}
body.cart.step-3 main .form-col #cBox .box-shipping {
  transition: background-color 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  background-color: #FFF;
  padding: 30px;
  cursor: pointer;
  position: relative;
  border: 2px solid #FFF;
  border-radius: 3px;
  font-size: 0.88rem;
}
body.cart.step-3 main .form-col #cBox .box-shipping:not(:first-child) {
  margin-top: 20px;
}
body.cart.step-3 main .form-col #cBox .box-shipping.active {
  background-color: #FFF;
  border: 2px solid #7D4B37;
}
body.cart.step-3 main .form-col #cBox .box-shipping.active .select {
  position: relative;
}
body.cart.step-3 main .form-col #cBox .box-shipping.active .select .text-selected {
  display: inline;
  font-weight: 600;
}
body.cart.step-3 main .form-col #cBox .box-shipping.active .select .text-select {
  display: none;
}
body.cart.step-3 main .form-col #cBox .box-shipping.active .select::before {
  background-color: #7D4B37;
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23FFF%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 10px 10px;
  box-shadow: 0 0 0 3px #7D4B37;
}
body.cart.step-3 main .form-col #cBox .box-shipping:focus {
  background-color: #fff;
}
body.cart.step-3 main .form-col #cBox .box-shipping:active {
  background-color: #fff;
}
@media (hover: hover) {
  body.cart.step-3 main .form-col #cBox .box-shipping:hover {
    background-color: #fff;
  }
}
body.cart.step-3 main .form-col #cBox .box-shipping h6 {
  font-size: inherit;
}
body.cart.step-3 main .form-col #cBox .box-shipping .shipping-info {
  margin-bottom: 10px;
}
body.cart.step-3 main .form-col #cBox .box-shipping .select {
  position: relative;
  padding: 5px 0 5px 22px;
  text-transform: lowercase;
  line-height: 1;
  font-size: 0.75rem;
}
body.cart.step-3 main .form-col #cBox .box-shipping .select::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  box-shadow: 0 0 0 2px #7D4B37;
  border-radius: 3px;
  /* come nel tuo CSS */
  background-color: #fff;
}
body.cart.step-3 main .form-col #cBox .box-shipping .select .text-selected {
  display: none;
}
body.cart.step-3 main .form-col #cBox .box-shipping a.edit {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  text-transform: lowercase;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.75rem;
}
body.cart.step-3 main .form-col #cBox .box-shipping a.edit .lucide,
body.cart.step-3 main .form-col #cBox .box-shipping a.edit [data-lucide] {
  width: 16px;
  height: 16px;
  color: #7D4B37;
  stroke-width: 1.8px;
  flex-shrink: 0;
}
body.cart.step-3 main .form-col #cBox .box-shipping a.edit:focus {
  text-decoration: underline;
}
body.cart.step-3 main .form-col #cBox .box-shipping a.edit:active {
  text-decoration: underline;
}
@media (hover: hover) {
  body.cart.step-3 main .form-col #cBox .box-shipping a.edit:hover {
    text-decoration: underline;
  }
}
body.cart.step-3 main .form-col #containerTypeUser {
  margin-bottom: 20px;
}
body.cart.step-3 main .form-col .select-payment-type {
  margin-top: 30px;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col .select-payment-type {
    margin-top: 40px;
  }
}
body.cart.step-3 main .form-col .select-payment-type .accordion .accordion-item {
  border: none;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card {
  margin-bottom: 20px;
  border-radius: 3px;
  background-color: #FFF;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header {
  font-size: 1.13rem;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header {
    font-size: 1.38rem;
  }
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block {
  display: flex;
  align-items: center;
  box-shadow: none !important;
  text-transform: uppercase;
  font-size: 0.88rem;
  color: #7D4B37;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  border-radius: 3px 3px 0 0;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block {
    font-size: 0.88rem;
  }
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block.collapsed {
  border-radius: 3px;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block::after {
  display: none;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block img {
  margin-right: 16px;
  filter: brightness(0) saturate(100%) invert(27%) sepia(19%) saturate(1381%) hue-rotate(338deg) brightness(91%) contrast(89%);
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block span {
  padding-left: 15px;
  font-weight: 300;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block span {
    font-size: 0.88rem;
  }
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block .payment-accordion-icon {
  width: 18px;
  height: 18px;
  color: #7D4B37;
  stroke-width: 1.8px;
  flex-shrink: 0;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block .payment-accordion-icon-minus {
  margin-left: auto;
  display: inline-flex;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block .payment-accordion-icon-plus {
  display: none;
  margin-left: auto;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block.collapsed .payment-accordion-icon-minus {
  display: none;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block.collapsed .payment-accordion-icon-plus {
  display: inline-flex;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block:focus, body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block:active, body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block:focus:active, body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block:focus-visible {
  color: #7D4B37 !important;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-header .btn-block:not(.collapsed) {
  border-color: #7D4B37;
}
body.cart.step-3 main .form-col .select-payment-type .accordion .card .card-body {
  padding: 20px 20px;
}
body.cart.step-3 main .form-col .select-payment-type .custom-radio:not(:last-child) {
  margin-bottom: 10px;
}
body.cart.step-3 main .form-col .select-payment-type .custom-radio .custom-control-input:checked ~ .custom-control-label img {
  opacity: 1;
}
body.cart.step-3 main .form-col .select-payment-type .custom-radio .custom-control-label {
  cursor: pointer;
}
body.cart.step-3 main .form-col .select-payment-type .custom-radio .custom-control-label::before, body.cart.step-3 main .form-col .select-payment-type .custom-radio .custom-control-label::after {
  top: 7px;
}
body.cart.step-3 main .form-col .select-payment-type .custom-radio .custom-control-label img {
  height: 30px;
  width: auto;
  margin-left: 5px;
  margin-right: 5px;
  opacity: 0.4;
  transition: opacity 200ms ease-out;
}

@media (prefers-reduced-motion: reduce) {
  body.cart main .actions .btn.js-go-forward .lucide,
  body.cart main .actions .btn.js-go-forward [data-lucide] {
    transition: none;
    transform: none !important;
  }
}
/********************************************************
* Cart thank you
********************************************************/
body.cart.thank-you main > .container-fluid, body.cart.thank-you main > .container-sm, body.cart.thank-you main > .container-md, body.cart.thank-you main > .container-lg, body.cart.thank-you main > .container-xl, body.cart.thank-you main > .container-xxl {
  padding-top: 60px !important;
  margin-bottom: 60px !important;
  text-align: center;
}
body.cart.thank-you main h3 {
  font-size: 0.88rem;
  color: #7D4B37;
  text-transform: uppercase;
  font-weight: 600;
}
body.cart.thank-you main h4 {
  margin-bottom: 30px;
  font-size: 0.88rem;
  font-weight: 400;
}
body.cart.thank-you main p {
  font-size: 0.88rem;
}
body.cart.thank-you main p a {
  text-decoration: underline;
}

#deliveryAccordion .accordion-button {
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
}

body.account main {
  /********************************************************
    * Empty list
    ********************************************************/
  /********************************************************
  * Profile
  ********************************************************/
  /********************************************************
  * Order history
  ********************************************************/
  /********************************************************
  * Returns
  ********************************************************/
  /********************************************************
  * Wish list
  ********************************************************/
  /********************************************************
  * Newsletter
  ********************************************************/
}
body.account main .logout {
  color: #7D4B37;
  text-transform: uppercase;
  font-size: 0.75rem;
  display: inline-flex;
  align-items: center;
  background-color: transparent;
  border: none;
  gap: 10px;
}
@media (min-width: 768px) {
  body.account main .logout {
    font-size: 0.88rem;
  }
}
body.account main .logout .logout-icon {
  width: 15px;
  height: 15px;
  color: #7D4B37;
  stroke-width: 1px;
  flex-shrink: 0;
}
body.account main .step-menu {
  margin-bottom: 30px;
  flex-direction: column;
  flex-wrap: nowrap;
}
@media (min-width: 768px) {
  body.account main .step-menu {
    margin-bottom: 40px;
  }
}
body.account main .step-menu a {
  text-decoration: none;
}
@media (min-width: 768px) {
  body.account main .step-menu {
    align-self: flex-end;
    flex-direction: row;
  }
}
@media (max-width: 767.98px) {
  body.account main .step-menu {
    position: relative;
  }
  body.account main .step-menu:not(.fake-menu)::after {
    content: "";
    display: block;
    position: absolute;
    top: 25px;
    right: 15px;
    background-image: url(/build/images/plus.819c9072.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    transform: rotate(0deg);
    transition: transform 300ms cubic-bezier(0.165, 0.84, 0.44, 1);
    pointer-events: none;
  }
  body.account main .step-menu.mobile-menu-open .step:not(.active) {
    display: flex;
  }
  body.account main .step-menu.mobile-menu-open.mobile-menu-open-in::after {
    transform: rotate(135deg);
  }
  body.account main .step-menu.mobile-menu-open.mobile-menu-open-in .step:not(.active) {
    opacity: 1;
    transition: opacity 400ms ease-out 200ms;
  }
}
body.account main .step-menu .step {
  min-height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.account main .step-menu .step:not(span) {
  cursor: pointer;
}
@media (max-width: 767.98px) {
  body.account main .step-menu .step {
    border: 1px solid var(--bs-border-color);
    border-radius: 3px;
    margin-bottom: 10px;
  }
}
@media (min-width: 768px) {
  body.account main .step-menu .step {
    border-bottom: 1px solid var(--bs-border-color);
  }
}
@media (max-width: 767.98px) {
  body.account main .step-menu .step.active {
    order: 0;
  }
  body.account main .step-menu .step.active h3 {
    font-weight: 600;
  }
}
@media (min-width: 768px) {
  body.account main .step-menu .step.active {
    border-top: 1px solid var(--bs-border-color);
    border-left: 1px solid var(--bs-border-color);
    border-right: 1px solid var(--bs-border-color);
    border-bottom: none;
    border-radius: 3px 3px 0 0;
  }
}
@media (max-width: 767.98px) {
  body.account main .step-menu .step:not(.active) {
    order: 1;
    display: none;
    opacity: 0;
    transition: opacity 150ms ease-out;
  }
}
@media (min-width: 768px) {
  body.account main .step-menu .step:not(.active) {
    transition: border 200ms ease-out;
  }
  body.account main .step-menu .step:not(.active):focus {
    border-top-color: #ebebeb;
    border-left-color: #ebebeb;
    border-right-color: #ebebeb;
  }
  body.account main .step-menu .step:not(.active):active {
    border-top-color: #ebebeb;
    border-left-color: #ebebeb;
    border-right-color: #ebebeb;
  }
}
@media (min-width: 768px) and (hover: hover) {
  body.account main .step-menu .step:not(.active):hover {
    border-top-color: #ebebeb;
    border-left-color: #ebebeb;
    border-right-color: #ebebeb;
  }
}
body.account main .step-menu .step h2,
body.account main .step-menu .step h3 {
  text-transform: uppercase;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 400;
  margin: 10px 0;
  line-height: 2;
}
@media (min-width: 768px) {
  body.account main .step-menu .step h2,
  body.account main .step-menu .step h3 {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  body.account main .step-menu .step h2,
  body.account main .step-menu .step h3 {
    line-height: 1;
  }
}
body.account main .empty-list {
  margin-top: 50px;
  margin-bottom: 150px;
}
body.account main .empty-list h4 {
  font-size: 0.88rem;
  margin-bottom: 40px;
  text-transform: uppercase;
}
body.account main #accountTabContents #accountTabs.accordion {
  --bs-accordion-btn-focus-box-shadow: none;
  --bs-accordion-btn-icon: none;
  --bs-accordion-btn-active-icon: none;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion {
    margin-bottom: 40px;
  }
}
body.account main #accountTabContents #accountTabs.accordion .step.accordion-item {
  border-radius: 3px;
  background-color: white;
  overflow: hidden;
  border: none !important;
  color: #7D4B37;
}
body.account main #accountTabContents #accountTabs.accordion .step.accordion-item:not(:last-child) {
  margin-bottom: 12px;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  text-transform: uppercase;
  border: none;
  font-size: 0.88rem;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  color: #7D4B37;
  background-color: white;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .accordion-button {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .accordion-button {
    padding-top: 18px;
    padding-bottom: 18px;
  }
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .accordion-button {
    padding-left: 22px;
    padding-right: 22px;
  }
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button::after {
  display: none;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button:focus, body.account main #accountTabContents #accountTabs.accordion .accordion-button:focus-visible {
  box-shadow: none;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button:not(.collapsed) {
  color: #7D4B37;
  background-color: white;
  box-shadow: none;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button:not(.collapsed) .step-toggle-plus {
  display: none;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-button:not(.collapsed) .step-toggle-minus {
  display: inline-block;
}
body.account main #accountTabContents #accountTabs.accordion .step-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  font-weight: 600;
  text-transform: capitalize;
  line-height: 1;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .step-label {
    font-size: 1rem;
  }
}
body.account main #accountTabContents #accountTabs.accordion .step-label-icon {
  font-size: 1.06rem;
  color: #7D4B37;
  width: 1em;
  height: 1em;
  max-width: none;
  flex-shrink: 0;
  stroke-width: 1.8px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .step-label-icon {
    font-size: 1.13rem;
  }
}
body.account main #accountTabContents #accountTabs.accordion .step-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  color: #7D4B37;
  font-size: 1.13rem;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .step-toggle {
    font-size: 1.25rem;
  }
}
body.account main #accountTabContents #accountTabs.accordion .step-toggle i {
  color: #7D4B37;
}
body.account main #accountTabContents #accountTabs.accordion .step-toggle-minus {
  display: none;
}
body.account main #accountTabContents #accountTabs.accordion .accordion-body {
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .accordion-body {
    padding-top: 22px;
    padding-bottom: 22px;
  }
}
@media (min-width: 768px) {
  body.account main #accountTabContents #accountTabs.accordion .accordion-body {
    padding-left: 22px;
    padding-right: 22px;
  }
}
body.account main #accountTabContents #boxUser {
  margin-bottom: 10px;
  font-size: 0.88rem;
  position: relative;
}
body.account main #accountTabContents #boxUser h3 {
  text-transform: uppercase;
  color: #7D4B37;
  font-size: 0.88rem;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #boxUser h3 {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  body.account main #accountTabContents #boxUser h3 {
    margin-bottom: 60px;
  }
}
body.account main #accountTabContents #boxUser h4 {
  text-transform: uppercase;
  font-size: 0.88rem;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--bs-border-color);
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #boxUser h4 {
    font-size: 1rem;
  }
}
body.account main #accountTabContents #boxUser .list-order-return {
  max-width: 150px;
  margin-bottom: 10px;
  font-size: 0.75rem;
  padding: 3px 5px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents #boxUser .list-order-return {
    font-size: 0.75rem;
  }
}
body.account main #accountTabContents #boxUser .data-row {
  padding-top: 10px;
}
body.account main #accountTabContents #boxUser .data-row .middle-block {
  margin-top: 10px;
  margin-bottom: 5px;
}
body.account main #accountTabContents #boxUser .data-row .actions .btn {
  margin-top: 10px;
}
body.account main #accountTabContents #boxUser .data-row .actions .btn:not(:last-child) {
  margin-right: 10px;
}
body.account main #accountTabContents #boxUser .personal-data-row {
  margin-bottom: 40px;
}
body.account main #accountTabContents #boxUser .personal-data-row > div {
  margin-bottom: 30px;
}
body.account main #accountTabContents #boxUser .shipping-data-row > div {
  margin-bottom: 50px;
}
body.account main #accountTabContents .infoUser,
body.account main #accountTabContents .infoSped,
body.account main #accountTabContents .btn-sub {
  display: none;
}
body.account main #accountTabContents form.container-data h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  body.account main #accountTabContents form.container-data h3 {
    font-size: 1rem;
  }
}
body.account main #accountTabContents form.container-data .btn-sub {
  margin-top: 20px;
  margin-bottom: 50px;
}
body.account main #accountTabContents form.container-data .btn-sub .btn {
  margin-top: 10px;
  margin-right: 10px;
}
body.account main #accountTabContents form.container-data .form-select {
  margin: 0;
  background-color: transparent;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
}
body.account main #accountTabContents form.container-data .infoUser h3:first-child {
  margin-bottom: 60px;
}
body.account main #ordersTabContent h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  body.account main #ordersTabContent h3 {
    font-size: 1rem;
  }
}
body.account main #ordersTabContent .order-row {
  border-bottom: solid 1px #ced4da;
}
body.account main #ordersTabContent .order-row:not(.first) {
  margin-top: 50px;
}
body.account main #ordersTabContent .order-head-col {
  font-size: 0.88rem;
}
body.account main #ordersTabContent .order-head-col .code {
  font-weight: 600;
  text-transform: uppercase;
}
body.account main #ordersTabContent .order-head-col > .row {
  margin: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #fff;
}
body.account main #ordersTabContent .order-head-col > .row > div:last-child {
  margin-top: 10px;
}
@media (min-width: 768px) {
  body.account main #ordersTabContent .order-head-col > .row > div:last-child {
    margin-top: 0;
  }
}
body.account main #ordersTabContent .order-head-col .tracking-url {
  display: block;
  margin-top: 10px;
  text-decoration: underline;
}
body.account main #ordersTabContent .order-product-col {
  font-size: 0.88rem;
  margin-top: 20px;
  margin-bottom: 20px;
}
body.account main #ordersTabContent .order-product-col > div {
  margin-left: auto;
  margin-right: auto;
}
body.account main #ordersTabContent .order-product-col .product-image {
  margin-left: 10px;
}
@media (max-width: 575.98px) {
  body.account main #ordersTabContent .order-product-col .product-image {
    margin-right: 20px;
  }
}
body.account main #ordersTabContent .order-product-col .product-image img {
  width: 100px;
}
body.account main #ordersTabContent .order-product-col .product-details {
  padding-right: 10px;
}
body.account main #ordersTabContent .order-product-col .product-details > div:first-child {
  text-transform: uppercase;
  font-weight: 600;
}
body.account main #ordersTabContent .order-product-col .product-details > div:first-child span {
  text-transform: none;
  font-weight: 400;
  font-size: 0.75rem;
}
body.account main #ordersTabContent .order-product-col .product-details .return {
  font-size: 0.75rem;
  margin-top: 10px;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1;
}
body.account main #ordersTabContent .order-product-col .product-details .return-ok {
  color: #983030;
}
body.account main #ordersTabContent .order-product-col .product-details .return-action {
  font-size: 0.75rem;
}
body.account main #ordersTabContent .order-product-col .product-details .return-action:focus {
  text-decoration: underline;
}
body.account main #ordersTabContent .order-product-col .product-details .return-action:active {
  text-decoration: underline;
}
@media (hover: hover) {
  body.account main #ordersTabContent .order-product-col .product-details .return-action:hover {
    text-decoration: underline;
  }
}
body.account main #ordersTabContent .order-product-col .product-description {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 15px;
  width: 100%;
}
body.account main #ordersTabContent .order-product-col .product-description span {
  display: block;
}
body.account main #ordersTabContent .order-product-col .product-description span:first-child {
  font-weight: 600;
  text-transform: uppercase;
}
body.account main #returnTabContent h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  body.account main #returnTabContent h3 {
    font-size: 1rem;
  }
}
body.account main #returnTabContent .return-row {
  border-bottom: solid 1px #ced4da;
}
body.account main #returnTabContent .return-row:not(.first) {
  margin-top: 50px;
}
body.account main #returnTabContent .return-head-col {
  font-size: 0.88rem;
}
body.account main #returnTabContent .return-head-col .code {
  font-weight: 600;
  text-transform: uppercase;
}
body.account main #returnTabContent .return-head-col > .row {
  margin: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #fff;
}
body.account main #returnTabContent .return-head-col > .row > div:last-child {
  margin-top: 10px;
}
@media (min-width: 768px) {
  body.account main #returnTabContent .return-head-col > .row > div:last-child {
    margin-top: 0;
  }
}
body.account main #returnTabContent .return-product-col {
  font-size: 0.88rem;
  margin-top: 20px;
  margin-bottom: 20px;
}
body.account main #returnTabContent .return-product-col > div {
  margin-left: auto;
  margin-right: auto;
}
body.account main #returnTabContent .return-product-col .product-image {
  margin-left: 10px;
}
@media (max-width: 575.98px) {
  body.account main #returnTabContent .return-product-col .product-image {
    margin-right: 20px;
  }
}
body.account main #returnTabContent .return-product-col .product-image img {
  width: 100px;
}
body.account main #returnTabContent .return-product-col .product-details {
  padding-right: 10px;
}
body.account main #returnTabContent .return-product-col .product-details > div:first-child {
  text-transform: uppercase;
  font-weight: 600;
}
body.account main #returnTabContent .return-product-col .product-details > div:first-child span {
  text-transform: none;
  font-weight: 400;
  font-size: 0.75rem;
}
body.account main #returnTabContent .return-product-col > .product-details {
  padding-left: 10px;
  padding-right: 10px;
}
body.account main #returnTabContent .return-product-col .product-description {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 15px;
  width: 100%;
}
body.account main #returnTabContent .return-product-col .product-description span {
  display: block;
}
body.account main #returnTabContent .return-product-col .product-description span:first-child {
  font-weight: 600;
  text-transform: uppercase;
}
body.account main #wishListTabContent h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  body.account main #wishListTabContent h3 {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  body.account main #wishListTabContent h3 {
    margin-bottom: 0px;
  }
}
body.account main #wishListTabContent .wish-row {
  margin-bottom: 40px;
}
body.account main #wishListTabContent article.product {
  margin-bottom: 30px;
}
@media (min-width: 576px) {
  body.account main #wishListTabContent article.product {
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) {
  body.account main #wishListTabContent article.product {
    margin-bottom: 30px;
  }
}
@media (min-width: 992px) {
  body.account main #wishListTabContent article.product {
    margin-bottom: 30px;
  }
}
@media (min-width: 1400px) {
  body.account main #wishListTabContent article.product {
    margin-bottom: 40px;
  }
}
body.account main #wishListTabContent article.product .product-link {
  width: 100%;
}
body.account main #wishListTabContent article.product .product-image::after {
  background-color: transparent;
}
body.account main #wishListTabContent .product-info {
  margin-bottom: 20px;
}
body.account main #wishListTabContent .actions {
  margin-top: auto;
}
@media (min-width: 576px) {
  body.account main #wishListTabContent .actions .add-to-cart {
    margin-left: 36px;
  }
}
body.account main #wishListTabContent .actions .remove {
  padding-left: 20px;
  position: relative;
  top: -3px;
}
body.account main #wishListTabContent .actions .remove img {
  width: 16px;
  height: 16px;
}
body.account main #newsletterTabContent h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  body.account main #newsletterTabContent h3 {
    font-size: 1rem;
  }
}
body.account main #newsletterTabContent .remove-text {
  display: block;
  margin-bottom: 60px;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  body.account main #newsletterTabContent .remove-text {
    font-size: 0.88rem;
  }
}
body.account main #newsletterTabContent .remove {
  margin-bottom: 60px;
}

body.account.order-details main {
  /********************************************************
  * Single order details
  ********************************************************/
}
body.account.order-details main .step-menu {
  position: relative;
}
@media (min-width: 768px) {
  body.account.order-details main .step-menu .step {
    max-width: 200px;
    background-color: white;
  }
  body.account.order-details main .step-menu .step:last-child::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    width: 100%;
    bottom: 0;
    height: 1px;
    background-color: var(--bs-border-color);
    z-index: -1;
  }
}
body.account.order-details main #orderTabContent h3 {
  text-transform: uppercase;
  font-size: 0.88rem;
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  body.account.order-details main #orderTabContent h3 {
    font-size: 1rem;
  }
}
body.account.order-details main #orderTabContent .order-row:not(.first) {
  margin-top: 50px;
}
body.account.order-details main #orderTabContent .order-head-col {
  font-size: 0.88rem;
}
body.account.order-details main #orderTabContent .order-head-col .code {
  font-weight: 600;
  text-transform: uppercase;
}
body.account.order-details main #orderTabContent .order-head-col > .row {
  margin: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #fff;
}
body.account.order-details main #orderTabContent .order-head-col > .row > div:last-child {
  margin-top: 10px;
}
@media (min-width: 768px) {
  body.account.order-details main #orderTabContent .order-head-col > .row > div:last-child {
    margin-top: 0;
  }
}
body.account.order-details main #orderTabContent .order-head-col .tracking-url {
  display: block;
  margin-top: 10px;
  text-decoration: underline;
}
body.account.order-details main #orderTabContent .order-product-col {
  font-size: 0.88rem;
  margin-top: 20px;
  margin-bottom: 20px;
}
body.account.order-details main #orderTabContent .order-product-col > div {
  max-width: 340px;
  margin-left: auto;
  margin-right: auto;
}
body.account.order-details main #orderTabContent .order-product-col .product-image {
  margin-left: 10px;
}
@media (max-width: 575.98px) {
  body.account.order-details main #orderTabContent .order-product-col .product-image {
    margin-right: 20px;
  }
}
body.account.order-details main #orderTabContent .order-product-col .product-image img {
  width: 100px;
}
body.account.order-details main #orderTabContent .order-product-col .product-details {
  padding-right: 10px;
}
body.account.order-details main #orderTabContent .order-product-col .product-details > div:first-child {
  text-transform: uppercase;
  font-weight: 600;
}
body.account.order-details main #orderTabContent .order-product-col .product-details > div:first-child span {
  text-transform: none;
  font-weight: 400;
  font-size: 0.75rem;
}
body.account.order-details main #orderTabContent .order-product-col .product-details .return {
  font-size: 0.75rem;
  margin-top: 10px;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1;
}
body.account.order-details main #orderTabContent .order-product-col .product-details .return-action {
  font-size: 0.75rem;
}
body.account.order-details main #orderTabContent .order-product-col .product-details .return-action:focus {
  text-decoration: underline;
}
body.account.order-details main #orderTabContent .order-product-col .product-details .return-action:active {
  text-decoration: underline;
}
@media (hover: hover) {
  body.account.order-details main #orderTabContent .order-product-col .product-details .return-action:hover {
    text-decoration: underline;
  }
}
body.account.order-details main #orderTabContent .order-product-col .product-description {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 15px;
  width: 100%;
}
body.account.order-details main #orderTabContent .order-product-col .product-description span {
  display: block;
}
body.account.order-details main #orderTabContent .order-product-col .product-description span:first-child {
  font-weight: 600;
  text-transform: uppercase;
}

.return-states-modal {
  height: auto !important;
}

.new-return-request-modal {
  height: auto !important;
}
.new-return-request-modal .swal2-title {
  font-size: 1.13rem;
}
@media (min-width: 576px) {
  .new-return-request-modal .swal2-title {
    font-size: 1.25rem;
  }
}
.new-return-request-modal p {
  font-size: 1rem;
}
.new-return-request-modal ul {
  font-size: 1rem;
}
.new-return-request-modal ul li {
  list-style: none;
  text-align: left;
  color: #7D4B37;
}
.new-return-request-modal table {
  width: 100%;
  font-size: 1.1rem;
  background-color: #7D4B37;
}
.new-return-request-modal table > :not(caption) > * > * {
  box-shadow: none !important;
}
.new-return-request-modal table th, .new-return-request-modal table td {
  padding: 10px;
  border: solid 1px #b9a091;
  font-size: 1rem;
  color: #7D4B37;
}
.new-return-request-modal table th {
  font-size: 1.1rem;
}
.new-return-request-modal table .form-control,
.new-return-request-modal table .form-select,
.new-return-request-modal table input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),
.new-return-request-modal table textarea,
.new-return-request-modal table select {
  background-color: #FFF;
}

.res-message {
  font-weight: 600;
  line-height: 25px;
  padding: 0 20px;
  color: #d9534f;
  text-align: center;
  text-transform: uppercase;
}
.res-message.failed {
  margin-top: 35px;
}
.res-message.failed .message-if-fail {
  display: block;
}
.res-message.failed .message-if-threshold {
  display: none;
}
.res-message.threshold .message-if-fail {
  display: none;
}
.res-message.threshold .message-if-threshold {
  display: block;
}

.return-ko button,
.return-ko a, .return-ok button,
.return-ok a {
  vertical-align: top;
  padding: 10px 32px;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  font-weight: 700;
  margin: 10px;
  margin-bottom: 15px;
  line-height: 100%;
  /*
  &.btn-brown {
    &:hover {
      color: $brand-brown !important;
    }
  }
  */
}

/*
.return-ko {
  display: flex;
  justify-content: space-around;
}
*/
/********************************************************
* User step 2
********************************************************/
body.cart.step-2 main .common-heading .content h3 {
  text-transform: uppercase;
}
body.cart.step-2 main .box-col {
  display: flex;
}
body.cart.step-2 main .box-col .inner-box {
  width: 100%;
}
body.cart.step-2 main .box-col .inner-box .form-control {
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  margin: 10px 0;
}
@media (min-width: 768px) {
  body.cart.step-2 main .box-col .inner-box .form-control {
    margin: 10px 0;
  }
}
body.cart.step-2 main .box-col:not(:last-child) {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  body.cart.step-2 main .box-col:not(:last-child) {
    margin-bottom: 25px;
  }
}
@media (min-width: 768px) {
  body.cart.step-2 main .box-col:not(:last-child) {
    margin-bottom: 0;
  }
}
body.cart.step-2 main .box-col h4 {
  font-size: 0.88rem;
  margin-bottom: 20px;
  color: #7D4B37;
  font-weight: 600;
  text-transform: uppercase;
  text-align: center;
  width: 100%;
}
body.cart.step-2 main .box-col .inner {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 30px;
  padding-bottom: 30px;
  width: 100%;
  max-width: 100%;
  height: 100%;
}
@media (min-width: 576px) {
  body.cart.step-2 main .box-col .inner {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  body.cart.step-2 main .box-col .inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 992px) {
  body.cart.step-2 main .box-col .inner {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 1400px) {
  body.cart.step-2 main .box-col .inner {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 576px) {
  body.cart.step-2 main .box-col .inner {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
@media (min-width: 768px) {
  body.cart.step-2 main .box-col .inner {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
@media (min-width: 992px) {
  body.cart.step-2 main .box-col .inner {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
@media (min-width: 1400px) {
  body.cart.step-2 main .box-col .inner {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
body.cart.step-2 main .box-col .inner .sign-in-details {
  flex: 1;
}
body.cart.step-2 main .box-col .inner ul {
  list-style-type: none;
  padding: 0;
}
body.cart.step-2 main .box-col .inner ul li::before {
  content: "-";
  margin-right: 5px;
}
body.cart.step-2 main .box-col .inner a,
body.cart.step-2 main .box-col .inner .btn-primary {
  width: 100%;
}
@media all and (-ms-high-contrast: none) {
  body.cart.step-2 main .box-col .inner {
    /* stylelint-disable-next-line selector-list-comma-newline-after, declaration-block-single-line-max-declarations */
    /* IE11 fix */
  }
  body.cart.step-2 main .box-col .inner *::-ms-backdrop, body.cart.step-2 main .box-col .inner p {
    max-width: 100%;
  }
}
@media (max-width: 575.98px) {
  body.cart.step-2 main .box-col > form {
    width: 100%;
  }
}
body.cart.step-2 main .box-col.box-login .inner-login {
  flex: 1;
}
@media (min-width: 768px) {
  body.cart.step-2 main .box-col.box-login .cta-group {
    position: relative;
    margin-bottom: 20px;
  }
}
body.cart.step-2 main .box-col.box-login .lost-password {
  font-size: 0.75rem;
  color: #7D4B37;
  width: auto;
}
body.cart.step-2 main .box-col.box-login .lost-password-label {
  font-size: 0.75rem;
}
/********************************************************
* Forgot password
********************************************************/
body.user.user-forgot-password main h3 {
  text-transform: uppercase;
  font-size: 1rem;
  margin-bottom: 20px;
}
body.user.user-forgot-password main p {
  margin-bottom: 30px;
}
body.user.user-forgot-password main form button[type=submit] {
  margin-top: 20px;
}

/********************************************************
* User sign-in
********************************************************/
body.user.user-sign-in main .accountForm,
body.cart.step-2 main .accountForm {
  padding: 0 10px;
}
@media (min-width: 768px) {
  body.user.user-sign-in main .accountForm,
  body.cart.step-2 main .accountForm {
    padding: 0;
  }
}
body.user.user-sign-in main .accountForm select,
body.cart.step-2 main .accountForm select {
  margin: 0;
  background-color: transparent;
  border: 1px solid #DDCFC7;
  color: #7D4B37;
}
body.user.user-sign-in main form h4,
body.cart.step-2 main form h4 {
  margin-bottom: 20px;
  text-transform: uppercase;
  font-weight: 600;
  color: #7D4B37;
}
body.user.user-sign-in main form button[type=submit],
body.cart.step-2 main form button[type=submit] {
  margin-top: 30px;
}
body.user.user-sign-in main form .form-check-privacy label,
body.cart.step-2 main form .form-check-privacy label {
  font-size: 0.75rem;
}

/********************************************************
* User login
********************************************************/
body.user.user-login main .common-heading .content h3 {
  text-transform: uppercase;
  font-weight: 600;
}
body.user.user-login main .box-returns .inner-box,
body.user.user-login main .box-sign-in .inner-box,
body.user.user-login main .box-login .inner-box {
  display: flex;
  height: 100%;
  padding: 30px;
}
body.user.user-login main .box-returns .inner-box h4,
body.user.user-login main .box-sign-in .inner-box h4,
body.user.user-login main .box-login .inner-box h4 {
  font-size: 1rem;
  margin-bottom: 20px;
  color: #7D4B37;
  font-weight: 600;
  text-transform: uppercase;
  text-align: center;
  width: 100%;
}
@media (min-width: 768px) {
  body.user.user-login main .box-returns .inner-box h4,
  body.user.user-login main .box-sign-in .inner-box h4,
  body.user.user-login main .box-login .inner-box h4 {
    font-size: 1.13rem;
  }
}
body.user.user-login main .box-returns .inner-box .form-control,
body.user.user-login main .box-sign-in .inner-box .form-control,
body.user.user-login main .box-login .inner-box .form-control {
  border: 1px solid #DDCFC7;
  background-color: transparent;
  color: #7D4B37;
  margin: 10px 0;
}
@media (min-width: 768px) {
  body.user.user-login main .box-returns .inner-box .form-control,
  body.user.user-login main .box-sign-in .inner-box .form-control,
  body.user.user-login main .box-login .inner-box .form-control {
    margin: 10px 0;
  }
}
body.user.user-login main .box-returns .inner-box .btn-primary,
body.user.user-login main .box-sign-in .inner-box .btn-primary,
body.user.user-login main .box-login .inner-box .btn-primary {
  width: 100%;
}
body.user.user-login main .box-returns .lost-password,
body.user.user-login main .box-sign-in .lost-password,
body.user.user-login main .box-login .lost-password {
  color: #7D4B37;
  text-decoration: none;
}
body.user.user-login main .box-login label {
  font-size: 0.75rem;
}
body.user.user-login main .accessTable {
  padding-top: 20px;
}
body.user.user-login main .accountTable {
  padding-top: 20px;
}
body.user.user-login main .accountTable h3 {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 30px;
}
body.user.user-login main .main-margin {
  margin-bottom: 50px;
}
@media (min-width: 576px) {
  body.user.user-login main .main-margin {
    margin-bottom: 78.13px;
  }
}
@media (min-width: 768px) {
  body.user.user-login main .main-margin {
    margin-bottom: 106.25px;
  }
}
@media (min-width: 992px) {
  body.user.user-login main .main-margin {
    margin-bottom: 143.75px;
  }
}
@media (min-width: 1400px) {
  body.user.user-login main .main-margin {
    margin-bottom: 171.88px;
  }
}
@media (min-width: 1600px) {
  body.user.user-login main .main-margin {
    margin-bottom: 200px;
  }
}

body.static-page.about-editorial main.about-page {
  padding-top: 110px;
  color: #7D4B37;
  background-color: #F5F0EB;
}
@media (min-width: 992px) {
  body.static-page.about-editorial main.about-page {
    padding-top: 110px;
  }
}
body.static-page.about-editorial .about-full,
body.static-page.about-editorial .about-split__media {
  margin: 0;
}
body.static-page.about-editorial .about-full img,
body.static-page.about-editorial .about-split__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}
body.static-page.about-editorial .about-full {
  position: relative;
  min-height: 320px;
}
body.static-page.about-editorial .about-full > img {
  height: clamp(300px, 88vw, 520px);
}
body.static-page.about-editorial .about-full--hero > img {
  height: clamp(420px, 130vw, 720px);
  filter: saturate(0.2);
}
body.static-page.about-editorial .about-full--nature > img {
  height: clamp(300px, 90vw, 560px);
}
body.static-page.about-editorial .about-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  padding: 24px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 36%, rgba(0, 0, 0, 0.42) 100%);
}
body.static-page.about-editorial .about-overlay h1,
body.static-page.about-editorial .about-overlay h2 {
  margin: 0;
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1.04;
  font-weight: 300;
  font-size: 1.75rem;
}
@media (min-width: 768px) {
  body.static-page.about-editorial .about-overlay h1,
  body.static-page.about-editorial .about-overlay h2 {
    font-size: 2.75rem;
  }
}
body.static-page.about-editorial .about-copy-block {
  padding: 46px 24px;
  text-align: center;
  background-color: #F5F0EB;
}
body.static-page.about-editorial .about-copy-block h2 {
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  line-height: 1.08;
  font-weight: 300;
  font-size: 1.38rem;
}
@media (min-width: 768px) {
  body.static-page.about-editorial .about-copy-block h2 {
    font-size: 2rem;
  }
}
body.static-page.about-editorial .about-copy-block p {
  margin: 0;
  line-height: 1.7;
  font-size: 0.88rem;
}
@media (min-width: 768px) {
  body.static-page.about-editorial .about-copy-block p {
    font-size: 1rem;
  }
}
body.static-page.about-editorial .about-copy-block--alt {
  background-color: #F5F0EB;
}
body.static-page.about-editorial .about-copy-block--continuation {
  padding-top: 0;
}
body.static-page.about-editorial .about-copy-block--compact {
  padding-top: 38px;
  padding-bottom: 38px;
}
body.static-page.about-editorial .about-kicker {
  margin: 0 0 8px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 11px;
  font-weight: 600;
}
body.static-page.about-editorial .about-full--framed {
  padding: 0;
  min-height: 360px;
  overflow: hidden;
}
body.static-page.about-editorial .about-framed-media {
  position: relative;
}
body.static-page.about-editorial .about-framed-media .about-media-base {
  height: clamp(320px, 88vw, 560px);
}
body.static-page.about-editorial .about-framed-media .about-media-inset {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 56%;
  max-width: 360px;
  height: auto;
  transform: translate(-50%, -50%);
  border: 8px solid rgba(255, 255, 255, 0.8);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.26);
}
body.static-page.about-editorial .about-video-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 180px;
}
body.static-page.about-editorial .about-video-placeholder span {
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 1.75rem;
  font-family: "english-grotesque", "Montserrat", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
}
@media (min-width: 768px) {
  body.static-page.about-editorial .about-video-placeholder span {
    font-size: 2.13rem;
  }
}
body.static-page.about-editorial .about-video-placeholder--dark {
  background-color: #4b4140;
}
body.static-page.about-editorial .about-video-placeholder--light {
  background-color: #7a7674;
}
body.static-page.about-editorial .about-split {
  display: block;
}
body.static-page.about-editorial .about-split__media {
  min-height: 300px;
}
body.static-page.about-editorial .about-split__media img {
  height: clamp(290px, 82vw, 500px);
}
body.static-page.about-editorial .about-end-band {
  height: 120px;
  background-color: #8f4f36;
}
@media (min-width: 992px) {
  body.static-page.about-editorial .about-copy-block {
    max-width: 880px;
    margin: 0 auto;
    padding: 64px 56px;
  }
  body.static-page.about-editorial .about-copy-block--compact {
    max-width: none;
    margin: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 52px;
  }
  body.static-page.about-editorial .about-full > img {
    height: min(64vh, 760px);
  }
  body.static-page.about-editorial .about-full--hero > img {
    height: min(60vh, 500px);
  }
  body.static-page.about-editorial .about-full--nature > img {
    height: min(70vh, 760px);
  }
  body.static-page.about-editorial .about-overlay {
    padding-bottom: 56px;
  }
  body.static-page.about-editorial .about-video-placeholder {
    min-height: 260px;
  }
  body.static-page.about-editorial .about-framed-media .about-media-base {
    height: min(70vh, 760px);
  }
  body.static-page.about-editorial .about-framed-media .about-media-inset {
    max-width: 420px;
  }
  body.static-page.about-editorial .about-split {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: stretch;
  }
  body.static-page.about-editorial .about-split--reverse {
    grid-template-columns: 0.9fr 1.1fr;
  }
  body.static-page.about-editorial .about-split--reverse .about-split__media {
    order: 2;
  }
  body.static-page.about-editorial .about-split--reverse .about-copy-block {
    order: 1;
  }
  body.static-page.about-editorial .about-split__media {
    min-height: 560px;
  }
  body.static-page.about-editorial .about-split__media img {
    height: 100%;
  }
  body.static-page.about-editorial .about-end-band {
    height: 160px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLGdCQUFnQjtBQ0FoQjtBQUlBOzs7OzhEQUFBO0FDSEU7Ozs7RUFBQTtBQ0RGOztFQVNJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7RUFPQTtFQzJPSSx5QkFMSTtFRHBPUjtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FIU0Y7O0FLekhJO0VGc0hBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdFO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QUhTSjs7QU1qTEE7OztFQUdFO0FOb0xGOztBTXJLSTtFQU5KO0lBT007RU55S0o7QUFDRjs7QU01SkE7RUFDRTtFQUNBO0VGNk9JLG1DQUxJO0VFdE9SO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOK0pGOztBTXRKQTtFQUNFO0VBQ0EsY0NtbkI0QjtFRGxuQjVCO0VBQ0E7RUFDQSxhQ3luQjRCO0FQaGU5Qjs7QU0vSUE7RUFDRTtFQUNBLG1CQ3dqQjRCO0VEdmpCNUIseUhFSnFCO0VGS3JCLG1CRUdvQjtFRkZwQixnQkVHcUI7RUZGckIsY0VHcUI7RUZGckI7QU5rSkY7O0FNL0lBO0VGdU1RO0FKcERSO0FJeEdJO0VFM0NKO0lGOE1RO0VKdkROO0FBQ0Y7O0FNbkpBO0VGa01RO0FKM0NSO0FJakhJO0VFdENKO0lGeU1RO0VKOUNOO0FBQ0Y7O0FNdkpBO0VGNkxRO0FKbENSO0FJMUhJO0VFakNKO0lGb01RO0VKckNOO0FBQ0Y7O0FNM0pBO0VGd0xRO0FKekJSO0FJbklJO0VFNUJKO0lGK0xRO0VKNUJOO0FBQ0Y7O0FNL0pBO0VGK0tNLGtCQUxJO0FKUFY7O0FNOUpBO0VGMEtNLGVBTEk7QUpIVjs7QU12SkE7RUFDRTtFQUNBLG1CQ3dWMEI7QVA5TDVCOztBTWhKQTtFQUNFO0VBQ0E7RUFDQTtBTm1KRjs7QU03SUE7RUFDRTtFQUNBO0VBQ0E7QU5nSkY7O0FNMUlBOztFQUVFO0FONklGOztBTTFJQTs7O0VBR0U7RUFDQTtBTjZJRjs7QU0xSUE7Ozs7RUFJRTtBTjZJRjs7QU0xSUE7RUFDRSxnQkUzRmlCO0FSd09uQjs7QU14SUE7RUFDRTtFQUNBO0FOMklGOztBTXJJQTtFQUNFO0FOd0lGOztBTWhJQTs7RUFFRSxtQkNzYTRCO0FQblM5Qjs7QU0zSEE7RUY2RU0sa0JBTEk7QUp1RFY7O0FNeEhBO0VBQ0UsaUJDcWY0QjtFRHBmNUI7RUFDQTtBTjJIRjs7QU1sSEE7O0VBRUU7RUZ3REksaUJBTEk7RUVqRFI7RUFDQTtBTnFIRjs7QU1sSEE7RUFBTTtBTnNITjs7QU1ySEE7RUFBTTtBTnlITjs7QU1wSEE7RUFDRTtFQUNBLDBCQ2dOd0M7QVB6RjFDO0FNckhFO0VBQ0U7QU51SEo7O0FNNUdFO0VBRUU7RUFDQTtBTjhHSjs7QU12R0E7Ozs7RUFJRSxxQ0NnVjRCO0VIbFV4QixjQUxJO0FKa0dWOztBTW5HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VGRUksa0JBTEk7QUowR1Y7QU1sR0U7RUZISSxrQkFMSTtFRVVOO0VBQ0E7QU5vR0o7O0FNaEdBO0VGVk0sa0JBTEk7RUVpQlI7RUFDQTtBTm1HRjtBTWhHRTtFQUNFO0FOa0dKOztBTTlGQTtFQUNFO0VGdEJJLGtCQUxJO0VFNkJSLHdCQ3k1Q2tDO0VEeDVDbEMsc0NDeTVDa0M7RUU5ckRoQztBVHVZSjtBTS9GRTtFQUNFO0VGN0JFLGNBTEk7QUpvSVY7O0FNdkZBO0VBQ0U7QU4wRkY7O0FNcEZBOztFQUVFO0FOdUZGOztBTS9FQTtFQUNFO0VBQ0E7QU5rRkY7O0FNL0VBO0VBQ0UsbUJDNFg0QjtFRDNYNUIsc0JDMlg0QjtFRDFYNUIsZ0NDNFo0QjtFRDNaNUI7QU5rRkY7O0FNM0VBO0VBRUU7RUFDQTtBTjZFRjs7QU0xRUE7Ozs7OztFQU1FO0VBQ0E7RUFDQTtBTjZFRjs7QU1yRUE7RUFDRTtBTndFRjs7QU1sRUE7RUFFRTtBTm9FRjs7QU01REE7RUFDRTtBTitERjs7QU0xREE7Ozs7O0VBS0U7RUFDQTtFRjVISSxrQkFMSTtFRW1JUjtBTjZERjs7QU16REE7O0VBRUU7QU40REY7O0FNdkRBO0VBQ0U7QU4wREY7O0FNdkRBO0VBR0U7QU53REY7QU1yREU7RUFDRTtBTnVESjs7QU1oREE7RUFDRTtBTm1ERjs7QU0zQ0E7Ozs7RUFJRTtBTjhDRjtBTTNDSTs7OztFQUNFO0FOZ0ROOztBTXpDQTtFQUNFO0VBQ0E7QU40Q0Y7O0FNdkNBO0VBQ0U7QU4wQ0Y7O0FNaENBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QU5tQ0Y7O0FNM0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJDbU40QjtFSHBhdEI7RUVvTk47QU42QkY7QUk3WUk7RUV5V0o7SUZ0TVE7RUo4T047QUFDRjtBTWhDRTtFQUNFO0FOa0NKOztBTTNCQTs7Ozs7OztFQU9FO0FOOEJGOztBTTNCQTtFQUNFO0FOOEJGOztBTXJCQTtFQUNFO0VBQ0E7QU53QkY7O0FNaEJBOzs7Ozs7O0NBQUE7QUFXQTtFQUNFO0FOZ0JGOztBTVhBO0VBQ0U7QU5jRjs7QU1QQTtFQUNFO0VBQ0E7QU5VRjs7QU1MQTtFQUNFO0FOUUY7O0FNSEE7RUFDRTtBTk1GOztBTUNBO0VBQ0U7RUFDQTtBTkVGOztBTU1BO0VBQ0U7QU5IRjs7QU1XQTtFQUNFO0FOUkY7O0FVdmhCUTtFQU9JO0FWb2hCWjs7QVUzaEJRO0VBT0k7QVZ3aEJaOztBVS9oQlE7RUFPSTtBVjRoQlo7O0FVbmlCUTtFQU9JO0FWZ2lCWjs7QVV2aUJRO0VBT0k7QVZvaUJaOztBRTVtQkU7Ozs7RUFBQTtBU0tBOzs7Ozs7O0VDSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVp5bkJGOztBYW5rQkk7RUY1Q0U7SUFDRSxnQkprZWU7RVBpSnJCO0FBQ0Y7QWF6a0JJO0VGNUNFO0lBQ0UsZ0JKa2VlO0VQc0pyQjtBQUNGO0FhOWtCSTtFRjVDRTtJQUNFLGdCSmtlZTtFUDJKckI7QUFDRjtBYW5sQkk7RUY1Q0U7SUFDRSxpQkprZWU7RVBnS3JCO0FBQ0Y7QWF4bEJJO0VGNUNFO0lBQ0UsaUJKa2VlO0VQcUtyQjtBQUNGO0FjeHBCQTtFQUVJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBZDhwQko7O0FjenBCRTtFQ05BO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0Fma3FCRjtBY2hxQkk7RUNHRjtFQUlBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjZwQkY7O0FlOW1CTTtFQUNFO0FmaW5CUjs7QWU5bUJNO0VBcENKO0VBQ0E7QWZzcEJGOztBZXhvQkU7RUFDRTtFQUNBO0FmMm9CSjs7QWU3b0JFO0VBQ0U7RUFDQTtBZmdwQko7O0FlbHBCRTtFQUNFO0VBQ0E7QWZxcEJKOztBZXZwQkU7RUFDRTtFQUNBO0FmMHBCSjs7QWU1cEJFO0VBQ0U7RUFDQTtBZitwQko7O0FlanFCRTtFQUNFO0VBQ0E7QWZvcUJKOztBZXJvQk07RUFoREo7RUFDQTtBZnlyQkY7O0FlcG9CVTtFQWhFTjtFQUNBO0Fmd3NCSjs7QWV6b0JVO0VBaEVOO0VBQ0E7QWY2c0JKOztBZTlvQlU7RUFoRU47RUFDQTtBZmt0Qko7O0FlbnBCVTtFQWhFTjtFQUNBO0FmdXRCSjs7QWV4cEJVO0VBaEVOO0VBQ0E7QWY0dEJKOztBZTdwQlU7RUFoRU47RUFDQTtBZml1Qko7O0FlbHFCVTtFQWhFTjtFQUNBO0Fmc3VCSjs7QWV2cUJVO0VBaEVOO0VBQ0E7QWYydUJKOztBZTVxQlU7RUFoRU47RUFDQTtBZmd2Qko7O0FlanJCVTtFQWhFTjtFQUNBO0FmcXZCSjs7QWV0ckJVO0VBaEVOO0VBQ0E7QWYwdkJKOztBZTNyQlU7RUFoRU47RUFDQTtBZit2Qko7O0FleHJCWTtFQXhEVjtBZm92QkY7O0FlNXJCWTtFQXhEVjtBZnd2QkY7O0FlaHNCWTtFQXhEVjtBZjR2QkY7O0FlcHNCWTtFQXhEVjtBZmd3QkY7O0FleHNCWTtFQXhEVjtBZm93QkY7O0FlNXNCWTtFQXhEVjtBZnd3QkY7O0FlaHRCWTtFQXhEVjtBZjR3QkY7O0FlcHRCWTtFQXhEVjtBZmd4QkY7O0FleHRCWTtFQXhEVjtBZm94QkY7O0FlNXRCWTtFQXhEVjtBZnd4QkY7O0FlaHVCWTtFQXhEVjtBZjR4QkY7O0FlenRCUTs7RUFFRTtBZjR0QlY7O0FlenRCUTs7RUFFRTtBZjR0QlY7O0FlbnVCUTs7RUFFRTtBZnN1QlY7O0FlbnVCUTs7RUFFRTtBZnN1QlY7O0FlN3VCUTs7RUFFRTtBZmd2QlY7O0FlN3VCUTs7RUFFRTtBZmd2QlY7O0FldnZCUTs7RUFFRTtBZjB2QlY7O0FldnZCUTs7RUFFRTtBZjB2QlY7O0FlandCUTs7RUFFRTtBZm93QlY7O0FlandCUTs7RUFFRTtBZm93QlY7O0FlM3dCUTs7RUFFRTtBZjh3QlY7O0FlM3dCUTs7RUFFRTtBZjh3QlY7O0FheDBCSTtFRVVFO0lBQ0U7RWZrMEJOO0VlL3pCSTtJQXBDSjtJQUNBO0VmczJCQTtFZXgxQkE7SUFDRTtJQUNBO0VmMDFCRjtFZTUxQkE7SUFDRTtJQUNBO0VmODFCRjtFZWgyQkE7SUFDRTtJQUNBO0VmazJCRjtFZXAyQkE7SUFDRTtJQUNBO0VmczJCRjtFZXgyQkE7SUFDRTtJQUNBO0VmMDJCRjtFZTUyQkE7SUFDRTtJQUNBO0VmODJCRjtFZS8wQkk7SUFoREo7SUFDQTtFZms0QkE7RWU3MEJRO0lBaEVOO0lBQ0E7RWZnNUJGO0VlajFCUTtJQWhFTjtJQUNBO0VmbzVCRjtFZXIxQlE7SUFoRU47SUFDQTtFZnc1QkY7RWV6MUJRO0lBaEVOO0lBQ0E7RWY0NUJGO0VlNzFCUTtJQWhFTjtJQUNBO0VmZzZCRjtFZWoyQlE7SUFoRU47SUFDQTtFZm82QkY7RWVyMkJRO0lBaEVOO0lBQ0E7RWZ3NkJGO0VlejJCUTtJQWhFTjtJQUNBO0VmNDZCRjtFZTcyQlE7SUFoRU47SUFDQTtFZmc3QkY7RWVqM0JRO0lBaEVOO0lBQ0E7RWZvN0JGO0VlcjNCUTtJQWhFTjtJQUNBO0VmdzdCRjtFZXozQlE7SUFoRU47SUFDQTtFZjQ3QkY7RWVyM0JVO0lBeERWO0VmZzdCQTtFZXgzQlU7SUF4RFY7RWZtN0JBO0VlMzNCVTtJQXhEVjtFZnM3QkE7RWU5M0JVO0lBeERWO0VmeTdCQTtFZWo0QlU7SUF4RFY7RWY0N0JBO0VlcDRCVTtJQXhEVjtFZis3QkE7RWV2NEJVO0lBeERWO0VmazhCQTtFZTE0QlU7SUF4RFY7RWZxOEJBO0VlNzRCVTtJQXhEVjtFZnc4QkE7RWVoNUJVO0lBeERWO0VmMjhCQTtFZW41QlU7SUF4RFY7RWY4OEJBO0VldDVCVTtJQXhEVjtFZmk5QkE7RWU5NEJNOztJQUVFO0VmZzVCUjtFZTc0Qk07O0lBRUU7RWYrNEJSO0VldDVCTTs7SUFFRTtFZnc1QlI7RWVyNUJNOztJQUVFO0VmdTVCUjtFZTk1Qk07O0lBRUU7RWZnNkJSO0VlNzVCTTs7SUFFRTtFZis1QlI7RWV0NkJNOztJQUVFO0VmdzZCUjtFZXI2Qk07O0lBRUU7RWZ1NkJSO0VlOTZCTTs7SUFFRTtFZmc3QlI7RWU3NkJNOztJQUVFO0VmKzZCUjtFZXQ3Qk07O0lBRUU7RWZ3N0JSO0VlcjdCTTs7SUFFRTtFZnU3QlI7QUFDRjtBYWwvQkk7RUVVRTtJQUNFO0VmMitCTjtFZXgrQkk7SUFwQ0o7SUFDQTtFZitnQ0E7RWVqZ0NBO0lBQ0U7SUFDQTtFZm1nQ0Y7RWVyZ0NBO0lBQ0U7SUFDQTtFZnVnQ0Y7RWV6Z0NBO0lBQ0U7SUFDQTtFZjJnQ0Y7RWU3Z0NBO0lBQ0U7SUFDQTtFZitnQ0Y7RWVqaENBO0lBQ0U7SUFDQTtFZm1oQ0Y7RWVyaENBO0lBQ0U7SUFDQTtFZnVoQ0Y7RWV4L0JJO0lBaERKO0lBQ0E7RWYyaUNBO0VldC9CUTtJQWhFTjtJQUNBO0VmeWpDRjtFZTEvQlE7SUFoRU47SUFDQTtFZjZqQ0Y7RWU5L0JRO0lBaEVOO0lBQ0E7RWZpa0NGO0VlbGdDUTtJQWhFTjtJQUNBO0VmcWtDRjtFZXRnQ1E7SUFoRU47SUFDQTtFZnlrQ0Y7RWUxZ0NRO0lBaEVOO0lBQ0E7RWY2a0NGO0VlOWdDUTtJQWhFTjtJQUNBO0VmaWxDRjtFZWxoQ1E7SUFoRU47SUFDQTtFZnFsQ0Y7RWV0aENRO0lBaEVOO0lBQ0E7RWZ5bENGO0VlMWhDUTtJQWhFTjtJQUNBO0VmNmxDRjtFZTloQ1E7SUFoRU47SUFDQTtFZmltQ0Y7RWVsaUNRO0lBaEVOO0lBQ0E7RWZxbUNGO0VlOWhDVTtJQXhEVjtFZnlsQ0E7RWVqaUNVO0lBeERWO0VmNGxDQTtFZXBpQ1U7SUF4RFY7RWYrbENBO0VldmlDVTtJQXhEVjtFZmttQ0E7RWUxaUNVO0lBeERWO0VmcW1DQTtFZTdpQ1U7SUF4RFY7RWZ3bUNBO0VlaGpDVTtJQXhEVjtFZjJtQ0E7RWVuakNVO0lBeERWO0VmOG1DQTtFZXRqQ1U7SUF4RFY7RWZpbkNBO0VlempDVTtJQXhEVjtFZm9uQ0E7RWU1akNVO0lBeERWO0VmdW5DQTtFZS9qQ1U7SUF4RFY7RWYwbkNBO0VldmpDTTs7SUFFRTtFZnlqQ1I7RWV0akNNOztJQUVFO0Vmd2pDUjtFZS9qQ007O0lBRUU7RWZpa0NSO0VlOWpDTTs7SUFFRTtFZmdrQ1I7RWV2a0NNOztJQUVFO0VmeWtDUjtFZXRrQ007O0lBRUU7RWZ3a0NSO0VlL2tDTTs7SUFFRTtFZmlsQ1I7RWU5a0NNOztJQUVFO0VmZ2xDUjtFZXZsQ007O0lBRUU7RWZ5bENSO0VldGxDTTs7SUFFRTtFZndsQ1I7RWUvbENNOztJQUVFO0VmaW1DUjtFZTlsQ007O0lBRUU7RWZnbUNSO0FBQ0Y7QWEzcENJO0VFVUU7SUFDRTtFZm9wQ047RWVqcENJO0lBcENKO0lBQ0E7RWZ3ckNBO0VlMXFDQTtJQUNFO0lBQ0E7RWY0cUNGO0VlOXFDQTtJQUNFO0lBQ0E7RWZnckNGO0VlbHJDQTtJQUNFO0lBQ0E7RWZvckNGO0VldHJDQTtJQUNFO0lBQ0E7RWZ3ckNGO0VlMXJDQTtJQUNFO0lBQ0E7RWY0ckNGO0VlOXJDQTtJQUNFO0lBQ0E7RWZnc0NGO0VlanFDSTtJQWhESjtJQUNBO0Vmb3RDQTtFZS9wQ1E7SUFoRU47SUFDQTtFZmt1Q0Y7RWVucUNRO0lBaEVOO0lBQ0E7RWZzdUNGO0VldnFDUTtJQWhFTjtJQUNBO0VmMHVDRjtFZTNxQ1E7SUFoRU47SUFDQTtFZjh1Q0Y7RWUvcUNRO0lBaEVOO0lBQ0E7RWZrdkNGO0VlbnJDUTtJQWhFTjtJQUNBO0Vmc3ZDRjtFZXZyQ1E7SUFoRU47SUFDQTtFZjB2Q0Y7RWUzckNRO0lBaEVOO0lBQ0E7RWY4dkNGO0VlL3JDUTtJQWhFTjtJQUNBO0Vma3dDRjtFZW5zQ1E7SUFoRU47SUFDQTtFZnN3Q0Y7RWV2c0NRO0lBaEVOO0lBQ0E7RWYwd0NGO0VlM3NDUTtJQWhFTjtJQUNBO0VmOHdDRjtFZXZzQ1U7SUF4RFY7RWZrd0NBO0VlMXNDVTtJQXhEVjtFZnF3Q0E7RWU3c0NVO0lBeERWO0Vmd3dDQTtFZWh0Q1U7SUF4RFY7RWYyd0NBO0VlbnRDVTtJQXhEVjtFZjh3Q0E7RWV0dENVO0lBeERWO0VmaXhDQTtFZXp0Q1U7SUF4RFY7RWZveENBO0VlNXRDVTtJQXhEVjtFZnV4Q0E7RWUvdENVO0lBeERWO0VmMHhDQTtFZWx1Q1U7SUF4RFY7RWY2eENBO0VlcnVDVTtJQXhEVjtFZmd5Q0E7RWV4dUNVO0lBeERWO0VmbXlDQTtFZWh1Q007O0lBRUU7RWZrdUNSO0VlL3RDTTs7SUFFRTtFZml1Q1I7RWV4dUNNOztJQUVFO0VmMHVDUjtFZXZ1Q007O0lBRUU7RWZ5dUNSO0VlaHZDTTs7SUFFRTtFZmt2Q1I7RWUvdUNNOztJQUVFO0VmaXZDUjtFZXh2Q007O0lBRUU7RWYwdkNSO0VldnZDTTs7SUFFRTtFZnl2Q1I7RWVod0NNOztJQUVFO0Vma3dDUjtFZS92Q007O0lBRUU7RWZpd0NSO0VleHdDTTs7SUFFRTtFZjB3Q1I7RWV2d0NNOztJQUVFO0VmeXdDUjtBQUNGO0FhcDBDSTtFRVVFO0lBQ0U7RWY2ekNOO0VlMXpDSTtJQXBDSjtJQUNBO0VmaTJDQTtFZW4xQ0E7SUFDRTtJQUNBO0VmcTFDRjtFZXYxQ0E7SUFDRTtJQUNBO0VmeTFDRjtFZTMxQ0E7SUFDRTtJQUNBO0VmNjFDRjtFZS8xQ0E7SUFDRTtJQUNBO0VmaTJDRjtFZW4yQ0E7SUFDRTtJQUNBO0VmcTJDRjtFZXYyQ0E7SUFDRTtJQUNBO0VmeTJDRjtFZTEwQ0k7SUFoREo7SUFDQTtFZjYzQ0E7RWV4MENRO0lBaEVOO0lBQ0E7RWYyNENGO0VlNTBDUTtJQWhFTjtJQUNBO0VmKzRDRjtFZWgxQ1E7SUFoRU47SUFDQTtFZm01Q0Y7RWVwMUNRO0lBaEVOO0lBQ0E7RWZ1NUNGO0VleDFDUTtJQWhFTjtJQUNBO0VmMjVDRjtFZTUxQ1E7SUFoRU47SUFDQTtFZis1Q0Y7RWVoMkNRO0lBaEVOO0lBQ0E7RWZtNkNGO0VlcDJDUTtJQWhFTjtJQUNBO0VmdTZDRjtFZXgyQ1E7SUFoRU47SUFDQTtFZjI2Q0Y7RWU1MkNRO0lBaEVOO0lBQ0E7RWYrNkNGO0VlaDNDUTtJQWhFTjtJQUNBO0VmbTdDRjtFZXAzQ1E7SUFoRU47SUFDQTtFZnU3Q0Y7RWVoM0NVO0lBeERWO0VmMjZDQTtFZW4zQ1U7SUF4RFY7RWY4NkNBO0VldDNDVTtJQXhEVjtFZmk3Q0E7RWV6M0NVO0lBeERWO0VmbzdDQTtFZTUzQ1U7SUF4RFY7RWZ1N0NBO0VlLzNDVTtJQXhEVjtFZjA3Q0E7RWVsNENVO0lBeERWO0VmNjdDQTtFZXI0Q1U7SUF4RFY7RWZnOENBO0VleDRDVTtJQXhEVjtFZm04Q0E7RWUzNENVO0lBeERWO0VmczhDQTtFZTk0Q1U7SUF4RFY7RWZ5OENBO0VlajVDVTtJQXhEVjtFZjQ4Q0E7RWV6NENNOztJQUVFO0VmMjRDUjtFZXg0Q007O0lBRUU7RWYwNENSO0VlajVDTTs7SUFFRTtFZm01Q1I7RWVoNUNNOztJQUVFO0VmazVDUjtFZXo1Q007O0lBRUU7RWYyNUNSO0VleDVDTTs7SUFFRTtFZjA1Q1I7RWVqNkNNOztJQUVFO0VmbTZDUjtFZWg2Q007O0lBRUU7RWZrNkNSO0VlejZDTTs7SUFFRTtFZjI2Q1I7RWV4NkNNOztJQUVFO0VmMDZDUjtFZWo3Q007O0lBRUU7RWZtN0NSO0VlaDdDTTs7SUFFRTtFZms3Q1I7QUFDRjtBYTcrQ0k7RUVVRTtJQUNFO0VmcytDTjtFZW4rQ0k7SUFwQ0o7SUFDQTtFZjBnREE7RWU1L0NBO0lBQ0U7SUFDQTtFZjgvQ0Y7RWVoZ0RBO0lBQ0U7SUFDQTtFZmtnREY7RWVwZ0RBO0lBQ0U7SUFDQTtFZnNnREY7RWV4Z0RBO0lBQ0U7SUFDQTtFZjBnREY7RWU1Z0RBO0lBQ0U7SUFDQTtFZjhnREY7RWVoaERBO0lBQ0U7SUFDQTtFZmtoREY7RWVuL0NJO0lBaERKO0lBQ0E7RWZzaURBO0Vlai9DUTtJQWhFTjtJQUNBO0Vmb2pERjtFZXIvQ1E7SUFoRU47SUFDQTtFZndqREY7RWV6L0NRO0lBaEVOO0lBQ0E7RWY0akRGO0VlNy9DUTtJQWhFTjtJQUNBO0VmZ2tERjtFZWpnRFE7SUFoRU47SUFDQTtFZm9rREY7RWVyZ0RRO0lBaEVOO0lBQ0E7RWZ3a0RGO0VlemdEUTtJQWhFTjtJQUNBO0VmNGtERjtFZTdnRFE7SUFoRU47SUFDQTtFZmdsREY7RWVqaERRO0lBaEVOO0lBQ0E7RWZvbERGO0VlcmhEUTtJQWhFTjtJQUNBO0Vmd2xERjtFZXpoRFE7SUFoRU47SUFDQTtFZjRsREY7RWU3aERRO0lBaEVOO0lBQ0E7RWZnbURGO0VlemhEVTtJQXhEVjtFZm9sREE7RWU1aERVO0lBeERWO0VmdWxEQTtFZS9oRFU7SUF4RFY7RWYwbERBO0VlbGlEVTtJQXhEVjtFZjZsREE7RWVyaURVO0lBeERWO0VmZ21EQTtFZXhpRFU7SUF4RFY7RWZtbURBO0VlM2lEVTtJQXhEVjtFZnNtREE7RWU5aURVO0lBeERWO0VmeW1EQTtFZWpqRFU7SUF4RFY7RWY0bURBO0VlcGpEVTtJQXhEVjtFZittREE7RWV2akRVO0lBeERWO0Vma25EQTtFZTFqRFU7SUF4RFY7RWZxbkRBO0VlbGpETTs7SUFFRTtFZm9qRFI7RWVqakRNOztJQUVFO0VmbWpEUjtFZTFqRE07O0lBRUU7RWY0akRSO0VlempETTs7SUFFRTtFZjJqRFI7RWVsa0RNOztJQUVFO0Vmb2tEUjtFZWprRE07O0lBRUU7RWZta0RSO0VlMWtETTs7SUFFRTtFZjRrRFI7RWV6a0RNOztJQUVFO0VmMmtEUjtFZWxsRE07O0lBRUU7RWZvbERSO0VlamxETTs7SUFFRTtFZm1sRFI7RWUxbERNOztJQUVFO0VmNGxEUjtFZXpsRE07O0lBRUU7RWYybERSO0FBQ0Y7QVVucERRO0VBT0k7QVYrb0RaOztBVXRwRFE7RUFPSTtBVm1wRFo7O0FVMXBEUTtFQU9JO0FWdXBEWjs7QVU5cERRO0VBT0k7QVYycERaOztBVWxxRFE7RUFPSTtBVitwRFo7O0FVdHFEUTtFQU9JO0FWbXFEWjs7QVUxcURRO0VBT0k7QVZ1cURaOztBVTlxRFE7RUFPSTtBVjJxRFo7O0FVbHJEUTtFQU9JO0FWK3FEWjs7QVV0ckRRO0VBT0k7QVZtckRaOztBVTFyRFE7RUFPSTtBVnVyRFo7O0FVOXJEUTtFQU9JO0FWMnJEWjs7QVVsc0RRO0VBT0k7QVYrckRaOztBVXRzRFE7RUFPSTtBVm1zRFo7O0FVMXNEUTtFQU9JO0FWdXNEWjs7QVU5c0RRO0VBT0k7QVYyc0RaOztBVWx0RFE7RUFPSTtBVitzRFo7O0FVdHREUTtFQU9JO0FWbXREWjs7QVUxdERRO0VBT0k7QVZ1dERaOztBVTl0RFE7RUFPSTtBVjJ0RFo7O0FVbHVEUTtFQU9JO0FWK3REWjs7QVV0dURRO0VBT0k7QVZtdURaOztBVTF1RFE7RUFPSTtBVnV1RFo7O0FVOXVEUTtFQU9JO0FWMnVEWjs7QVVsdkRRO0VBT0k7QVYrdURaOztBVXR2RFE7RUFPSTtBVm12RFo7O0FVMXZEUTtFQU9JO0FWdXZEWjs7QVU5dkRRO0VBT0k7QVYydkRaOztBVWx3RFE7RUFPSTtBVit2RFo7O0FVdHdEUTtFQU9JO0FWbXdEWjs7QVUxd0RRO0VBT0k7QVZ1d0RaOztBVTl3RFE7RUFPSTtBVjJ3RFo7O0FVbHhEUTtFQU9JO0FWK3dEWjs7QVV0eERRO0VBT0k7QVZteERaOztBVTF4RFE7RUFPSTtBVnV4RFo7O0FVOXhEUTtFQU9JO0FWMnhEWjs7QVVseURRO0VBT0k7QVYreERaOztBVXR5RFE7RUFPSTtBVm15RFo7O0FVMXlEUTtFQU9JO0FWdXlEWjs7QVU5eURRO0VBT0k7QVYyeURaOztBVWx6RFE7RUFPSTtBVit5RFo7O0FVdHpEUTtFQU9JO0FWbXpEWjs7QVUxekRRO0VBT0k7QVZ1ekRaOztBVTl6RFE7RUFPSTtBVjJ6RFo7O0FVbDBEUTtFQU9JO0FWK3pEWjs7QVV0MERRO0VBT0k7QVZtMERaOztBVTEwRFE7RUFPSTtBVnUwRFo7O0FVOTBEUTtFQU9JO0FWMjBEWjs7QVVsMURRO0VBT0k7QVYrMERaOztBVXQxRFE7RUFPSTtBVm0xRFo7O0FVMTFEUTtFQU9JO0FWdTFEWjs7QVU5MURRO0VBT0k7QVYyMURaOztBVWwyRFE7RUFPSTtBVisxRFo7O0FVdDJEUTtFQU9JO0FWbTJEWjs7QVUxMkRRO0VBT0k7QVZ1MkRaOztBVTkyRFE7RUFPSTtBVjIyRFo7O0FVbDNEUTtFQU9JO0FWKzJEWjs7QVV0M0RRO0VBT0k7QVZtM0RaOztBVTEzRFE7RUFPSTtBVnUzRFo7O0FVOTNEUTtFQU9JO0FWMjNEWjs7QVVsNERRO0VBT0k7QVYrM0RaOztBVXQ0RFE7RUFPSTtFQUFBO0FWbzREWjs7QVUzNERRO0VBT0k7RUFBQTtBVnk0RFo7O0FVaDVEUTtFQU9JO0VBQUE7QVY4NERaOztBVXI1RFE7RUFPSTtFQUFBO0FWbTVEWjs7QVUxNURRO0VBT0k7RUFBQTtBVnc1RFo7O0FVLzVEUTtFQU9JO0VBQUE7QVY2NURaOztBVXA2RFE7RUFPSTtFQUFBO0FWazZEWjs7QVV6NkRRO0VBT0k7RUFBQTtBVnU2RFo7O0FVOTZEUTtFQU9JO0VBQUE7QVY0NkRaOztBVW43RFE7RUFPSTtFQUFBO0FWaTdEWjs7QVV4N0RRO0VBT0k7RUFBQTtBVnM3RFo7O0FVNzdEUTtFQU9JO0VBQUE7QVYyN0RaOztBVWw4RFE7RUFPSTtFQUFBO0FWZzhEWjs7QVV2OERRO0VBT0k7RUFBQTtBVnE4RFo7O0FVNThEUTtFQU9JO0FWeThEWjs7QVVoOURRO0VBT0k7QVY2OERaOztBVXA5RFE7RUFPSTtBVmk5RFo7O0FVeDlEUTtFQU9JO0FWcTlEWjs7QVU1OURRO0VBT0k7QVZ5OURaOztBVWgrRFE7RUFPSTtBVjY5RFo7O0FVcCtEUTtFQU9JO0FWaStEWjs7QVV4K0RRO0VBT0k7QVZxK0RaOztBVTUrRFE7RUFPSTtBVnkrRFo7O0FVaC9EUTtFQU9JO0FWNitEWjs7QVVwL0RRO0VBT0k7QVZpL0RaOztBVXgvRFE7RUFPSTtBVnEvRFo7O0FVNS9EUTtFQU9JO0FWeS9EWjs7QVVoZ0VRO0VBT0k7QVY2L0RaOztBVXBnRVE7RUFPSTtBVmlnRVo7O0FVeGdFUTtFQU9JO0FWcWdFWjs7QVU1Z0VRO0VBT0k7QVZ5Z0VaOztBVWhoRVE7RUFPSTtBVjZnRVo7O0FVcGhFUTtFQU9JO0FWaWhFWjs7QVV4aEVRO0VBT0k7QVZxaEVaOztBVTVoRVE7RUFPSTtBVnloRVo7O0FVaGlFUTtFQU9JO0FWNmhFWjs7QVVwaUVRO0VBT0k7QVZpaUVaOztBVXhpRVE7RUFPSTtBVnFpRVo7O0FVNWlFUTtFQU9JO0FWeWlFWjs7QVVoakVRO0VBT0k7QVY2aUVaOztBVXBqRVE7RUFPSTtBVmlqRVo7O0FVeGpFUTtFQU9JO0FWcWpFWjs7QVU1akVRO0VBT0k7QVZ5akVaOztBVWhrRVE7RUFPSTtBVjZqRVo7O0FVcGtFUTtFQU9JO0FWaWtFWjs7QVV4a0VRO0VBT0k7QVZxa0VaOztBVTVrRVE7RUFPSTtBVnlrRVo7O0FVaGxFUTtFQU9JO0FWNmtFWjs7QVVwbEVRO0VBT0k7RUFBQTtBVmtsRVo7O0FVemxFUTtFQU9JO0VBQUE7QVZ1bEVaOztBVTlsRVE7RUFPSTtFQUFBO0FWNGxFWjs7QVVubUVRO0VBT0k7RUFBQTtBVmltRVo7O0FVeG1FUTtFQU9JO0VBQUE7QVZzbUVaOztBVTdtRVE7RUFPSTtFQUFBO0FWMm1FWjs7QVVsbkVRO0VBT0k7RUFBQTtBVmduRVo7O0FVdm5FUTtFQU9JO0VBQUE7QVZxbkVaOztBVTVuRVE7RUFPSTtFQUFBO0FWMG5FWjs7QVVqb0VRO0VBT0k7RUFBQTtBVituRVo7O0FVdG9FUTtFQU9JO0VBQUE7QVZvb0VaOztBVTNvRVE7RUFPSTtFQUFBO0FWeW9FWjs7QVVocEVRO0VBT0k7QVY2b0VaOztBVXBwRVE7RUFPSTtBVmlwRVo7O0FVeHBFUTtFQU9JO0FWcXBFWjs7QVU1cEVRO0VBT0k7QVZ5cEVaOztBVWhxRVE7RUFPSTtBVjZwRVo7O0FVcHFFUTtFQU9JO0FWaXFFWjs7QVV4cUVRO0VBT0k7QVZxcUVaOztBVTVxRVE7RUFPSTtBVnlxRVo7O0FVaHJFUTtFQU9JO0FWNnFFWjs7QVVwckVRO0VBT0k7QVZpckVaOztBVXhyRVE7RUFPSTtBVnFyRVo7O0FVNXJFUTtFQU9JO0FWeXJFWjs7QVVoc0VRO0VBT0k7QVY2ckVaOztBVXBzRVE7RUFPSTtBVmlzRVo7O0FVeHNFUTtFQU9JO0FWcXNFWjs7QVU1c0VRO0VBT0k7QVZ5c0VaOztBVWh0RVE7RUFPSTtBVjZzRVo7O0FVcHRFUTtFQU9JO0FWaXRFWjs7QVV4dEVRO0VBT0k7QVZxdEVaOztBVTV0RVE7RUFPSTtBVnl0RVo7O0FVaHVFUTtFQU9JO0FWNnRFWjs7QVVwdUVRO0VBT0k7QVZpdUVaOztBVXh1RVE7RUFPSTtBVnF1RVo7O0FVNXVFUTtFQU9JO0FWeXVFWjs7QWFudkVJO0VIR0k7SUFPSTtFVjh1RVY7RVVydkVNO0lBT0k7RVZpdkVWO0VVeHZFTTtJQU9JO0VWb3ZFVjtFVTN2RU07SUFPSTtFVnV2RVY7RVU5dkVNO0lBT0k7RVYwdkVWO0VVandFTTtJQU9JO0VWNnZFVjtFVXB3RU07SUFPSTtFVmd3RVY7RVV2d0VNO0lBT0k7RVZtd0VWO0VVMXdFTTtJQU9JO0VWc3dFVjtFVTd3RU07SUFPSTtFVnl3RVY7RVVoeEVNO0lBT0k7RVY0d0VWO0VVbnhFTTtJQU9JO0VWK3dFVjtFVXR4RU07SUFPSTtFVmt4RVY7RVV6eEVNO0lBT0k7RVZxeEVWO0VVNXhFTTtJQU9JO0VWd3hFVjtFVS94RU07SUFPSTtFVjJ4RVY7RVVseUVNO0lBT0k7RVY4eEVWO0VVcnlFTTtJQU9JO0VWaXlFVjtFVXh5RU07SUFPSTtFVm95RVY7RVUzeUVNO0lBT0k7RVZ1eUVWO0VVOXlFTTtJQU9JO0VWMHlFVjtFVWp6RU07SUFPSTtFVjZ5RVY7RVVwekVNO0lBT0k7RVZnekVWO0VVdnpFTTtJQU9JO0VWbXpFVjtFVTF6RU07SUFPSTtFVnN6RVY7RVU3ekVNO0lBT0k7RVZ5ekVWO0VVaDBFTTtJQU9JO0VWNHpFVjtFVW4wRU07SUFPSTtFVit6RVY7RVV0MEVNO0lBT0k7RVZrMEVWO0VVejBFTTtJQU9JO0VWcTBFVjtFVTUwRU07SUFPSTtFVncwRVY7RVUvMEVNO0lBT0k7RVYyMEVWO0VVbDFFTTtJQU9JO0VWODBFVjtFVXIxRU07SUFPSTtFVmkxRVY7RVV4MUVNO0lBT0k7RVZvMUVWO0VVMzFFTTtJQU9JO0VWdTFFVjtFVTkxRU07SUFPSTtFVjAxRVY7RVVqMkVNO0lBT0k7RVY2MUVWO0VVcDJFTTtJQU9JO0VWZzJFVjtFVXYyRU07SUFPSTtFVm0yRVY7RVUxMkVNO0lBT0k7RVZzMkVWO0VVNzJFTTtJQU9JO0VWeTJFVjtFVWgzRU07SUFPSTtFVjQyRVY7RVVuM0VNO0lBT0k7RVYrMkVWO0VVdDNFTTtJQU9JO0VWazNFVjtFVXozRU07SUFPSTtFVnEzRVY7RVU1M0VNO0lBT0k7RVZ3M0VWO0VVLzNFTTtJQU9JO0VWMjNFVjtFVWw0RU07SUFPSTtFVjgzRVY7RVVyNEVNO0lBT0k7RVZpNEVWO0VVeDRFTTtJQU9JO0VWbzRFVjtFVTM0RU07SUFPSTtFVnU0RVY7RVU5NEVNO0lBT0k7RVYwNEVWO0VVajVFTTtJQU9JO0VWNjRFVjtFVXA1RU07SUFPSTtFVmc1RVY7RVV2NUVNO0lBT0k7RVZtNUVWO0VVMTVFTTtJQU9JO0VWczVFVjtFVTc1RU07SUFPSTtFVnk1RVY7RVVoNkVNO0lBT0k7RVY0NUVWO0VVbjZFTTtJQU9JO0VWKzVFVjtFVXQ2RU07SUFPSTtFVms2RVY7RVV6NkVNO0lBT0k7SUFBQTtFVnM2RVY7RVU3NkVNO0lBT0k7SUFBQTtFVjA2RVY7RVVqN0VNO0lBT0k7SUFBQTtFVjg2RVY7RVVyN0VNO0lBT0k7SUFBQTtFVms3RVY7RVV6N0VNO0lBT0k7SUFBQTtFVnM3RVY7RVU3N0VNO0lBT0k7SUFBQTtFVjA3RVY7RVVqOEVNO0lBT0k7SUFBQTtFVjg3RVY7RVVyOEVNO0lBT0k7SUFBQTtFVms4RVY7RVV6OEVNO0lBT0k7SUFBQTtFVnM4RVY7RVU3OEVNO0lBT0k7SUFBQTtFVjA4RVY7RVVqOUVNO0lBT0k7SUFBQTtFVjg4RVY7RVVyOUVNO0lBT0k7SUFBQTtFVms5RVY7RVV6OUVNO0lBT0k7SUFBQTtFVnM5RVY7RVU3OUVNO0lBT0k7SUFBQTtFVjA5RVY7RVVqK0VNO0lBT0k7RVY2OUVWO0VVcCtFTTtJQU9JO0VWZytFVjtFVXYrRU07SUFPSTtFVm0rRVY7RVUxK0VNO0lBT0k7RVZzK0VWO0VVNytFTTtJQU9JO0VWeStFVjtFVWgvRU07SUFPSTtFVjQrRVY7RVVuL0VNO0lBT0k7RVYrK0VWO0VVdC9FTTtJQU9JO0VWay9FVjtFVXovRU07SUFPSTtFVnEvRVY7RVU1L0VNO0lBT0k7RVZ3L0VWO0VVLy9FTTtJQU9JO0VWMi9FVjtFVWxnRk07SUFPSTtFVjgvRVY7RVVyZ0ZNO0lBT0k7RVZpZ0ZWO0VVeGdGTTtJQU9JO0VWb2dGVjtFVTNnRk07SUFPSTtFVnVnRlY7RVU5Z0ZNO0lBT0k7RVYwZ0ZWO0VVamhGTTtJQU9JO0VWNmdGVjtFVXBoRk07SUFPSTtFVmdoRlY7RVV2aEZNO0lBT0k7RVZtaEZWO0VVMWhGTTtJQU9JO0VWc2hGVjtFVTdoRk07SUFPSTtFVnloRlY7RVVoaUZNO0lBT0k7RVY0aEZWO0VVbmlGTTtJQU9JO0VWK2hGVjtFVXRpRk07SUFPSTtFVmtpRlY7RVV6aUZNO0lBT0k7RVZxaUZWO0VVNWlGTTtJQU9JO0VWd2lGVjtFVS9pRk07SUFPSTtFVjJpRlY7RVVsakZNO0lBT0k7RVY4aUZWO0VVcmpGTTtJQU9JO0VWaWpGVjtFVXhqRk07SUFPSTtFVm9qRlY7RVUzakZNO0lBT0k7RVZ1akZWO0VVOWpGTTtJQU9JO0VWMGpGVjtFVWprRk07SUFPSTtFVjZqRlY7RVVwa0ZNO0lBT0k7RVZna0ZWO0VVdmtGTTtJQU9JO0lBQUE7RVZva0ZWO0VVM2tGTTtJQU9JO0lBQUE7RVZ3a0ZWO0VVL2tGTTtJQU9JO0lBQUE7RVY0a0ZWO0VVbmxGTTtJQU9JO0lBQUE7RVZnbEZWO0VVdmxGTTtJQU9JO0lBQUE7RVZvbEZWO0VVM2xGTTtJQU9JO0lBQUE7RVZ3bEZWO0VVL2xGTTtJQU9JO0lBQUE7RVY0bEZWO0VVbm1GTTtJQU9JO0lBQUE7RVZnbUZWO0VVdm1GTTtJQU9JO0lBQUE7RVZvbUZWO0VVM21GTTtJQU9JO0lBQUE7RVZ3bUZWO0VVL21GTTtJQU9JO0lBQUE7RVY0bUZWO0VVbm5GTTtJQU9JO0lBQUE7RVZnbkZWO0VVdm5GTTtJQU9JO0VWbW5GVjtFVTFuRk07SUFPSTtFVnNuRlY7RVU3bkZNO0lBT0k7RVZ5bkZWO0VVaG9GTTtJQU9JO0VWNG5GVjtFVW5vRk07SUFPSTtFVituRlY7RVV0b0ZNO0lBT0k7RVZrb0ZWO0VVem9GTTtJQU9JO0VWcW9GVjtFVTVvRk07SUFPSTtFVndvRlY7RVUvb0ZNO0lBT0k7RVYyb0ZWO0VVbHBGTTtJQU9JO0VWOG9GVjtFVXJwRk07SUFPSTtFVmlwRlY7RVV4cEZNO0lBT0k7RVZvcEZWO0VVM3BGTTtJQU9JO0VWdXBGVjtFVTlwRk07SUFPSTtFVjBwRlY7RVVqcUZNO0lBT0k7RVY2cEZWO0VVcHFGTTtJQU9JO0VWZ3FGVjtFVXZxRk07SUFPSTtFVm1xRlY7RVUxcUZNO0lBT0k7RVZzcUZWO0VVN3FGTTtJQU9JO0VWeXFGVjtFVWhyRk07SUFPSTtFVjRxRlY7RVVuckZNO0lBT0k7RVYrcUZWO0VVdHJGTTtJQU9JO0VWa3JGVjtFVXpyRk07SUFPSTtFVnFyRlY7RVU1ckZNO0lBT0k7RVZ3ckZWO0FBQ0Y7QWFuc0ZJO0VIR0k7SUFPSTtFVjZyRlY7RVVwc0ZNO0lBT0k7RVZnc0ZWO0VVdnNGTTtJQU9JO0VWbXNGVjtFVTFzRk07SUFPSTtFVnNzRlY7RVU3c0ZNO0lBT0k7RVZ5c0ZWO0VVaHRGTTtJQU9JO0VWNHNGVjtFVW50Rk07SUFPSTtFVitzRlY7RVV0dEZNO0lBT0k7RVZrdEZWO0VVenRGTTtJQU9JO0VWcXRGVjtFVTV0Rk07SUFPSTtFVnd0RlY7RVUvdEZNO0lBT0k7RVYydEZWO0VVbHVGTTtJQU9JO0VWOHRGVjtFVXJ1Rk07SUFPSTtFVml1RlY7RVV4dUZNO0lBT0k7RVZvdUZWO0VVM3VGTTtJQU9JO0VWdXVGVjtFVTl1Rk07SUFPSTtFVjB1RlY7RVVqdkZNO0lBT0k7RVY2dUZWO0VVcHZGTTtJQU9JO0VWZ3ZGVjtFVXZ2Rk07SUFPSTtFVm12RlY7RVUxdkZNO0lBT0k7RVZzdkZWO0VVN3ZGTTtJQU9JO0VWeXZGVjtFVWh3Rk07SUFPSTtFVjR2RlY7RVVud0ZNO0lBT0k7RVYrdkZWO0VVdHdGTTtJQU9JO0VWa3dGVjtFVXp3Rk07SUFPSTtFVnF3RlY7RVU1d0ZNO0lBT0k7RVZ3d0ZWO0VVL3dGTTtJQU9JO0VWMndGVjtFVWx4Rk07SUFPSTtFVjh3RlY7RVVyeEZNO0lBT0k7RVZpeEZWO0VVeHhGTTtJQU9JO0VWb3hGVjtFVTN4Rk07SUFPSTtFVnV4RlY7RVU5eEZNO0lBT0k7RVYweEZWO0VVanlGTTtJQU9JO0VWNnhGVjtFVXB5Rk07SUFPSTtFVmd5RlY7RVV2eUZNO0lBT0k7RVZteUZWO0VVMXlGTTtJQU9JO0VWc3lGVjtFVTd5Rk07SUFPSTtFVnl5RlY7RVVoekZNO0lBT0k7RVY0eUZWO0VVbnpGTTtJQU9JO0VWK3lGVjtFVXR6Rk07SUFPSTtFVmt6RlY7RVV6ekZNO0lBT0k7RVZxekZWO0VVNXpGTTtJQU9JO0VWd3pGVjtFVS96Rk07SUFPSTtFVjJ6RlY7RVVsMEZNO0lBT0k7RVY4ekZWO0VVcjBGTTtJQU9JO0VWaTBGVjtFVXgwRk07SUFPSTtFVm8wRlY7RVUzMEZNO0lBT0k7RVZ1MEZWO0VVOTBGTTtJQU9JO0VWMDBGVjtFVWoxRk07SUFPSTtFVjYwRlY7RVVwMUZNO0lBT0k7RVZnMUZWO0VVdjFGTTtJQU9JO0VWbTFGVjtFVTExRk07SUFPSTtFVnMxRlY7RVU3MUZNO0lBT0k7RVZ5MUZWO0VVaDJGTTtJQU9JO0VWNDFGVjtFVW4yRk07SUFPSTtFVisxRlY7RVV0MkZNO0lBT0k7RVZrMkZWO0VVejJGTTtJQU9JO0VWcTJGVjtFVTUyRk07SUFPSTtFVncyRlY7RVUvMkZNO0lBT0k7RVYyMkZWO0VVbDNGTTtJQU9JO0VWODJGVjtFVXIzRk07SUFPSTtFVmkzRlY7RVV4M0ZNO0lBT0k7SUFBQTtFVnEzRlY7RVU1M0ZNO0lBT0k7SUFBQTtFVnkzRlY7RVVoNEZNO0lBT0k7SUFBQTtFVjYzRlY7RVVwNEZNO0lBT0k7SUFBQTtFVmk0RlY7RVV4NEZNO0lBT0k7SUFBQTtFVnE0RlY7RVU1NEZNO0lBT0k7SUFBQTtFVnk0RlY7RVVoNUZNO0lBT0k7SUFBQTtFVjY0RlY7RVVwNUZNO0lBT0k7SUFBQTtFVmk1RlY7RVV4NUZNO0lBT0k7SUFBQTtFVnE1RlY7RVU1NUZNO0lBT0k7SUFBQTtFVnk1RlY7RVVoNkZNO0lBT0k7SUFBQTtFVjY1RlY7RVVwNkZNO0lBT0k7SUFBQTtFVmk2RlY7RVV4NkZNO0lBT0k7SUFBQTtFVnE2RlY7RVU1NkZNO0lBT0k7SUFBQTtFVnk2RlY7RVVoN0ZNO0lBT0k7RVY0NkZWO0VVbjdGTTtJQU9JO0VWKzZGVjtFVXQ3Rk07SUFPSTtFVms3RlY7RVV6N0ZNO0lBT0k7RVZxN0ZWO0VVNTdGTTtJQU9JO0VWdzdGVjtFVS83Rk07SUFPSTtFVjI3RlY7RVVsOEZNO0lBT0k7RVY4N0ZWO0VVcjhGTTtJQU9JO0VWaThGVjtFVXg4Rk07SUFPSTtFVm84RlY7RVUzOEZNO0lBT0k7RVZ1OEZWO0VVOThGTTtJQU9JO0VWMDhGVjtFVWo5Rk07SUFPSTtFVjY4RlY7RVVwOUZNO0lBT0k7RVZnOUZWO0VVdjlGTTtJQU9JO0VWbTlGVjtFVTE5Rk07SUFPSTtFVnM5RlY7RVU3OUZNO0lBT0k7RVZ5OUZWO0VVaCtGTTtJQU9JO0VWNDlGVjtFVW4rRk07SUFPSTtFVis5RlY7RVV0K0ZNO0lBT0k7RVZrK0ZWO0VVeitGTTtJQU9JO0VWcStGVjtFVTUrRk07SUFPSTtFVncrRlY7RVUvK0ZNO0lBT0k7RVYyK0ZWO0VVbC9GTTtJQU9JO0VWOCtGVjtFVXIvRk07SUFPSTtFVmkvRlY7RVV4L0ZNO0lBT0k7RVZvL0ZWO0VVMy9GTTtJQU9JO0VWdS9GVjtFVTkvRk07SUFPSTtFVjAvRlY7RVVqZ0dNO0lBT0k7RVY2L0ZWO0VVcGdHTTtJQU9JO0VWZ2dHVjtFVXZnR007SUFPSTtFVm1nR1Y7RVUxZ0dNO0lBT0k7RVZzZ0dWO0VVN2dHTTtJQU9JO0VWeWdHVjtFVWhoR007SUFPSTtFVjRnR1Y7RVVuaEdNO0lBT0k7RVYrZ0dWO0VVdGhHTTtJQU9JO0lBQUE7RVZtaEdWO0VVMWhHTTtJQU9JO0lBQUE7RVZ1aEdWO0VVOWhHTTtJQU9JO0lBQUE7RVYyaEdWO0VVbGlHTTtJQU9JO0lBQUE7RVYraEdWO0VVdGlHTTtJQU9JO0lBQUE7RVZtaUdWO0VVMWlHTTtJQU9JO0lBQUE7RVZ1aUdWO0VVOWlHTTtJQU9JO0lBQUE7RVYyaUdWO0VVbGpHTTtJQU9JO0lBQUE7RVYraUdWO0VVdGpHTTtJQU9JO0lBQUE7RVZtakdWO0VVMWpHTTtJQU9JO0lBQUE7RVZ1akdWO0VVOWpHTTtJQU9JO0lBQUE7RVYyakdWO0VVbGtHTTtJQU9JO0lBQUE7RVYrakdWO0VVdGtHTTtJQU9JO0VWa2tHVjtFVXprR007SUFPSTtFVnFrR1Y7RVU1a0dNO0lBT0k7RVZ3a0dWO0VVL2tHTTtJQU9JO0VWMmtHVjtFVWxsR007SUFPSTtFVjhrR1Y7RVVybEdNO0lBT0k7RVZpbEdWO0VVeGxHTTtJQU9JO0VWb2xHVjtFVTNsR007SUFPSTtFVnVsR1Y7RVU5bEdNO0lBT0k7RVYwbEdWO0VVam1HTTtJQU9JO0VWNmxHVjtFVXBtR007SUFPSTtFVmdtR1Y7RVV2bUdNO0lBT0k7RVZtbUdWO0VVMW1HTTtJQU9JO0VWc21HVjtFVTdtR007SUFPSTtFVnltR1Y7RVVobkdNO0lBT0k7RVY0bUdWO0VVbm5HTTtJQU9JO0VWK21HVjtFVXRuR007SUFPSTtFVmtuR1Y7RVV6bkdNO0lBT0k7RVZxbkdWO0VVNW5HTTtJQU9JO0VWd25HVjtFVS9uR007SUFPSTtFVjJuR1Y7RVVsb0dNO0lBT0k7RVY4bkdWO0VVcm9HTTtJQU9JO0VWaW9HVjtFVXhvR007SUFPSTtFVm9vR1Y7RVUzb0dNO0lBT0k7RVZ1b0dWO0FBQ0Y7QWFscEdJO0VIR0k7SUFPSTtFVjRvR1Y7RVVucEdNO0lBT0k7RVYrb0dWO0VVdHBHTTtJQU9JO0VWa3BHVjtFVXpwR007SUFPSTtFVnFwR1Y7RVU1cEdNO0lBT0k7RVZ3cEdWO0VVL3BHTTtJQU9JO0VWMnBHVjtFVWxxR007SUFPSTtFVjhwR1Y7RVVycUdNO0lBT0k7RVZpcUdWO0VVeHFHTTtJQU9JO0VWb3FHVjtFVTNxR007SUFPSTtFVnVxR1Y7RVU5cUdNO0lBT0k7RVYwcUdWO0VVanJHTTtJQU9JO0VWNnFHVjtFVXByR007SUFPSTtFVmdyR1Y7RVV2ckdNO0lBT0k7RVZtckdWO0VVMXJHTTtJQU9JO0VWc3JHVjtFVTdyR007SUFPSTtFVnlyR1Y7RVVoc0dNO0lBT0k7RVY0ckdWO0VVbnNHTTtJQU9JO0VWK3JHVjtFVXRzR007SUFPSTtFVmtzR1Y7RVV6c0dNO0lBT0k7RVZxc0dWO0VVNXNHTTtJQU9JO0VWd3NHVjtFVS9zR007SUFPSTtFVjJzR1Y7RVVsdEdNO0lBT0k7RVY4c0dWO0VVcnRHTTtJQU9JO0VWaXRHVjtFVXh0R007SUFPSTtFVm90R1Y7RVUzdEdNO0lBT0k7RVZ1dEdWO0VVOXRHTTtJQU9JO0VWMHRHVjtFVWp1R007SUFPSTtFVjZ0R1Y7RVVwdUdNO0lBT0k7RVZndUdWO0VVdnVHTTtJQU9JO0VWbXVHVjtFVTF1R007SUFPSTtFVnN1R1Y7RVU3dUdNO0lBT0k7RVZ5dUdWO0VVaHZHTTtJQU9JO0VWNHVHVjtFVW52R007SUFPSTtFVit1R1Y7RVV0dkdNO0lBT0k7RVZrdkdWO0VVenZHTTtJQU9JO0VWcXZHVjtFVTV2R007SUFPSTtFVnd2R1Y7RVUvdkdNO0lBT0k7RVYydkdWO0VVbHdHTTtJQU9JO0VWOHZHVjtFVXJ3R007SUFPSTtFVml3R1Y7RVV4d0dNO0lBT0k7RVZvd0dWO0VVM3dHTTtJQU9JO0VWdXdHVjtFVTl3R007SUFPSTtFVjB3R1Y7RVVqeEdNO0lBT0k7RVY2d0dWO0VVcHhHTTtJQU9JO0VWZ3hHVjtFVXZ4R007SUFPSTtFVm14R1Y7RVUxeEdNO0lBT0k7RVZzeEdWO0VVN3hHTTtJQU9JO0VWeXhHVjtFVWh5R007SUFPSTtFVjR4R1Y7RVVueUdNO0lBT0k7RVYreEdWO0VVdHlHTTtJQU9JO0VWa3lHVjtFVXp5R007SUFPSTtFVnF5R1Y7RVU1eUdNO0lBT0k7RVZ3eUdWO0VVL3lHTTtJQU9JO0VWMnlHVjtFVWx6R007SUFPSTtFVjh5R1Y7RVVyekdNO0lBT0k7RVZpekdWO0VVeHpHTTtJQU9JO0VWb3pHVjtFVTN6R007SUFPSTtFVnV6R1Y7RVU5ekdNO0lBT0k7RVYwekdWO0VVajBHTTtJQU9JO0VWNnpHVjtFVXAwR007SUFPSTtFVmcwR1Y7RVV2MEdNO0lBT0k7SUFBQTtFVm8wR1Y7RVUzMEdNO0lBT0k7SUFBQTtFVncwR1Y7RVUvMEdNO0lBT0k7SUFBQTtFVjQwR1Y7RVVuMUdNO0lBT0k7SUFBQTtFVmcxR1Y7RVV2MUdNO0lBT0k7SUFBQTtFVm8xR1Y7RVUzMUdNO0lBT0k7SUFBQTtFVncxR1Y7RVUvMUdNO0lBT0k7SUFBQTtFVjQxR1Y7RVVuMkdNO0lBT0k7SUFBQTtFVmcyR1Y7RVV2MkdNO0lBT0k7SUFBQTtFVm8yR1Y7RVUzMkdNO0lBT0k7SUFBQTtFVncyR1Y7RVUvMkdNO0lBT0k7SUFBQTtFVjQyR1Y7RVVuM0dNO0lBT0k7SUFBQTtFVmczR1Y7RVV2M0dNO0lBT0k7SUFBQTtFVm8zR1Y7RVUzM0dNO0lBT0k7SUFBQTtFVnczR1Y7RVUvM0dNO0lBT0k7RVYyM0dWO0VVbDRHTTtJQU9JO0VWODNHVjtFVXI0R007SUFPSTtFVmk0R1Y7RVV4NEdNO0lBT0k7RVZvNEdWO0VVMzRHTTtJQU9JO0VWdTRHVjtFVTk0R007SUFPSTtFVjA0R1Y7RVVqNUdNO0lBT0k7RVY2NEdWO0VVcDVHTTtJQU9JO0VWZzVHVjtFVXY1R007SUFPSTtFVm01R1Y7RVUxNUdNO0lBT0k7RVZzNUdWO0VVNzVHTTtJQU9JO0VWeTVHVjtFVWg2R007SUFPSTtFVjQ1R1Y7RVVuNkdNO0lBT0k7RVYrNUdWO0VVdDZHTTtJQU9JO0VWazZHVjtFVXo2R007SUFPSTtFVnE2R1Y7RVU1NkdNO0lBT0k7RVZ3NkdWO0VVLzZHTTtJQU9JO0VWMjZHVjtFVWw3R007SUFPSTtFVjg2R1Y7RVVyN0dNO0lBT0k7RVZpN0dWO0VVeDdHTTtJQU9JO0VWbzdHVjtFVTM3R007SUFPSTtFVnU3R1Y7RVU5N0dNO0lBT0k7RVYwN0dWO0VVajhHTTtJQU9JO0VWNjdHVjtFVXA4R007SUFPSTtFVmc4R1Y7RVV2OEdNO0lBT0k7RVZtOEdWO0VVMThHTTtJQU9JO0VWczhHVjtFVTc4R007SUFPSTtFVnk4R1Y7RVVoOUdNO0lBT0k7RVY0OEdWO0VVbjlHTTtJQU9JO0VWKzhHVjtFVXQ5R007SUFPSTtFVms5R1Y7RVV6OUdNO0lBT0k7RVZxOUdWO0VVNTlHTTtJQU9JO0VWdzlHVjtFVS85R007SUFPSTtFVjI5R1Y7RVVsK0dNO0lBT0k7RVY4OUdWO0VVcitHTTtJQU9JO0lBQUE7RVZrK0dWO0VVeitHTTtJQU9JO0lBQUE7RVZzK0dWO0VVNytHTTtJQU9JO0lBQUE7RVYwK0dWO0VVai9HTTtJQU9JO0lBQUE7RVY4K0dWO0VVci9HTTtJQU9JO0lBQUE7RVZrL0dWO0VVei9HTTtJQU9JO0lBQUE7RVZzL0dWO0VVNy9HTTtJQU9JO0lBQUE7RVYwL0dWO0VVamdITTtJQU9JO0lBQUE7RVY4L0dWO0VVcmdITTtJQU9JO0lBQUE7RVZrZ0hWO0VVemdITTtJQU9JO0lBQUE7RVZzZ0hWO0VVN2dITTtJQU9JO0lBQUE7RVYwZ0hWO0VVamhITTtJQU9JO0lBQUE7RVY4Z0hWO0VVcmhITTtJQU9JO0VWaWhIVjtFVXhoSE07SUFPSTtFVm9oSFY7RVUzaEhNO0lBT0k7RVZ1aEhWO0VVOWhITTtJQU9JO0VWMGhIVjtFVWppSE07SUFPSTtFVjZoSFY7RVVwaUhNO0lBT0k7RVZnaUhWO0VVdmlITTtJQU9JO0VWbWlIVjtFVTFpSE07SUFPSTtFVnNpSFY7RVU3aUhNO0lBT0k7RVZ5aUhWO0VVaGpITTtJQU9JO0VWNGlIVjtFVW5qSE07SUFPSTtFVitpSFY7RVV0akhNO0lBT0k7RVZrakhWO0VVempITTtJQU9JO0VWcWpIVjtFVTVqSE07SUFPSTtFVndqSFY7RVUvakhNO0lBT0k7RVYyakhWO0VVbGtITTtJQU9JO0VWOGpIVjtFVXJrSE07SUFPSTtFVmlrSFY7RVV4a0hNO0lBT0k7RVZva0hWO0VVM2tITTtJQU9JO0VWdWtIVjtFVTlrSE07SUFPSTtFVjBrSFY7RVVqbEhNO0lBT0k7RVY2a0hWO0VVcGxITTtJQU9JO0VWZ2xIVjtFVXZsSE07SUFPSTtFVm1sSFY7RVUxbEhNO0lBT0k7RVZzbEhWO0FBQ0Y7QWFqbUhJO0VIR0k7SUFPSTtFVjJsSFY7RVVsbUhNO0lBT0k7RVY4bEhWO0VVcm1ITTtJQU9JO0VWaW1IVjtFVXhtSE07SUFPSTtFVm9tSFY7RVUzbUhNO0lBT0k7RVZ1bUhWO0VVOW1ITTtJQU9JO0VWMG1IVjtFVWpuSE07SUFPSTtFVjZtSFY7RVVwbkhNO0lBT0k7RVZnbkhWO0VVdm5ITTtJQU9JO0VWbW5IVjtFVTFuSE07SUFPSTtFVnNuSFY7RVU3bkhNO0lBT0k7RVZ5bkhWO0VVaG9ITTtJQU9JO0VWNG5IVjtFVW5vSE07SUFPSTtFVituSFY7RVV0b0hNO0lBT0k7RVZrb0hWO0VVem9ITTtJQU9JO0VWcW9IVjtFVTVvSE07SUFPSTtFVndvSFY7RVUvb0hNO0lBT0k7RVYyb0hWO0VVbHBITTtJQU9JO0VWOG9IVjtFVXJwSE07SUFPSTtFVmlwSFY7RVV4cEhNO0lBT0k7RVZvcEhWO0VVM3BITTtJQU9JO0VWdXBIVjtFVTlwSE07SUFPSTtFVjBwSFY7RVVqcUhNO0lBT0k7RVY2cEhWO0VVcHFITTtJQU9JO0VWZ3FIVjtFVXZxSE07SUFPSTtFVm1xSFY7RVUxcUhNO0lBT0k7RVZzcUhWO0VVN3FITTtJQU9JO0VWeXFIVjtFVWhySE07SUFPSTtFVjRxSFY7RVVuckhNO0lBT0k7RVYrcUhWO0VVdHJITTtJQU9JO0VWa3JIVjtFVXpySE07SUFPSTtFVnFySFY7RVU1ckhNO0lBT0k7RVZ3ckhWO0VVL3JITTtJQU9JO0VWMnJIVjtFVWxzSE07SUFPSTtFVjhySFY7RVVyc0hNO0lBT0k7RVZpc0hWO0VVeHNITTtJQU9JO0VWb3NIVjtFVTNzSE07SUFPSTtFVnVzSFY7RVU5c0hNO0lBT0k7RVYwc0hWO0VVanRITTtJQU9JO0VWNnNIVjtFVXB0SE07SUFPSTtFVmd0SFY7RVV2dEhNO0lBT0k7RVZtdEhWO0VVMXRITTtJQU9JO0VWc3RIVjtFVTd0SE07SUFPSTtFVnl0SFY7RVVodUhNO0lBT0k7RVY0dEhWO0VVbnVITTtJQU9JO0VWK3RIVjtFVXR1SE07SUFPSTtFVmt1SFY7RVV6dUhNO0lBT0k7RVZxdUhWO0VVNXVITTtJQU9JO0VWd3VIVjtFVS91SE07SUFPSTtFVjJ1SFY7RVVsdkhNO0lBT0k7RVY4dUhWO0VVcnZITTtJQU9JO0VWaXZIVjtFVXh2SE07SUFPSTtFVm92SFY7RVUzdkhNO0lBT0k7RVZ1dkhWO0VVOXZITTtJQU9JO0VWMHZIVjtFVWp3SE07SUFPSTtFVjZ2SFY7RVVwd0hNO0lBT0k7RVZnd0hWO0VVdndITTtJQU9JO0VWbXdIVjtFVTF3SE07SUFPSTtFVnN3SFY7RVU3d0hNO0lBT0k7RVZ5d0hWO0VVaHhITTtJQU9JO0VWNHdIVjtFVW54SE07SUFPSTtFVit3SFY7RVV0eEhNO0lBT0k7SUFBQTtFVm14SFY7RVUxeEhNO0lBT0k7SUFBQTtFVnV4SFY7RVU5eEhNO0lBT0k7SUFBQTtFVjJ4SFY7RVVseUhNO0lBT0k7SUFBQTtFVit4SFY7RVV0eUhNO0lBT0k7SUFBQTtFVm15SFY7RVUxeUhNO0lBT0k7SUFBQTtFVnV5SFY7RVU5eUhNO0lBT0k7SUFBQTtFVjJ5SFY7RVVsekhNO0lBT0k7SUFBQTtFVit5SFY7RVV0ekhNO0lBT0k7SUFBQTtFVm16SFY7RVUxekhNO0lBT0k7SUFBQTtFVnV6SFY7RVU5ekhNO0lBT0k7SUFBQTtFVjJ6SFY7RVVsMEhNO0lBT0k7SUFBQTtFVit6SFY7RVV0MEhNO0lBT0k7SUFBQTtFVm0wSFY7RVUxMEhNO0lBT0k7SUFBQTtFVnUwSFY7RVU5MEhNO0lBT0k7RVYwMEhWO0VVajFITTtJQU9JO0VWNjBIVjtFVXAxSE07SUFPSTtFVmcxSFY7RVV2MUhNO0lBT0k7RVZtMUhWO0VVMTFITTtJQU9JO0VWczFIVjtFVTcxSE07SUFPSTtFVnkxSFY7RVVoMkhNO0lBT0k7RVY0MUhWO0VVbjJITTtJQU9JO0VWKzFIVjtFVXQySE07SUFPSTtFVmsySFY7RVV6MkhNO0lBT0k7RVZxMkhWO0VVNTJITTtJQU9JO0VWdzJIVjtFVS8ySE07SUFPSTtFVjIySFY7RVVsM0hNO0lBT0k7RVY4MkhWO0VVcjNITTtJQU9JO0VWaTNIVjtFVXgzSE07SUFPSTtFVm8zSFY7RVUzM0hNO0lBT0k7RVZ1M0hWO0VVOTNITTtJQU9JO0VWMDNIVjtFVWo0SE07SUFPSTtFVjYzSFY7RVVwNEhNO0lBT0k7RVZnNEhWO0VVdjRITTtJQU9JO0VWbTRIVjtFVTE0SE07SUFPSTtFVnM0SFY7RVU3NEhNO0lBT0k7RVZ5NEhWO0VVaDVITTtJQU9JO0VWNDRIVjtFVW41SE07SUFPSTtFVis0SFY7RVV0NUhNO0lBT0k7RVZrNUhWO0VVejVITTtJQU9JO0VWcTVIVjtFVTU1SE07SUFPSTtFVnc1SFY7RVUvNUhNO0lBT0k7RVYyNUhWO0VVbDZITTtJQU9JO0VWODVIVjtFVXI2SE07SUFPSTtFVmk2SFY7RVV4NkhNO0lBT0k7RVZvNkhWO0VVMzZITTtJQU9JO0VWdTZIVjtFVTk2SE07SUFPSTtFVjA2SFY7RVVqN0hNO0lBT0k7RVY2NkhWO0VVcDdITTtJQU9JO0lBQUE7RVZpN0hWO0VVeDdITTtJQU9JO0lBQUE7RVZxN0hWO0VVNTdITTtJQU9JO0lBQUE7RVZ5N0hWO0VVaDhITTtJQU9JO0lBQUE7RVY2N0hWO0VVcDhITTtJQU9JO0lBQUE7RVZpOEhWO0VVeDhITTtJQU9JO0lBQUE7RVZxOEhWO0VVNThITTtJQU9JO0lBQUE7RVZ5OEhWO0VVaDlITTtJQU9JO0lBQUE7RVY2OEhWO0VVcDlITTtJQU9JO0lBQUE7RVZpOUhWO0VVeDlITTtJQU9JO0lBQUE7RVZxOUhWO0VVNTlITTtJQU9JO0lBQUE7RVZ5OUhWO0VVaCtITTtJQU9JO0lBQUE7RVY2OUhWO0VVcCtITTtJQU9JO0VWZytIVjtFVXYrSE07SUFPSTtFVm0rSFY7RVUxK0hNO0lBT0k7RVZzK0hWO0VVNytITTtJQU9JO0VWeStIVjtFVWgvSE07SUFPSTtFVjQrSFY7RVVuL0hNO0lBT0k7RVYrK0hWO0VVdC9ITTtJQU9JO0VWay9IVjtFVXovSE07SUFPSTtFVnEvSFY7RVU1L0hNO0lBT0k7RVZ3L0hWO0VVLy9ITTtJQU9JO0VWMi9IVjtFVWxnSU07SUFPSTtFVjgvSFY7RVVyZ0lNO0lBT0k7RVZpZ0lWO0VVeGdJTTtJQU9JO0VWb2dJVjtFVTNnSU07SUFPSTtFVnVnSVY7RVU5Z0lNO0lBT0k7RVYwZ0lWO0VVamhJTTtJQU9JO0VWNmdJVjtFVXBoSU07SUFPSTtFVmdoSVY7RVV2aElNO0lBT0k7RVZtaElWO0VVMWhJTTtJQU9JO0VWc2hJVjtFVTdoSU07SUFPSTtFVnloSVY7RVVoaUlNO0lBT0k7RVY0aElWO0VVbmlJTTtJQU9JO0VWK2hJVjtFVXRpSU07SUFPSTtFVmtpSVY7RVV6aUlNO0lBT0k7RVZxaUlWO0FBQ0Y7QWFoaklJO0VIR0k7SUFPSTtFVjBpSVY7RVVqaklNO0lBT0k7RVY2aUlWO0VVcGpJTTtJQU9JO0VWZ2pJVjtFVXZqSU07SUFPSTtFVm1qSVY7RVUxaklNO0lBT0k7RVZzaklWO0VVN2pJTTtJQU9JO0VWeWpJVjtFVWhrSU07SUFPSTtFVjRqSVY7RVVua0lNO0lBT0k7RVYraklWO0VVdGtJTTtJQU9JO0VWa2tJVjtFVXprSU07SUFPSTtFVnFrSVY7RVU1a0lNO0lBT0k7RVZ3a0lWO0VVL2tJTTtJQU9JO0VWMmtJVjtFVWxsSU07SUFPSTtFVjhrSVY7RVVybElNO0lBT0k7RVZpbElWO0VVeGxJTTtJQU9JO0VWb2xJVjtFVTNsSU07SUFPSTtFVnVsSVY7RVU5bElNO0lBT0k7RVYwbElWO0VVam1JTTtJQU9JO0VWNmxJVjtFVXBtSU07SUFPSTtFVmdtSVY7RVV2bUlNO0lBT0k7RVZtbUlWO0VVMW1JTTtJQU9JO0VWc21JVjtFVTdtSU07SUFPSTtFVnltSVY7RVVobklNO0lBT0k7RVY0bUlWO0VVbm5JTTtJQU9JO0VWK21JVjtFVXRuSU07SUFPSTtFVmtuSVY7RVV6bklNO0lBT0k7RVZxbklWO0VVNW5JTTtJQU9JO0VWd25JVjtFVS9uSU07SUFPSTtFVjJuSVY7RVVsb0lNO0lBT0k7RVY4bklWO0VVcm9JTTtJQU9JO0VWaW9JVjtFVXhvSU07SUFPSTtFVm9vSVY7RVUzb0lNO0lBT0k7RVZ1b0lWO0VVOW9JTTtJQU9JO0VWMG9JVjtFVWpwSU07SUFPSTtFVjZvSVY7RVVwcElNO0lBT0k7RVZncElWO0VVdnBJTTtJQU9JO0VWbXBJVjtFVTFwSU07SUFPSTtFVnNwSVY7RVU3cElNO0lBT0k7RVZ5cElWO0VVaHFJTTtJQU9JO0VWNHBJVjtFVW5xSU07SUFPSTtFVitwSVY7RVV0cUlNO0lBT0k7RVZrcUlWO0VVenFJTTtJQU9JO0VWcXFJVjtFVTVxSU07SUFPSTtFVndxSVY7RVUvcUlNO0lBT0k7RVYycUlWO0VVbHJJTTtJQU9JO0VWOHFJVjtFVXJySU07SUFPSTtFVmlySVY7RVV4cklNO0lBT0k7RVZvcklWO0VVM3JJTTtJQU9JO0VWdXJJVjtFVTlySU07SUFPSTtFVjBySVY7RVVqc0lNO0lBT0k7RVY2cklWO0VVcHNJTTtJQU9JO0VWZ3NJVjtFVXZzSU07SUFPSTtFVm1zSVY7RVUxc0lNO0lBT0k7RVZzc0lWO0VVN3NJTTtJQU9JO0VWeXNJVjtFVWh0SU07SUFPSTtFVjRzSVY7RVVudElNO0lBT0k7RVYrc0lWO0VVdHRJTTtJQU9JO0VWa3RJVjtFVXp0SU07SUFPSTtFVnF0SVY7RVU1dElNO0lBT0k7RVZ3dElWO0VVL3RJTTtJQU9JO0VWMnRJVjtFVWx1SU07SUFPSTtFVjh0SVY7RVVydUlNO0lBT0k7SUFBQTtFVmt1SVY7RVV6dUlNO0lBT0k7SUFBQTtFVnN1SVY7RVU3dUlNO0lBT0k7SUFBQTtFVjB1SVY7RVVqdklNO0lBT0k7SUFBQTtFVjh1SVY7RVVydklNO0lBT0k7SUFBQTtFVmt2SVY7RVV6dklNO0lBT0k7SUFBQTtFVnN2SVY7RVU3dklNO0lBT0k7SUFBQTtFVjB2SVY7RVVqd0lNO0lBT0k7SUFBQTtFVjh2SVY7RVVyd0lNO0lBT0k7SUFBQTtFVmt3SVY7RVV6d0lNO0lBT0k7SUFBQTtFVnN3SVY7RVU3d0lNO0lBT0k7SUFBQTtFVjB3SVY7RVVqeElNO0lBT0k7SUFBQTtFVjh3SVY7RVVyeElNO0lBT0k7SUFBQTtFVmt4SVY7RVV6eElNO0lBT0k7SUFBQTtFVnN4SVY7RVU3eElNO0lBT0k7RVZ5eElWO0VVaHlJTTtJQU9JO0VWNHhJVjtFVW55SU07SUFPSTtFVit4SVY7RVV0eUlNO0lBT0k7RVZreUlWO0VVenlJTTtJQU9JO0VWcXlJVjtFVTV5SU07SUFPSTtFVnd5SVY7RVUveUlNO0lBT0k7RVYyeUlWO0VVbHpJTTtJQU9JO0VWOHlJVjtFVXJ6SU07SUFPSTtFVml6SVY7RVV4eklNO0lBT0k7RVZveklWO0VVM3pJTTtJQU9JO0VWdXpJVjtFVTl6SU07SUFPSTtFVjB6SVY7RVVqMElNO0lBT0k7RVY2eklWO0VVcDBJTTtJQU9JO0VWZzBJVjtFVXYwSU07SUFPSTtFVm0wSVY7RVUxMElNO0lBT0k7RVZzMElWO0VVNzBJTTtJQU9JO0VWeTBJVjtFVWgxSU07SUFPSTtFVjQwSVY7RVVuMUlNO0lBT0k7RVYrMElWO0VVdDFJTTtJQU9JO0VWazFJVjtFVXoxSU07SUFPSTtFVnExSVY7RVU1MUlNO0lBT0k7RVZ3MUlWO0VVLzFJTTtJQU9JO0VWMjFJVjtFVWwySU07SUFPSTtFVjgxSVY7RVVyMklNO0lBT0k7RVZpMklWO0VVeDJJTTtJQU9JO0VWbzJJVjtFVTMySU07SUFPSTtFVnUySVY7RVU5MklNO0lBT0k7RVYwMklWO0VVajNJTTtJQU9JO0VWNjJJVjtFVXAzSU07SUFPSTtFVmczSVY7RVV2M0lNO0lBT0k7RVZtM0lWO0VVMTNJTTtJQU9JO0VWczNJVjtFVTczSU07SUFPSTtFVnkzSVY7RVVoNElNO0lBT0k7RVY0M0lWO0VVbjRJTTtJQU9JO0lBQUE7RVZnNElWO0VVdjRJTTtJQU9JO0lBQUE7RVZvNElWO0VVMzRJTTtJQU9JO0lBQUE7RVZ3NElWO0VVLzRJTTtJQU9JO0lBQUE7RVY0NElWO0VVbjVJTTtJQU9JO0lBQUE7RVZnNUlWO0VVdjVJTTtJQU9JO0lBQUE7RVZvNUlWO0VVMzVJTTtJQU9JO0lBQUE7RVZ3NUlWO0VVLzVJTTtJQU9JO0lBQUE7RVY0NUlWO0VVbjZJTTtJQU9JO0lBQUE7RVZnNklWO0VVdjZJTTtJQU9JO0lBQUE7RVZvNklWO0VVMzZJTTtJQU9JO0lBQUE7RVZ3NklWO0VVLzZJTTtJQU9JO0lBQUE7RVY0NklWO0VVbjdJTTtJQU9JO0VWKzZJVjtFVXQ3SU07SUFPSTtFVms3SVY7RVV6N0lNO0lBT0k7RVZxN0lWO0VVNTdJTTtJQU9JO0VWdzdJVjtFVS83SU07SUFPSTtFVjI3SVY7RVVsOElNO0lBT0k7RVY4N0lWO0VVcjhJTTtJQU9JO0VWaThJVjtFVXg4SU07SUFPSTtFVm84SVY7RVUzOElNO0lBT0k7RVZ1OElWO0VVOThJTTtJQU9JO0VWMDhJVjtFVWo5SU07SUFPSTtFVjY4SVY7RVVwOUlNO0lBT0k7RVZnOUlWO0VVdjlJTTtJQU9JO0VWbTlJVjtFVTE5SU07SUFPSTtFVnM5SVY7RVU3OUlNO0lBT0k7RVZ5OUlWO0VVaCtJTTtJQU9JO0VWNDlJVjtFVW4rSU07SUFPSTtFVis5SVY7RVV0K0lNO0lBT0k7RVZrK0lWO0VVeitJTTtJQU9JO0VWcStJVjtFVTUrSU07SUFPSTtFVncrSVY7RVUvK0lNO0lBT0k7RVYyK0lWO0VVbC9JTTtJQU9JO0VWOCtJVjtFVXIvSU07SUFPSTtFVmkvSVY7RVV4L0lNO0lBT0k7RVZvL0lWO0FBQ0Y7QWdCeGhKQTtFTjRCUTtJQU9JO0VWeS9JVjtFVWhnSk07SUFPSTtFVjQvSVY7RVVuZ0pNO0lBT0k7RVYrL0lWO0VVdGdKTTtJQU9JO0VWa2dKVjtFVXpnSk07SUFPSTtFVnFnSlY7RVU1Z0pNO0lBT0k7RVZ3Z0pWO0VVL2dKTTtJQU9JO0VWMmdKVjtFVWxoSk07SUFPSTtFVjhnSlY7RVVyaEpNO0lBT0k7RVZpaEpWO0VVeGhKTTtJQU9JO0VWb2hKVjtFVTNoSk07SUFPSTtFVnVoSlY7QUFDRjtBaUI3bEpBO0VBRUU7RUFDQTtFQUNBO0VidVJJLDZCQUxJO0VhaFJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RWJzUUksa0NBTEk7RWEvUFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VSakJFO0VTZkYsa0NEa0NxQjtFRXRCakIscUlGd0JKO0FqQjBsSkY7QW1COW1KTTtFRmhCTjtJRWlCUTtFbkJpbkpOO0FBQ0Y7QWlCN2xKRTtFQUNFO0VBRUE7RUFDQTtBakI4bEpKO0FpQjNsSkU7RUFFRTtFQUNBO0VBQ0E7QWpCNGxKSjtBaUJ6bEpFO0VBQ0U7RUNyREYsd0NEc0R1QjtFQUNyQjtFQUNBO0VBS0U7QWpCdWxKTjtBaUJubEpFO0VBQ0U7RUFDQTtFQUtFO0FqQmlsSk47QWlCN2tKRTtFQUtFO0VBQ0E7RUFHQTtBakJ5a0pKO0FpQnRrSkk7RUFLSTtBakJva0pSO0FpQi9qSkU7RUFLSTtBakI2akpOO0FpQnpqSkU7RUFHRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FqQndqSko7O0FpQjVpSkU7RUcvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIrcEpGOztBaUI3akpFO0VHL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCZ3JKRjs7QWlCOWtKRTtFRy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmlzSkY7O0FpQi9sSkU7RUcvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJrdEpGOztBaUJobkpFO0VHL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCbXVKRjs7QWlCam9KRTtFRy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQm92SkY7O0FpQmxwSkU7RUcvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJxd0pGOztBaUJucUpFO0VHL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCc3hKRjs7QWlCMXBKRTtFR2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQjh3SkY7O0FpQjNxSkU7RUdoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIreEpGOztBaUI1ckpFO0VHaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCZ3pKRjs7QWlCN3NKRTtFR2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmkwSkY7O0FpQjl0SkU7RUdoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJrMUpGOztBaUIvdUpFO0VHaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCbTJKRjs7QWlCaHdKRTtFR2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQm8zSkY7O0FpQmp4SkU7RUdoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEJxNEpGOztBaUJ0eEpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsMEJWOFF3QztBUDBnSjFDO0FpQjl3SkU7RUFDRTtBakJneEpKO0FpQjd3SkU7RUFDRTtBakIrd0pKOztBaUJwd0pBO0VHakpFO0VBQ0E7RWhCOE5JLDJCQUxJO0VnQnZOUjtBcEJ5NUpGOztBaUJ2d0pBO0VHckpFO0VBQ0E7RWhCOE5JLDRCQUxJO0VnQnZOUjtBcEJnNkpGOztBcUIvOUpBO0VBQ0UscUJkdTJCc0M7QVAybkl4Qzs7QXFCejlKQTtFQUNFO0VBQ0E7RUFDQTtFakI4UUksa0JBTEk7RWlCclFSLGlCYnlFaUI7QVJpNUpuQjs7QXFCdDlKQTtFQUNFO0VBQ0E7RWpCb1FJLGtCQUxJO0FKMnRKVjs7QXFCdDlKQTtFQUNFO0VBQ0E7RWpCOFBJLG1CQUxJO0FKaXVKVjs7QXNCdi9KQTtFQUNFLG1CZisxQnNDO0VIcmtCbEMsa0JBTEk7RWtCalJSLGdDZisxQnNDO0FQeXBJeEM7O0F1QjcvSkE7RUFDRTtFQUNBO0VBQ0E7RW5Cd1JJLG9CQUxJO0VtQmhSUixnQmhCa21CNEI7RWdCam1CNUIsaUJmbUZpQjtFZWxGakIsMkJoQjQzQnNDO0VnQjMzQnRDO0VBQ0EsbUNoQnEzQnNDO0VnQnAzQnRDO0VBQ0E7RWRHRTtFVUhFLHdFSU1KO0F2QjIvSkY7QW1CNy9KTTtFSWhCTjtJSmlCUTtFbkJnZ0tOO0FBQ0Y7QXVCOS9KRTtFQUNFO0F2QmdnS0o7QXVCOS9KSTtFQUNFO0F2QmdnS047QXVCMy9KRTtFQUNFLDJCaEJzMkJvQztFZ0JyMkJwQyxtQ2hCZzJCb0M7RWdCLzFCcEMscUJoQjgyQm9DO0VnQjcyQnBDO0VBS0UsaURoQmtoQmtCO0FQdStJeEI7QXVCci9KRTtFQU1FO0VBTUE7RUFLQTtBdkJ5K0pKO0F1QnArSkU7RUFDRTtFQUNBO0F2QnMrSko7QXVCbCtKRTtFQUNFLGdDaEI0MEJvQztFZ0IxMEJwQztBdkJtK0pKO0F1QjM5SkU7RUFFRSx3Q2hCOHlCb0M7RWdCM3lCcEM7QXZCMDlKSjtBdUJ0OUpFO0VBQ0U7RUFDQTtFQUNBLHVCZnVCYztFZXRCZCwyQmhCc3lCb0M7RVdwNEJ0Qyx1Q1hxaUNnQztFZ0JyOEI5QjtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDaEJnc0IwQjtFZ0IvckIxQjtFSnpGRSxxSUkwRkY7QXZCdzlKSjtBbUI5aUtNO0VJMEVKO0lKekVNO0VuQmlqS047QUFDRjtBdUIxOUpFO0VBQ0Usd0NoQjQ3QjhCO0FQZ2lJbEM7O0F1Qm45SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGlCZjlCaUI7RWUrQmpCLDJCaEIyeEJzQztFZ0IxeEJ0QztFQUNBO0VBQ0E7QXZCczlKRjtBdUJwOUpFO0VBQ0U7QXZCczlKSjtBdUJuOUpFO0VBRUU7RUFDQTtBdkJvOUpKOztBdUJ6OEpBO0VBQ0Usb0VoQjR3QnNDO0VnQjN3QnRDO0VuQnlJSSxtQkFMSTtFS3ZRTjtBVGlsS0o7QXVCMThKRTtFQUNFO0VBQ0E7RUFDQSx5QmhCb29CMEI7QVB3MEk5Qjs7QXVCeDhKQTtFQUNFLGtFaEJnd0JzQztFZ0IvdkJ0QztFbkI0SEksa0JBTEk7RUt2UU47QVQ2bEtKO0F1Qno4SkU7RUFDRTtFQUNBO0VBQ0EsdUJoQjJuQjBCO0FQZzFJOUI7O0F1Qm44SkU7RUFDRSxrRWhCNnVCb0M7QVB5dEl4QztBdUJuOEpFO0VBQ0Usb0VoQjB1Qm9DO0FQMnRJeEM7QXVCbDhKRTtFQUNFLGtFaEJ1dUJvQztBUDZ0SXhDOztBdUIvN0pBO0VBQ0UsV2hCcXVCc0M7RWdCcHVCdEMsOERoQjh0QnNDO0VnQjd0QnRDLGFmL0VvQjtBUmloS3RCO0F1Qmg4SkU7RUFDRTtBdkJrOEpKO0F1Qi83SkU7RUFDRTtFZHZMQTtBVHluS0o7QXVCOTdKRTtFQUNFO0VkNUxBO0FUNm5LSjtBdUI3N0pFO0VBQW9CLGdFaEI4c0JrQjtBUGt2SXhDO0F1Qi83SkU7RUFBb0IsOERoQjhzQmtCO0FQb3ZJeEM7O0F3QmpwS0E7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFcEJxUkksb0JBTEk7RW9CN1FSLGdCakIrbEI0QjtFaUI5bEI1QixpQmhCZ0ZpQjtFZ0IvRWpCLDJCakJ5M0JzQztFaUJ4M0J0QztFQUNBLG1DakJrM0JzQztFaUJqM0J0QztFQUNBO0VBQ0Esc0NqQis5QmtDO0VpQjk5QmxDLDBCakIrOUJrQztFaUI5OUJsQztFZkhFO0VVSEUsd0VLU0o7QXhCaXBLRjtBbUJ0cEtNO0VLZk47SUxnQlE7RW5CeXBLTjtBQUNGO0F3QnBwS0U7RUFDRSxxQmpCczNCb0M7RWlCcjNCcEM7RUFLRSxpRGpCaStCNEI7QVBpcklsQztBd0I5b0tFO0VBRUUsbUJoQmdGYztFZ0IvRWQ7QXhCK29LSjtBd0I1b0tFO0VBRUUsd0NqQnUxQm9DO0FQc3pJeEM7QXdCeG9LRTtFQUNFO0VBQ0E7QXhCMG9LSjs7QXdCdG9LQTtFQUNFLG9CakJzdUI0QjtFaUJydUI1Qix1QmpCcXVCNEI7RWlCcHVCNUIsb0JqQnF1QjRCO0VIbGdCeEIsbUJBTEk7RUt2UU47QVRvcktKOztBd0J0b0tBO0VBQ0UsbUJqQmt1QjRCO0VpQmp1QjVCLHNCakJpdUI0QjtFaUJodUI1QixrQmpCaXVCNEI7RUh0Z0J4QixrQkFMSTtFS3ZRTjtBVDRyS0o7O0F3QnBvS0k7RUFDRTtBeEJ1b0tOOztBeUIvc0tBO0VBQ0U7RUFDQSxtQmxCcTZCd0M7RWtCcDZCeEMsb0JsQnE2QndDO0VrQnA2QnhDLHVCbEJxNkJ3QztBUDZ5STFDO0F5Qmh0S0U7RUFDRTtFQUNBO0F6Qmt0S0o7O0F5QjlzS0E7RUFDRSxxQmxCMjVCd0M7RWtCMTVCeEM7RUFDQTtBekJpdEtGO0F5Qi9zS0U7RUFDRTtFQUNBO0VBQ0E7QXpCaXRLSjs7QXlCN3NLQTtFQUNFO0VBRUE7RUFDQSxhakIwRnVCO0VpQnpGdkIsY2pCeUZ1QjtFaUJ4RnZCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwyRGxCMjRCd0M7RWtCMTRCeEM7QXpCK3NLRjtBeUI1c0tFO0VoQjNCRTtBVDB1S0o7QXlCM3NLRTtFQUVFLGtCbEJtNEJzQztBUHkwSTFDO0F5QnpzS0U7RUFDRSx1QmxCMDNCc0M7QVBpMUkxQztBeUJ4c0tFO0VBQ0UscUJsQnMxQm9DO0VrQnIxQnBDO0VBQ0EsaURsQjhmb0I7QVA0c0p4QjtBeUJ2c0tFO0VBQ0UseUJqQnJCa0I7RWlCc0JsQixxQmpCdEJrQjtBUit0S3RCO0F5QnZzS0k7RUFJSTtBekJzc0tSO0F5QmxzS0k7RUFJSTtBekJpc0tSO0F5QjVyS0U7RUFDRSx5QmpCMUNrQjtFaUIyQ2xCLHFCakIzQ2tCO0VpQmdEaEI7QXpCMHJLTjtBeUJ0cktFO0VBQ0U7RUFDQTtFQUNBLFlsQmsyQnVDO0FQczFJM0M7QXlCanJLSTtFQUNFO0VBQ0EsWWxCeTFCcUM7QVAwMUkzQzs7QXlCcnFLQTtFQUNFLG1CbEJvMUJnQztBUG8xSWxDO0F5QnRxS0U7RUFDRTtFQUVBLFVsQjgwQjhCO0VrQjcwQjlCO0VBQ0E7RUFDQTtFaEJqSEE7RVVIRSxpRE1zSEY7QXpCdXFLSjtBbUJ6eEtNO0VNMEdKO0lOekdNO0VuQjR4S047QUFDRjtBeUIxcUtJO0VBQ0U7QXpCNHFLTjtBeUJ6cUtJO0VBQ0UsaUNsQjYwQjRCO0VrQngwQjFCO0F6QnVxS1I7QXlCbHFLRTtFQUNFLG9CbEJ3ekI4QjtFa0J2ekI5QjtBekJvcUtKO0F5QmxxS0k7RUFDRTtFQUNBO0F6Qm9xS047O0F5Qi9wS0E7RUFDRTtFQUNBLGtCbEJzeUJnQztBUDQzSWxDOztBeUIvcEtBO0VBQ0U7RUFDQTtFQUNBO0F6QmtxS0Y7QXlCOXBLSTtFQUNFO0VBQ0E7RUFDQSxhbEJzcEJ3QjtBUDBnSjlCOztBeUJ6cEtJO0VBQ0U7QXpCNHBLTjs7QTBCLzBLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCazFLRjtBMEJoMUtFO0VBQ0U7QTFCazFLSjtBMEI5MEtJO0VBQTBCLG9FbkI4Z0NhO0FQbTBJM0M7QTBCaDFLSTtFQUEwQixvRW5CNmdDYTtBUHMwSTNDO0EwQmgxS0U7RUFDRTtBMUJrMUtKO0EwQi8wS0U7RUFDRSxXbkIrL0J1QztFbUI5L0J2QyxZbkI4L0J1QztFbUI3L0J2QztFQUNBO0VSMUJGLHlCVnlDb0I7RWtCYmxCLFNuQjYvQnVDO0VFMWdDdkM7RVVIRSw0R09tQkY7QTFCZzFLSjtBbUIvMUtNO0VPTUo7SVBMTTtFbkJrMktOO0FBQ0Y7QTBCbjFLSTtFUmpDRix5Qlg4aEN5QztBUHkxSTNDO0EwQmoxS0U7RUFDRSxXbkJ3K0I4QjtFbUJ2K0I5QixjbkJ3K0I4QjtFbUJ2K0I5QjtFQUNBLGVuQnUrQjhCO0VtQnQrQjlCLHdDbkJ1K0I4QjtFbUJ0K0I5QjtFakI3QkE7QVRpM0tKO0EwQi8wS0U7RUFDRSxXbkJvK0J1QztFbUJuK0J2QyxZbkJtK0J1QztFbUJsK0J2QztFUnBERix5QlZ5Q29CO0VrQmFsQixTbkJtK0J1QztFRTFnQ3ZDO0VVSEUsNEdPNkNGO0ExQmcxS0o7QW1CejNLTTtFT2lDSjtJUGhDTTtFbkI0M0tOO0FBQ0Y7QTBCbjFLSTtFUjNERix5Qlg4aEN5QztBUG0zSTNDO0EwQmoxS0U7RUFDRSxXbkI4OEI4QjtFbUI3OEI5QixjbkI4OEI4QjtFbUI3OEI5QjtFQUNBLGVuQjY4QjhCO0VtQjU4QjlCLHdDbkI2OEI4QjtFbUI1OEI5QjtFakJ2REE7QVQyNEtKO0EwQi8wS0U7RUFDRTtBMUJpMUtKO0EwQi8wS0k7RUFDRSwyQ25CZzlCcUM7QVBpNEkzQztBMEI5MEtJO0VBQ0UsMkNuQjQ4QnFDO0FQbzRJM0M7O0EyQnY2S0E7RUFDRTtBM0IwNktGO0EyQng2S0U7OztFQUdFLHVEcEJ3aUNvQztFb0J2aUNwQywyRHBCdWlDb0M7RW9CdGlDcEMsaUJwQnVpQ29DO0FQbTRJeEM7QTJCdjZLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VSUkUsZ0VRU0Y7QTNCeTZLSjtBbUI5NktNO0VRVEo7SVJVTTtFbkJpN0tOO0FBQ0Y7QTJCMzZLRTs7RUFFRTtBM0I2NktKO0EyQjM2S0k7O0VBQ0U7QTNCODZLTjtBMkIzNktJOzs7RUFFRSxxQnBCNGdDa0M7RW9CM2dDbEMsd0JwQjRnQ2tDO0FQazZJeEM7QTJCMzZLSTs7RUFDRSxxQnBCdWdDa0M7RW9CdGdDbEMsd0JwQnVnQ2tDO0FQdTZJeEM7QTJCMTZLRTtFQUNFLHFCcEJpZ0NvQztFb0JoZ0NwQyx3QnBCaWdDb0M7QVAyNkl4QztBMkJyNktJOzs7O0VBQ0U7RUFDQSw4RHBCMi9Ca0M7QVArNkl4QztBMkJ4NktNOzs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXBCbS9CZ0M7RW9CbC9CaEM7RUFDQSxtQ3BCZzBCZ0M7RUVoM0JwQztBVDg5S0o7QTJCdjZLSTtFQUNFO0VBQ0EsOERwQjArQmtDO0FQKzdJeEM7QTJCcDZLSTtFQUNFO0EzQnM2S047QTJCbDZLRTs7RUFFRSxjcEIxRU87QVA4K0tYO0EyQmw2S0k7O0VBQ0Usd0NwQjB5QmtDO0FQMm5KeEM7O0E0QjUvS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QisvS0Y7QTRCNy9LRTs7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QTVCKy9LSjtBNEIzL0tFOzs7RUFHRTtBNUI2L0tKO0E0QnYvS0U7RUFDRTtFQUNBO0E1QnkvS0o7QTRCdi9LSTtFQUNFO0E1QnkvS047O0E0QjkrS0E7RUFDRTtFQUNBO0VBQ0E7RXhCOE9JLG9CQUxJO0V3QnZPUixnQnJCeWpCNEI7RXFCeGpCNUIsaUJwQjBDaUI7RW9CekNqQiwyQnJCbTFCc0M7RXFCbDFCdEM7RUFDQTtFQUNBLHVDckIwNkJzQztFcUJ6NkJ0QztFbkJ0Q0U7QVR3aExKOztBNEJ4K0tBOzs7O0VBSUU7RXhCd05JLGtCQUxJO0VLdlFOO0FUaWlMSjs7QTRCeCtLQTs7OztFQUlFO0V4QitNSSxtQkFMSTtFS3ZRTjtBVDBpTEo7O0E0QngrS0E7O0VBRUU7QTVCMitLRjs7QTRCOTlLSTs7OztFbkJqRUE7RUFDQTtBVHNpTEo7QTRCNzlLSTs7OztFbkIxRUE7RUFDQTtBVDZpTEo7QTRCdjlLRTtFQUNFO0VuQjFFQTtFQUNBO0FUb2lMSjtBNEJ2OUtFOztFbkI5RUU7RUFDQTtBVHlpTEo7O0E2QmprTEU7RUFDRTtFQUNBO0VBQ0EsbUJ0QnUwQm9DO0VIcmtCbEMsa0JBTEk7RXlCMVBOLGlDdEJrakNxQjtBUGloSnpCOztBNkJoa0xFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXpCcVBFLG1CQUxJO0V5QjdPTixXdEJxaUNxQjtFc0JwaUNyQixtQ3RCb2lDcUI7RUUvakNyQjtBVDhsTEo7O0E2QjlqTEk7Ozs7RUFFRTtBN0Jta0xOOztBNkJsbkxJO0VBcURFLCtDdEJ1aENtQjtFc0JwaENqQixrQ3RCODFCZ0M7RXNCNzFCaEM7RUFDQTtFQUNBO0VBQ0E7QTdCK2pMUjtBNkI1akxNO0VBQ0UsK0N0QjRnQ2lCO0VzQnZnQ2YsMkR0QnVnQ2U7QVBtakp6Qjs7QTZCL25MSTtFQStFSSxrQ3RCdTBCZ0M7RXNCdDBCaEM7QTdCb2pMUjs7QTZCcG9MSTtFQXVGRSwrQ3RCcS9CbUI7QVA0akp6QjtBNkI5aUxRO0VBRUU7RUFDQSxxQnRCcTVCOEI7RXNCcDVCOUI7RUFDQTtBN0IraUxWO0E2QjNpTE07RUFDRSwrQ3RCdytCaUI7RXNCbitCZiwyRHRCbStCZTtBUHNrSnpCOztBNkJscExJO0VBa0hJO0E3Qm9pTFI7O0E2QnRwTEk7RUF5SEUsK0N0Qm05Qm1CO0FQOGtKekI7QTZCL2hMTTtFQUNFLDRDdEJnOUJpQjtBUGlsSnpCO0E2QjloTE07RUFDRSwyRHRCNDhCaUI7QVBvbEp6QjtBNkI3aExNO0VBQ0UsaUN0Qnc4QmlCO0FQdWxKekI7O0E2QjFoTEk7RUFDRTtBN0I2aExOOztBNkJ2cUxJOzs7OztFQW9KTTtBN0IyaExWOztBNkIzcExFO0VBQ0U7RUFDQTtFQUNBLG1CdEJ1MEJvQztFSHJrQmxDLGtCQUxJO0V5QjFQTixtQ3RCa2pDcUI7QVAybUp6Qjs7QTZCMXBMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6QnFQRSxtQkFMSTtFeUI3T04sV3RCcWlDcUI7RXNCcGlDckIsa0N0Qm9pQ3FCO0VFL2pDckI7QVR3ckxKOztBNkJ4cExJOzs7O0VBRUU7QTdCNnBMTjs7QTZCNXNMSTtFQXFERSxpRHRCdWhDbUI7RXNCcGhDakIsa0N0QjgxQmdDO0VzQjcxQmhDO0VBQ0E7RUFDQTtFQUNBO0E3QnlwTFI7QTZCdHBMTTtFQUNFLGlEdEI0Z0NpQjtFc0J2Z0NmLDBEdEJ1Z0NlO0FQNm9KekI7O0E2Qnp0TEk7RUErRUksa0N0QnUwQmdDO0VzQnQwQmhDO0E3QjhvTFI7O0E2Qjl0TEk7RUF1RkUsaUR0QnEvQm1CO0FQc3BKekI7QTZCeG9MUTtFQUVFO0VBQ0EscUJ0QnE1QjhCO0VzQnA1QjlCO0VBQ0E7QTdCeW9MVjtBNkJyb0xNO0VBQ0UsaUR0QncrQmlCO0VzQm4rQmYsMER0Qm0rQmU7QVBncUp6Qjs7QTZCNXVMSTtFQWtISTtBN0I4bkxSOztBNkJodkxJO0VBeUhFLGlEdEJtOUJtQjtBUHdxSnpCO0E2QnpuTE07RUFDRSw4Q3RCZzlCaUI7QVAycUp6QjtBNkJ4bkxNO0VBQ0UsMER0QjQ4QmlCO0FQOHFKekI7QTZCdm5MTTtFQUNFLG1DdEJ3OEJpQjtBUGlySnpCOztBNkJwbkxJO0VBQ0U7QTdCdW5MTjs7QTZCandMSTs7Ozs7RUFzSk07QTdCbW5MVjs7QThCdHdMQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0E5Qm93TEY7O0E4Qjd2TEE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBOUIrdkxGO0E4QjV2TEU7RVg1Q0ksbUNXNkNGO0VBQ0EsOEJ2Qms4Q2dDO0FQNHpJcEM7QW1CeHlMTTtFV3dDSjtJWHZDTTtFbkIyeUxOO0FBQ0Y7QThCandMRTtFQUNFLGV2Qmc4Q2dDO0FQbTBJcEM7QThCL3ZMRTtFQUNFLHNCdkI2N0NnQztBUG8wSXBDOztBOEI3dkxBO0VBQ0U7QTlCZ3dMRjtBOEI5dkxFO0VBQ0U7RUFDQTtBOUJnd0xKO0E4Qjd2TEU7RUFDRTtBOUIrdkxKOztBOEIzdkxBO0VBQ0U7RUFDQTtFQUNBO0E5Qjh2TEY7O0E4QjF2TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXJCckZFO0VxQnlGRjtBOUIwdkxGOztBOEJ0dkxBO0VBRUU7RUFDQTtFQUNBO0VDbEhBO0VBQ0E7RUFDQTtFQUNBLGtDRGtIMEI7RUNqSDFCO0VBQ0E7RUFDQSx1Q0QrRzREO0E5QjR2TDlEO0ErQngyTEU7RUFBUztBL0IyMkxYO0ErQjEyTEU7RUFBUyxtQ0QyR2lGO0E5Qmt3TDVGOztBOEI3dkxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFckJyR0U7RUFDQTtBVHMyTEo7QThCL3ZMRTtFQUNFO0VBQ0E7QTlCaXdMSjs7QThCNXZMQTtFQUNFO0VBQ0E7QTlCK3ZMRjs7QThCMXZMQTtFQUNFO0VBR0E7RUFDQTtBOUIydkxGOztBOEJ2dkxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFckJ6SEU7RUFDQTtBVG8zTEo7QThCdHZMRTtFQUNFO0E5Qnd2TEo7O0FhbjJMSTtFaUJpSEY7SUFDRTtJQUNBO0U5QnN2TEY7RThCbHZMQTtJQUNFO0lBQ0E7SUFDQTtFOUJvdkxGO0U4Qmp2TEE7SUFDRTtFOUJtdkxGO0FBQ0Y7QWFsM0xJO0VpQm1JRjs7SUFFRTtFOUJrdkxGO0FBQ0Y7QWF4M0xJO0VpQjBJRjtJQUNFO0U5Qml2TEY7QUFDRjtBOEJ4dUxJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlCMHVMTjtBOEJ4dUxNO0VBQ0U7RUFDQTtFckJ6TUo7QVRvN0xKO0E4QnZ1TE07O0VyQjdNRjtBVHc3TEo7QThCdHVMTTtFQUNFO0E5Qnd1TFI7O0FhbDRMSTtFaUJ3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFOUI4dkxKO0U4QjV2TEk7SUFDRTtJQUNBO0lyQnpNSjtFVHc4TEY7RThCM3ZMSTs7SXJCN01GO0VUNDhMRjtFOEIxdkxJO0lBQ0U7RTlCNHZMTjtBQUNGO0FhdjVMSTtFaUJ3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFOUJreExKO0U4Qmh4TEk7SUFDRTtJQUNBO0lyQnpNSjtFVDQ5TEY7RThCL3dMSTs7SXJCN01GO0VUZytMRjtFOEI5d0xJO0lBQ0U7RTlCZ3hMTjtBQUNGO0FhMzZMSTtFaUJ3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFOUJzeUxKO0U4QnB5TEk7SUFDRTtJQUNBO0lyQnpNSjtFVGcvTEY7RThCbnlMSTs7SXJCN01GO0VUby9MRjtFOEJseUxJO0lBQ0U7RTlCb3lMTjtBQUNGO0FhLzdMSTtFaUJ3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFOUIwekxKO0U4Qnh6TEk7SUFDRTtJQUNBO0lyQnpNSjtFVG9nTUY7RThCdnpMSTs7SXJCN01GO0VUd2dNRjtFOEJ0ekxJO0lBQ0U7RTlCd3pMTjtBQUNGO0FhbjlMSTtFaUJ3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFOUI4MExKO0U4QjUwTEk7SUFDRTtJQUNBO0lyQnpNSjtFVHdoTUY7RThCMzBMSTs7SXJCN01GO0VUNGhNRjtFOEIxMExJO0lBQ0U7RTlCNDBMTjtBQUNGO0FnQ2pqTUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDa2pNRjs7QWFyL0xJO0VtQjVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWI1QkEsMENhOEJBO0VoQ21pTUo7QUFDRjtBbUI5ak1NO0VhWUo7SWJYTTtFbkJpa01OO0FBQ0Y7QWEzZ01JO0VtQjVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDMGlNTjtFZ0N2aU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEN5aU1OO0VnQ3RpTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEN3aU1OO0VnQ3JpTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDdWlNTjtFZ0NwaU1JO0lBRUU7RWhDcWlNTjtFZ0NsaU1JO0lBR0U7RWhDa2lNTjtBQUNGO0FhL2pNSTtFbUIvQkY7SUFpRU07SUFDQTtJQUNBO0VoQ2lpTU47RWdDL2hNTTtJQUNFO0VoQ2lpTVI7RWdDOWhNTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RWhDK2hNUjtBQUNGOztBYW5rTUk7RW1CNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJYjVCQSwwQ2E4QkE7RWhDaW5NSjtBQUNGO0FtQjVvTU07RWFZSjtJYlhNO0VuQitvTU47QUFDRjtBYXpsTUk7RW1CNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEN3bk1OO0VnQ3JuTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ3VuTU47RWdDcG5NSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ3NuTU47RWdDbm5NSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaENxbk1OO0VnQ2xuTUk7SUFFRTtFaENtbk1OO0VnQ2huTUk7SUFHRTtFaENnbk1OO0FBQ0Y7QWE3b01JO0VtQi9CRjtJQWlFTTtJQUNBO0lBQ0E7RWhDK21NTjtFZ0M3bU1NO0lBQ0U7RWhDK21NUjtFZ0M1bU1NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFaEM2bU1SO0FBQ0Y7O0FhanBNSTtFbUI1Q0Y7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0liNUJBLDBDYThCQTtFaEMrck1KO0FBQ0Y7QW1CMXRNTTtFYVlKO0liWE07RW5CNnRNTjtBQUNGO0FhdnFNSTtFbUI1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ3NzTU47RWdDbnNNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDcXNNTjtFZ0Nsc01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDb3NNTjtFZ0Nqc01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ21zTU47RWdDaHNNSTtJQUVFO0VoQ2lzTU47RWdDOXJNSTtJQUdFO0VoQzhyTU47QUFDRjtBYTN0TUk7RW1CL0JGO0lBaUVNO0lBQ0E7SUFDQTtFaEM2ck1OO0VnQzNyTU07SUFDRTtFaEM2ck1SO0VnQzFyTU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0VoQzJyTVI7QUFDRjs7QWEvdE1JO0VtQjVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWI1QkEsMENhOEJBO0VoQzZ3TUo7QUFDRjtBbUJ4eU1NO0VhWUo7SWJYTTtFbkIyeU1OO0FBQ0Y7QWFydk1JO0VtQjVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDb3hNTjtFZ0NqeE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaENteE1OO0VnQ2h4TUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaENreE1OO0VnQy93TUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWhDaXhNTjtFZ0M5d01JO0lBRUU7RWhDK3dNTjtFZ0M1d01JO0lBR0U7RWhDNHdNTjtBQUNGO0FhenlNSTtFbUIvQkY7SUFpRU07SUFDQTtJQUNBO0VoQzJ3TU47RWdDendNTTtJQUNFO0VoQzJ3TVI7RWdDeHdNTTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7RWhDeXdNUjtBQUNGOztBYTd5TUk7RW1CNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJYjVCQSwwQ2E4QkE7RWhDMjFNSjtBQUNGO0FtQnQzTU07RWFZSjtJYlhNO0VuQnkzTU47QUFDRjtBYW4wTUk7RW1CNUJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaENrMk1OO0VnQy8xTUk7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ2kyTU47RWdDOTFNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VoQ2cyTU47RWdDNzFNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEMrMU1OO0VnQzUxTUk7SUFFRTtFaEM2MU1OO0VnQzExTUk7SUFHRTtFaEMwMU1OO0FBQ0Y7QWF2M01JO0VtQi9CRjtJQWlFTTtJQUNBO0lBQ0E7RWhDeTFNTjtFZ0N2MU1NO0lBQ0U7RWhDeTFNUjtFZ0N0MU1NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFaEN1MU1SO0FBQ0Y7O0FnQ3Y2TUU7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ViNUJBLDBDYThCQTtBaEN3Nk1OO0FtQmw4TU07RWFZSjtJYlhNO0VuQnE4TU47QUFDRjtBZ0MzNk1NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEM2Nk1SO0FnQzE2TU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzQ2TVI7QWdDejZNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQzI2TVI7QWdDeDZNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEMwNk1SO0FnQ3Y2TU07RUFFRTtBaEN3Nk1SO0FnQ3I2TU07RUFHRTtBaENxNk1SOztBZ0MxNE1BO0VEcEhFO0VBQ0E7RUFDQTtFQUNBLGF4QjBtQ2tDO0V3QnptQ2xDO0VBQ0E7RUFDQSx5QnZCc0NNO0FSNDlNUjtBK0IvL01FO0VBQVM7QS9Ca2dOWDtBK0JqZ05FO0VBQVMsWXhCbStDeUI7QVBpaUtwQzs7QWdDdDVNQTtFQUNFO0VBQ0E7RUFDQTtBaEN5NU1GO0FnQ3Y1TUU7RUFDRTtFQUNBO0FoQ3k1TUo7O0FnQ3I1TUE7RUFDRTtFQUNBO0FoQ3c1TUY7O0FnQ3I1TUE7RUFDRTtFQUNBO0VBQ0E7QWhDdzVNRjs7QWlDcmlOQTtFQUVFO0VBQ0E7RTdCNFJJLCtCQUxJO0U2QnJSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUNwQkE7RUFDQTtBbEMwak5GOztBaUNuaU5BO0VBQ0U7RUFDQTtFQUNBO0U3QmdRSSx5Q0FMSTtFNkJ6UFI7RUFDQTtFQUNBO0VBQ0E7RWRwQkkscUljcUJKO0FqQ3NpTkY7QW1CdmpOTTtFY1FOO0lkUFE7RW5CMGpOTjtBQUNGO0FpQ3ppTkU7RUFDRTtFQUNBO0VBRUE7RUFDQTtBakMwaU5KO0FpQ3ZpTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxVMUIydUNnQztFMEIxdUNoQztBakN5aU5KO0FpQ3RpTkU7RUFFRTtFQUNBO0VmdERGLGdEZXVEdUI7RUFDckI7QWpDdWlOSjtBaUNwaU5FO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QWpDcWlOSjs7QWlDaGlORTtFQUNFLDhDMUI4c0NnQztBUHExS3BDO0FpQzloTk07RXhCOUJGO0VBQ0E7QVQrak5KO0FpQzVoTk07RXhCbERGO0VBQ0E7QVRpbE5KOztBaUMvZ05BO0VFbEdFO0VBQ0E7RS9CMFJJLGtDQUxJO0UrQm5SUjtBbkNxbk5GOztBaUNsaE5BO0VFdEdFO0VBQ0E7RS9CMFJJLG1DQUxJO0UrQm5SUjtBbkM0bk5GOztBb0Nub05BO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VoQytRSSx5Q0FMSTtFZ0N4UVI7RUFDQTtFM0JBRTtBVG1vTko7O0FvQzduTkU7RUFDRTtBcENnb05KO0FvQzluTkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcENnb05OO0FvQzVuTkU7RUFDRTtBcEM4bk5KOztBcUNscU5BOzs7Ozs7RUFNRTtBckNxcU5GOztBcUNscU5BO0VBQ0U7QXJDcXFORjtBc0M3b05JO0VBQ0U7RUFDQSxvQi9CNmhCd0I7RStCNWhCeEIsdUIvQjJoQndCO0UrQjFoQnhCO0VBckNKO0VBQ0E7RUFDQTtFQUNBO0F0Q3FyTkY7QXNDM25OSTtFQUNFO0F0QzZuTk47O0FxQzNxTkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQ3VRSSw2QkFMSTtFaUNoUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakMwT0ksdUNBTEk7RWlDbk9SO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFNUJ6Q0U7QVRxdE5KO0FxQ3hxTkU7RUFDRTtFQUNBO0VBQ0E7QXJDMHFOSjs7QXFDbHBOSTtFQUNFO0FyQ3FwTk47QXFDbnBOTTtFQUNFO0VBQ0E7QXJDcXBOUjs7QXFDanBOSTtFQUNFO0FyQ29wTk47QXFDbHBOTTtFQUNFO0VBQ0E7QXJDb3BOUjs7QWE5ck5JO0V3QjRCQTtJQUNFO0VyQ3NxTko7RXFDcHFOSTtJQUNFO0lBQ0E7RXJDc3FOTjtFcUNscU5FO0lBQ0U7RXJDb3FOSjtFcUNscU5JO0lBQ0U7SUFDQTtFckNvcU5OO0FBQ0Y7QWEvc05JO0V3QjRCQTtJQUNFO0VyQ3NyTko7RXFDcHJOSTtJQUNFO0lBQ0E7RXJDc3JOTjtFcUNsck5FO0lBQ0U7RXJDb3JOSjtFcUNsck5JO0lBQ0U7SUFDQTtFckNvck5OO0FBQ0Y7QWEvdE5JO0V3QjRCQTtJQUNFO0VyQ3NzTko7RXFDcHNOSTtJQUNFO0lBQ0E7RXJDc3NOTjtFcUNsc05FO0lBQ0U7RXJDb3NOSjtFcUNsc05JO0lBQ0U7SUFDQTtFckNvc05OO0FBQ0Y7QWEvdU5JO0V3QjRCQTtJQUNFO0VyQ3N0Tko7RXFDcHROSTtJQUNFO0lBQ0E7RXJDc3ROTjtFcUNsdE5FO0lBQ0U7RXJDb3ROSjtFcUNsdE5JO0lBQ0U7SUFDQTtFckNvdE5OO0FBQ0Y7QWEvdk5JO0V3QjRCQTtJQUNFO0VyQ3N1Tko7RXFDcHVOSTtJQUNFO0lBQ0E7RXJDc3VOTjtFcUNsdU5FO0lBQ0U7RXJDb3VOSjtFcUNsdU5JO0lBQ0U7SUFDQTtFckNvdU5OO0FBQ0Y7QXFDM3RORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyQzZ0Tko7QXNDanpOSTtFQUNFO0VBQ0Esb0IvQjZoQndCO0UrQjVoQnhCLHVCL0IyaEJ3QjtFK0IxaEJ4QjtFQTlCSjtFQUNBO0VBQ0E7RUFDQTtBdENrMU5GO0FzQy94Tkk7RUFDRTtBdENpeU5OOztBcUNqdU5FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNvdU5KO0FzQ3QwTkk7RUFDRTtFQUNBLG9CL0I2aEJ3QjtFK0I1aEJ4Qix1Qi9CMmhCd0I7RStCMWhCeEI7RUF2Qko7RUFDQTtFQUNBO0VBQ0E7QXRDZzJORjtBc0Nwek5JO0VBQ0U7QXRDc3pOTjtBcUM1dU5JO0VBQ0U7QXJDOHVOTjs7QXFDeHVORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDMnVOSjtBc0M5MU5JO0VBQ0U7RUFDQSxvQi9CNmhCd0I7RStCNWhCeEIsdUIvQjJoQndCO0UrQjFoQnhCO0F0Q2cyTk47QXNDcjFOTTtFQUNFO0F0Q3UxTlI7QXNDcDFOTTtFQUNFO0VBQ0EscUIvQjBnQnNCO0UrQnpnQnRCLHVCL0J3Z0JzQjtFK0J2Z0J0QjtFQW5DTjtFQUNBO0VBQ0E7QXRDMDNORjtBc0NwMU5JO0VBQ0U7QXRDczFOTjtBcUMzdk5JO0VBQ0U7QXJDNnZOTjs7QXFDdHZOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDeXZORjs7QXFDbnZOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0I5QnliNEI7RThCeGI1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVCdEtFO0FUNjVOSjtBcUNwdk5FO0VBRUU7RW5CMUxGLGtEbUI0THVCO0FyQ292TnpCO0FxQ2p2TkU7RUFFRTtFQUNBO0VuQmxNRixtRG1CbU11QjtBckNrdk56QjtBcUMvdU5FO0VBRUU7RUFDQTtFQUNBO0FyQ2d2Tko7O0FxQzF1TkE7RUFDRTtBckM2dU5GOztBcUN6dU5BO0VBQ0U7RUFDQTtFQUNBO0VqQ21FSSxtQkFMSTtFaUM1RFI7RUFDQTtBckM0dU5GOztBcUN4dU5BO0VBQ0U7RUFDQTtFQUNBO0FyQzJ1TkY7O0FxQ3Z1TkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDeXVORjs7QXVDNTlOQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkM4OU5GOztBdUMxOU5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbkM0UEksZUFMSTtFbUNyUFI7RUFDQTtFQUNBO0VBQ0E7RTlCckJFO0U4QnVCRjtFcEIxQkksMENvQjJCSjtBdkM2OU5GO0FtQnAvTk07RW9CVU47SXBCVFE7RW5CdS9OTjtBQUNGO0F1Q2grTkU7RUFDRTtFQUNBO0VBQ0E7QXZDaytOSjtBdUNoK05JO0VBQ0U7RUFDQTtBdkNrK05OO0F1Qzc5TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VwQmpERSxtRG9Ca0RGO0F2Qys5Tko7QW1CN2dPTTtFb0JxQ0o7SXBCcENNO0VuQmdoT047QUFDRjtBdUNqK05FO0VBQ0U7QXZDbStOSjtBdUNoK05FO0VBQ0U7RUFDQTtFQUNBO0F2Q2srTko7O0F1Qzk5TkE7RUFDRTtBdkNpK05GOztBdUM5OU5BO0VBQ0U7RUFDQTtFQUNBO0F2Q2krTkY7QXVDLzlORTtFOUI3REU7RUFDQTtBVCtoT0o7QXVDaCtOSTtFOUJoRUE7RUFDQTtBVG1pT0o7QXVDLzlORTtFQUNFO0F2Q2krTko7QXVDNzlORTtFOUI1REU7RUFDQTtBVDRoT0o7QXVDNzlOTTtFOUJoRUY7RUFDQTtBVGdpT0o7QXVDNTlOSTtFOUJyRUE7RUFDQTtBVG9pT0o7O0F1QzE5TkE7RUFDRTtBdkM2OU5GOztBdUNwOU5FO0VBQ0U7RUFDQTtFOUI5R0E7QVRza09KO0F1Q3I5Tkk7RUFBZ0I7QXZDdzlOcEI7QXVDdjlOSTtFQUFlO0F2QzA5Tm5CO0F1Q3Q5Tk07RTlCdEhGO0FUK2tPSjtBdUNsOU5JO0U5QjdIQTtBVGtsT0o7O0F1Qzc4Tkk7RUFDRTtFQUNBO0F2Q2c5Tk47O0F3QzFtT0E7RXJCZ0JNLGdDcUJmSjtBeEM2bU9GO0FtQjFsT007RXFCcEJOO0lyQnFCUTtFbkI2bE9OO0FBQ0Y7QXdDaG5PRTtFQUNFO0F4Q2tuT0o7O0F3QzVtT0U7RUFDRTtBeEMrbU9KOztBd0MzbU9BO0VBQ0U7RUFDQTtFckJESSw2QnFCRUo7QXhDOG1PRjtBbUI1bU9NO0VxQkxOO0lyQk1RO0VuQittT047QUFDRjtBd0Nqbk9FO0VBQ0U7RUFDQTtFckJORSw0QnFCT0Y7QXhDbW5PSjtBbUJ0bk9NO0VxQkFKO0lyQkNNO0VuQnluT047QUFDRjs7QXlDM29PQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaENIRTtBVCtvT0o7O0F5Q3ZvT0E7RUFFRTtBekN5b09GOztBeUNyb09BO0VBQ0UsZ0JqQ3FEaUI7RWlDcERqQjtBekN3b09GOztBeUNob09BO0VBQ0UsbUJsQ3MrQzhCO0FQNnBMaEM7QXlDaG9PRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDa29PSjs7QXlDMW5PRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6QzZuT0o7O0F5Q2pvT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekNvb09KOztBeUN4b09FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDMm9PSjs7QXlDL29PRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6Q2twT0o7O0F5Q3RwT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekN5cE9KOztBeUM3cE9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpDZ3FPSjs7QXlDcHFPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6Q3VxT0o7O0F5QzNxT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekM4cU9KOztBMEN6dU9BO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUN3dU9GOztBMENydU9BO0VBQ0U7RUFDQTtFdENzUUksdUNBTEk7RXNDL1BSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXZCZkksdUd1QmdCSjtBMUN3dU9GO0FtQnB2T007RXVCR047SXZCRlE7RW5CdXZPTjtBQUNGO0EwQzN1T0U7RUFFRTtBMUM0dU9KO0EwQ3h1T0U7RUFDRTtFQUNBLGlEbkNraEJvQjtBUHd0TnhCO0EwQ3R1T0U7RUFFRTtFQUNBO0VBQ0E7QTFDdXVPSjs7QTBDL3RPQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QTFDK3RPRjtBMEM3dE9FO0VBQ0U7RUFDQTtFakM3Q0E7RUFDQTtBVDZ3T0o7QTBDOXRPSTtFQUdFO0VBQ0E7QTFDOHRPTjtBMEMxdE9FOztFQUVFO0VBQ0E7RUFDQTtBMUM0dE9KO0EwQ3p0T0U7RUFFRTtFakNqRUE7RUFDQTtBVDR4T0o7O0EwQ2p0T0E7RUFFRTtFQUNBO0VBQ0E7QTFDbXRPRjtBMENodE9FO0VqQzVGRTtBVCt5T0o7QTBDL3NPRTs7RUFFRTtFeEJqSEYsb0R3QmtIdUI7QTFDaXRPekI7O0EwQ3hzT0E7RUFFRTtFQUNBO0VBQ0E7RUFHQTtBMUN3c09GO0EwQ3RzT0U7RUFDRTtFQUNBO0VBQ0E7QTFDd3NPSjtBMEN0c09JO0VBRUU7QTFDdXNPTjtBMENuc09FOztFQUVFLGdCbEM5RGU7RWtDK0RmO0VBQ0E7QTFDcXNPSjs7QTBDM3JPRTs7RUFFRTtFQUNBO0ExQzhyT0o7O0EwQ3pyT0U7O0VBRUU7RUFDQTtFQUNBO0ExQzRyT0o7O0EwQ3RyT0U7O0VBQ0U7QTFDMHJPSjs7QTBDaHJPRTtFQUNFO0ExQ21yT0o7QTBDanJPRTtFQUNFO0ExQ21yT0o7O0EyQ2ozT0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQSxtQm5DbEJPO0VtQ21CUCxtQnBDdXNCNEI7RW9DdHNCNUI7QTNDaTNPRjtBMkMxMk9FO0VBQ0U7RUFFQTtFQUNBO0VBQ0EsMkNwQytzQjBCO0VvQzlzQjFCO0EzQzIyT0o7QTJDeDJPRTtFQUNFO0EzQzAyT0o7QTJDdjJPRTtFQUNFO0EzQ3kyT0o7O0EyQ3IyT0E7RUFDRTtBM0N3Mk9GOztBMkNqMk9BO0VBQ0U7QTNDbzJPRjs7QTJDMTFPRTtFQUNFO0EzQzYxT0o7O0EyQzkwT0U7RUFDRTtBM0NpMU9KO0EyQzkwT0k7RUFDRTtBM0NnMU9OOztBMkN6ME9FO0VBQ0U7QTNDNDBPSjtBMkN6ME9FO0VBQ0U7QTNDMjBPSjs7QTJDajBPRTtFQUNFO0VBQ0E7QTNDbzBPSjs7QTJDOXpPRTtFQUNFO0VBQ0E7QTNDaTBPSjs7QTJDenpPQTtFQUNFO0VBQ0E7QTNDNHpPRjs7QTJDcHpPRTtFQUNFO0VBQ0E7QTNDdXpPSjs7QTRDbjhPRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDKzdPSjs7QTRDajlPRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDNjhPSjs7QTRDLzlPRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDMjlPSjs7QTRDNytPRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDeStPSjs7QTRDMy9PRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDdS9PSjs7QTRDemdQRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDcWdQSjs7QTRDdmhQRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDbWhQSjs7QTRDcmlQRTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTVDaWlQSjs7QTJDaDVPSTtFQUNFO0VBQ0E7QTNDbTVPTjs7QWE5K09JO0U4QnlGQTtJQUNFO0lBQ0E7RTNDeTVPSjtBQUNGO0Fhci9PSTtFOEJ5RkE7SUFDRTtJQUNBO0UzQys1T0o7QUFDRjtBYTMvT0k7RThCeUZBO0lBQ0U7SUFDQTtFM0NxNk9KO0FBQ0Y7QWFqZ1BJO0U4QnlGQTtJQUNFO0lBQ0E7RTNDMjZPSjtBQUNGO0FhdmdQSTtFOEJ5RkE7SUFDRTtJQUNBO0UzQ2k3T0o7QUFDRjtBRXhsUEU7Ozs7RUFBQTtBQ0RGOztFQVNJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7RUFPQTtFQzJPSSx5QkFMSTtFRHBPUjtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQU1BO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0FIdWxQRjs7QUt2c1BJO0VGc0hBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdFO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdGO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QUh1bFBKOztBNkM1d1BFO0VBQ0U7RUFDQTtFQUNBO0E3Qyt3UEo7O0E4Q2x4UEU7RUFDRTtFQUNBO0E5Q3F4UEo7O0E4Q3Z4UEU7RUFDRTtFQUNBO0E5QzB4UEo7O0E4QzV4UEU7RUFDRTtFQUNBO0E5Qyt4UEo7O0E4Q2p5UEU7RUFDRTtFQUNBO0E5Q295UEo7O0E4Q3R5UEU7RUFDRTtFQUNBO0E5Q3l5UEo7O0E4QzN5UEU7RUFDRTtFQUNBO0E5Qzh5UEo7O0E4Q2h6UEU7RUFDRTtFQUNBO0E5Q216UEo7O0E4Q3J6UEU7RUFDRTtFQUNBO0E5Q3d6UEo7O0ErQzF6UEU7RUFDRTtFQUNBO0EvQzZ6UEo7QStDMXpQTTtFQUdFO0VBQ0E7QS9DMHpQUjs7QStDbjBQRTtFQUNFO0VBQ0E7QS9DczBQSjtBK0NuMFBNO0VBR0U7RUFDQTtBL0NtMFBSOztBK0M1MFBFO0VBQ0U7RUFDQTtBL0MrMFBKO0ErQzUwUE07RUFHRTtFQUNBO0EvQzQwUFI7O0ErQ3IxUEU7RUFDRTtFQUNBO0EvQ3cxUEo7QStDcjFQTTtFQUdFO0VBQ0E7QS9DcTFQUjs7QStDOTFQRTtFQUNFO0VBQ0E7QS9DaTJQSjtBK0M5MVBNO0VBR0U7RUFDQTtBL0M4MVBSOztBK0N2MlBFO0VBQ0U7RUFDQTtBL0MwMlBKO0ErQ3YyUE07RUFHRTtFQUNBO0EvQ3UyUFI7O0ErQ2gzUEU7RUFDRTtFQUNBO0EvQ20zUEo7QStDaDNQTTtFQUdFO0VBQ0E7QS9DZzNQUjs7QStDejNQRTtFQUNFO0VBQ0E7QS9DNDNQSjtBK0N6M1BNO0VBR0U7RUFDQTtBL0N5M1BSOztBK0NsM1BBO0VBQ0U7RUFDQTtBL0NxM1BGO0ErQ2wzUEk7RUFFRTtFQUNBO0EvQ20zUE47O0FnRDc0UEE7RUFDRTtFQUVBO0FoRCs0UEY7O0FpRGw1UEE7RUFDRTtFQUNBLGExQzZjNEI7RTBDNWM1QjtFQUNBO0VBQ0EsNkIxQzJjNEI7RTBDMWM1QjtBakRxNVBGO0FpRG41UEU7RUFDRTtFQUNBLFUxQ3VjMEI7RTBDdGMxQixXMUNzYzBCO0UwQ3JjMUI7RTlCSUUsc0M4QkhGO0FqRHE1UEo7QW1COTRQTTtFOEJaSjtJOUJhTTtFbkJpNVBOO0FBQ0Y7O0FpRG41UEk7RUFDRTtBakRzNVBOOztBa0R6NlBBO0VBQ0U7RUFDQTtBbEQ0NlBGO0FrRDE2UEU7RUFDRTtFQUNBO0VBQ0E7QWxENDZQSjtBa0R6NlBFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEQyNlBKOztBa0R0NlBFO0VBQ0U7QWxEeTZQSjs7QWtEMTZQRTtFQUNFO0FsRDY2UEo7O0FrRDk2UEU7RUFDRTtBbERpN1BKOztBa0RsN1BFO0VBQ0U7QWxEcTdQSjs7QW1EMThQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTVDdW1Da0M7QVBzMk5wQzs7QW1EMThQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTVDK2xDa0M7QVA4Mk5wQzs7QW1EcjhQSTtFQUNFO0VBQ0E7RUFDQSxhNUNtbEM4QjtBUHEzTnBDOztBbURyOFBJO0VBQ0U7RUFDQTtFQUNBLGE1QzZrQzhCO0FQMjNOcEM7O0FhejZQSTtFc0N4Q0E7SUFDRTtJQUNBO0lBQ0EsYTVDbWxDOEI7RVBrNE5sQztFbURsOVBFO0lBQ0U7SUFDQTtJQUNBLGE1QzZrQzhCO0VQdTRObEM7QUFDRjtBYXQ3UEk7RXNDeENBO0lBQ0U7SUFDQTtJQUNBLGE1Q21sQzhCO0VQODRObEM7RW1EOTlQRTtJQUNFO0lBQ0E7SUFDQSxhNUM2a0M4QjtFUG01TmxDO0FBQ0Y7QWFsOFBJO0VzQ3hDQTtJQUNFO0lBQ0E7SUFDQSxhNUNtbEM4QjtFUDA1TmxDO0VtRDErUEU7SUFDRTtJQUNBO0lBQ0EsYTVDNmtDOEI7RVArNU5sQztBQUNGO0FhOThQSTtFc0N4Q0E7SUFDRTtJQUNBO0lBQ0EsYTVDbWxDOEI7RVBzNk5sQztFbUR0L1BFO0lBQ0U7SUFDQTtJQUNBLGE1QzZrQzhCO0VQMjZObEM7QUFDRjtBYTE5UEk7RXNDeENBO0lBQ0U7SUFDQTtJQUNBLGE1Q21sQzhCO0VQazdObEM7RW1EbGdRRTtJQUNFO0lBQ0E7SUFDQSxhNUM2a0M4QjtFUHU3TmxDO0FBQ0Y7QW9EcGlRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRHNpUUY7O0FvRG5pUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcERzaVFGOztBcUQ5aVFBOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXREK2lRRjtBc0Q1aVFFOztFQUNFO0F0RCtpUUo7O0F1RDdqUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVWhEZ2NzQztFZ0QvYnRDO0F2RGdrUUo7O0F3RHhrUUE7RUNBRTtFQUNBO0VBQ0E7QXpENGtRRjs7QTBEbGxRQTtFQUNFO0VBQ0E7RUFDQSw2Qm5EaXNCNEI7RW1EaHNCNUI7RUFDQTtFQUNBLGFuRDJyQjRCO0FQMDVPOUI7O0FVemhRUTtFQU9JO0FWc2hRWjs7QVU3aFFRO0VBT0k7QVYwaFFaOztBVWppUVE7RUFPSTtBVjhoUVo7O0FVcmlRUTtFQU9JO0FWa2lRWjs7QVV6aVFRO0VBT0k7QVZzaVFaOztBVTdpUVE7RUFPSTtBVjBpUVo7O0FVampRUTtFQU9JO0FWOGlRWjs7QVVyalFRO0VBT0k7QVZralFaOztBVXpqUVE7RUFPSTtBVnNqUVo7O0FVN2pRUTtFQU9JO0FWMGpRWjs7QVVqa1FRO0VBT0k7QVY4alFaOztBVXJrUVE7RUFPSTtBVmtrUVo7O0FVemtRUTtFQU9JO0FWc2tRWjs7QVU3a1FRO0VBT0k7QVYwa1FaOztBVWpsUVE7RUFPSTtBVjhrUVo7O0FVcmxRUTtFQU9JO0FWa2xRWjs7QVV6bFFRO0VBT0k7QVZzbFFaOztBVTdsUVE7RUFPSTtBVjBsUVo7O0FVam1RUTtFQU9JO0FWOGxRWjs7QVVybVFRO0VBT0k7QVZrbVFaOztBVXptUVE7RUFPSTtBVnNtUVo7O0FVN21RUTtFQU9JO0FWMG1RWjs7QVVqblFRO0VBT0k7QVY4bVFaOztBVXJuUVE7RUFPSTtBVmtuUVo7O0FVem5RUTtFQU9JO0FWc25RWjs7QVU3blFRO0VBT0k7QVYwblFaOztBVWpvUVE7RUFPSTtBVjhuUVo7O0FVcm9RUTtFQU9JO0FWa29RWjs7QVV6b1FRO0VBT0k7QVZzb1FaOztBVTdvUVE7RUFPSTtBVjBvUVo7O0FVanBRUTtFQU9JO0FWOG9RWjs7QVVycFFRO0VBT0k7QVZrcFFaOztBVXpwUVE7RUFPSTtBVnNwUVo7O0FVN3BRUTtFQU9JO0FWMHBRWjs7QVVqcVFRO0VBT0k7QVY4cFFaOztBVXJxUVE7RUFPSTtBVmtxUVo7O0FVenFRUTtFQU9JO0FWc3FRWjs7QVU3cVFRO0VBT0k7QVYwcVFaOztBVWpyUVE7RUFPSTtBVjhxUVo7O0FVcnJRUTtFQU9JO0FWa3JRWjs7QVV6clFRO0VBT0k7QVZzclFaOztBVTdyUVE7RUFPSTtBVjByUVo7O0FVanNRUTtFQU9JO0FWOHJRWjs7QVVyc1FRO0VBT0k7QVZrc1FaOztBVXpzUVE7RUFPSTtBVnNzUVo7O0FVN3NRUTtFQU9JO0FWMHNRWjs7QVUzdFFRO0VBQ0U7QVY4dFFWOztBVS90UVE7RUFDRTtBVmt1UVY7O0FVbnVRUTtFQUNFO0FWc3VRVjs7QVV2dVFRO0VBQ0U7QVYwdVFWOztBVTN1UVE7RUFDRTtBVjh1UVY7O0FVL3VRUTtFQUNFO0FWa3ZRVjs7QVVudlFRO0VBQ0U7QVZzdlFWOztBVXZ2UVE7RUFDRTtBVjB2UVY7O0FVanZRUTtFQU9JO0FWOHVRWjs7QVVydlFRO0VBT0k7QVZrdlFaOztBVXp2UVE7RUFPSTtBVnN2UVo7O0FVN3ZRUTtFQU9JO0FWMHZRWjs7QVVqd1FRO0VBT0k7QVY4dlFaOztBVXJ3UVE7RUFPSTtBVmt3UVo7O0FVendRUTtFQU9JO0FWc3dRWjs7QVU3d1FRO0VBT0k7QVYwd1FaOztBVWp4UVE7RUFPSTtBVjh3UVo7O0FVcnhRUTtFQU9JO0FWa3hRWjs7QVV6eFFRO0VBT0k7QVZzeFFaOztBVTd4UVE7RUFPSTtBVjB4UVo7O0FVanlRUTtFQU9JO0FWOHhRWjs7QVVyeVFRO0VBT0k7QVZreVFaOztBVXp5UVE7RUFPSTtBVnN5UVo7O0FVN3lRUTtFQU9JO0FWMHlRWjs7QVVqelFRO0VBT0k7QVY4eVFaOztBVXJ6UVE7RUFPSTtBVmt6UVo7O0FVenpRUTtFQU9JO0FWc3pRWjs7QVU3elFRO0VBT0k7QVYwelFaOztBVWowUVE7RUFPSTtBVjh6UVo7O0FVcjBRUTtFQU9JO0FWazBRWjs7QVV6MFFRO0VBT0k7QVZzMFFaOztBVTcwUVE7RUFPSTtBVjAwUVo7O0FVajFRUTtFQU9JO0FWODBRWjs7QVVyMVFRO0VBT0k7QVZrMVFaOztBVXoxUVE7RUFPSTtBVnMxUVo7O0FVNzFRUTtFQU9JO0FWMDFRWjs7QVVqMlFRO0VBT0k7QVY4MVFaOztBVXIyUVE7RUFPSTtBVmsyUVo7O0FVejJRUTtFQUlRO0VBR0o7QVZ1MlFaOztBVTkyUVE7RUFJUTtFQUdKO0FWNDJRWjs7QVVuM1FRO0VBSVE7RUFHSjtBVmkzUVo7O0FVeDNRUTtFQUlRO0VBR0o7QVZzM1FaOztBVTczUVE7RUFJUTtFQUdKO0FWMjNRWjs7QVVsNFFRO0VBSVE7RUFHSjtBVmc0UVo7O0FVdjRRUTtFQUlRO0VBR0o7QVZxNFFaOztBVTU0UVE7RUFJUTtFQUdKO0FWMDRRWjs7QVVqNVFRO0VBSVE7RUFHSjtBVis0UVo7O0FVdDVRUTtFQUlRO0VBR0o7QVZvNVFaOztBVTM1UVE7RUFPSTtBVnc1UVo7O0FVLzVRUTtFQU9JO0FWNDVRWjs7QVVuNlFRO0VBT0k7QVZnNlFaOztBVXY2UVE7RUFPSTtBVm82UVo7O0FVMzZRUTtFQU9JO0FWdzZRWjs7QVUvNlFRO0VBT0k7QVY0NlFaOztBVW43UVE7RUFPSTtBVmc3UVo7O0FVdjdRUTtFQU9JO0FWbzdRWjs7QVUzN1FRO0VBT0k7QVZ3N1FaOztBVS83UVE7RUFPSTtBVjQ3UVo7O0FVbjhRUTtFQU9JO0FWZzhRWjs7QVV2OFFRO0VBT0k7QVZvOFFaOztBVTM4UVE7RUFPSTtBVnc4UVo7O0FVejlRUTtFQUNFO0FWNDlRVjs7QVU3OVFRO0VBQ0U7QVZnK1FWOztBVWorUVE7RUFDRTtBVm8rUVY7O0FVcitRUTtFQUNFO0FWdytRVjs7QVV6K1FRO0VBQ0U7QVY0K1FWOztBVW4rUVE7RUFPSTtBVmcrUVo7O0FVditRUTtFQU9JO0FWbytRWjs7QVUzK1FRO0VBT0k7QVZ3K1FaOztBVS8rUVE7RUFPSTtBVjQrUVo7O0FVbi9RUTtFQU9JO0FWZy9RWjs7QVV2L1FRO0VBT0k7QVZvL1FaOztBVTMvUVE7RUFPSTtBVncvUVo7O0FVLy9RUTtFQU9JO0FWNC9RWjs7QVVuZ1JRO0VBT0k7QVZnZ1JaOztBVXZnUlE7RUFPSTtBVm9nUlo7O0FVM2dSUTtFQU9JO0FWd2dSWjs7QVUvZ1JRO0VBT0k7QVY0Z1JaOztBVW5oUlE7RUFPSTtBVmdoUlo7O0FVdmhSUTtFQU9JO0FWb2hSWjs7QVUzaFJRO0VBT0k7QVZ3aFJaOztBVS9oUlE7RUFPSTtBVjRoUlo7O0FVbmlSUTtFQU9JO0FWZ2lSWjs7QVV2aVJRO0VBT0k7QVZvaVJaOztBVTNpUlE7RUFPSTtBVndpUlo7O0FVL2lSUTtFQU9JO0FWNGlSWjs7QVVualJRO0VBT0k7QVZnalJaOztBVXZqUlE7RUFPSTtBVm9qUlo7O0FVM2pSUTtFQU9JO0FWd2pSWjs7QVUvalJRO0VBT0k7QVY0alJaOztBVW5rUlE7RUFPSTtBVmdrUlo7O0FVdmtSUTtFQU9JO0FWb2tSWjs7QVUza1JRO0VBT0k7QVZ3a1JaOztBVS9rUlE7RUFPSTtBVjRrUlo7O0FVbmxSUTtFQU9JO0FWZ2xSWjs7QVV2bFJRO0VBT0k7QVZvbFJaOztBVTNsUlE7RUFPSTtBVndsUlo7O0FVL2xSUTtFQU9JO0FWNGxSWjs7QVVubVJRO0VBT0k7QVZnbVJaOztBVXZtUlE7RUFPSTtBVm9tUlo7O0FVM21SUTtFQU9JO0FWd21SWjs7QVUvbVJRO0VBT0k7QVY0bVJaOztBVW5uUlE7RUFPSTtBVmduUlo7O0FVdm5SUTtFQU9JO0FWb25SWjs7QVUzblJRO0VBT0k7QVZ3blJaOztBVS9uUlE7RUFPSTtBVjRuUlo7O0FVbm9SUTtFQU9JO0FWZ29SWjs7QVV2b1JRO0VBT0k7QVZvb1JaOztBVTNvUlE7RUFPSTtBVndvUlo7O0FVL29SUTtFQU9JO0FWNG9SWjs7QVVucFJRO0VBT0k7QVZncFJaOztBVXZwUlE7RUFPSTtBVm9wUlo7O0FVM3BSUTtFQU9JO0FWd3BSWjs7QVUvcFJRO0VBT0k7QVY0cFJaOztBVW5xUlE7RUFPSTtBVmdxUlo7O0FVdnFSUTtFQU9JO0FWb3FSWjs7QVUzcVJRO0VBT0k7QVZ3cVJaOztBVS9xUlE7RUFPSTtBVjRxUlo7O0FVbnJSUTtFQU9JO0FWZ3JSWjs7QVV2clJRO0VBT0k7QVZvclJaOztBVTNyUlE7RUFPSTtBVndyUlo7O0FVL3JSUTtFQU9JO0FWNHJSWjs7QVVuc1JRO0VBT0k7QVZnc1JaOztBVXZzUlE7RUFPSTtBVm9zUlo7O0FVM3NSUTtFQU9JO0FWd3NSWjs7QVUvc1JRO0VBT0k7QVY0c1JaOztBVW50UlE7RUFPSTtBVmd0Ulo7O0FVdnRSUTtFQU9JO0FWb3RSWjs7QVUzdFJRO0VBT0k7QVZ3dFJaOztBVS90UlE7RUFPSTtBVjR0Ulo7O0FVbnVSUTtFQU9JO0FWZ3VSWjs7QVV2dVJRO0VBT0k7QVZvdVJaOztBVTN1UlE7RUFPSTtFQUFBO0FWeXVSWjs7QVVodlJRO0VBT0k7RUFBQTtBVjh1Ulo7O0FVcnZSUTtFQU9JO0VBQUE7QVZtdlJaOztBVTF2UlE7RUFPSTtFQUFBO0FWd3ZSWjs7QVUvdlJRO0VBT0k7RUFBQTtBVjZ2Ulo7O0FVcHdSUTtFQU9JO0VBQUE7QVZrd1JaOztBVXp3UlE7RUFPSTtFQUFBO0FWdXdSWjs7QVU5d1JRO0VBT0k7RUFBQTtBVjR3Ulo7O0FVbnhSUTtFQU9JO0VBQUE7QVZpeFJaOztBVXh4UlE7RUFPSTtFQUFBO0FWc3hSWjs7QVU3eFJRO0VBT0k7RUFBQTtBVjJ4Ulo7O0FVbHlSUTtFQU9JO0VBQUE7QVZneVJaOztBVXZ5UlE7RUFPSTtFQUFBO0FWcXlSWjs7QVU1eVJRO0VBT0k7RUFBQTtBVjB5Ulo7O0FVanpSUTtFQU9JO0FWOHlSWjs7QVVyelJRO0VBT0k7QVZrelJaOztBVXp6UlE7RUFPSTtBVnN6Ulo7O0FVN3pSUTtFQU9JO0FWMHpSWjs7QVVqMFJRO0VBT0k7QVY4elJaOztBVXIwUlE7RUFPSTtBVmswUlo7O0FVejBSUTtFQU9JO0FWczBSWjs7QVU3MFJRO0VBT0k7QVYwMFJaOztBVWoxUlE7RUFPSTtBVjgwUlo7O0FVcjFSUTtFQU9JO0FWazFSWjs7QVV6MVJRO0VBT0k7QVZzMVJaOztBVTcxUlE7RUFPSTtBVjAxUlo7O0FVajJSUTtFQU9JO0FWODFSWjs7QVVyMlJRO0VBT0k7QVZrMlJaOztBVXoyUlE7RUFPSTtBVnMyUlo7O0FVNzJSUTtFQU9JO0FWMDJSWjs7QVVqM1JRO0VBT0k7QVY4MlJaOztBVXIzUlE7RUFPSTtBVmszUlo7O0FVejNSUTtFQU9JO0FWczNSWjs7QVU3M1JRO0VBT0k7QVYwM1JaOztBVWo0UlE7RUFPSTtBVjgzUlo7O0FVcjRSUTtFQU9JO0FWazRSWjs7QVV6NFJRO0VBT0k7QVZzNFJaOztBVTc0UlE7RUFPSTtBVjA0Ulo7O0FVajVSUTtFQU9JO0FWODRSWjs7QVVyNVJRO0VBT0k7QVZrNVJaOztBVXo1UlE7RUFPSTtBVnM1Ulo7O0FVNzVSUTtFQU9JO0FWMDVSWjs7QVVqNlJRO0VBT0k7QVY4NVJaOztBVXI2UlE7RUFPSTtBVms2Ulo7O0FVejZSUTtFQU9JO0FWczZSWjs7QVU3NlJRO0VBT0k7QVYwNlJaOztBVWo3UlE7RUFPSTtBVjg2Ulo7O0FVcjdSUTtFQU9JO0FWazdSWjs7QVV6N1JRO0VBT0k7RUFBQTtBVnU3Ulo7O0FVOTdSUTtFQU9JO0VBQUE7QVY0N1JaOztBVW44UlE7RUFPSTtFQUFBO0FWaThSWjs7QVV4OFJRO0VBT0k7RUFBQTtBVnM4Ulo7O0FVNzhSUTtFQU9JO0VBQUE7QVYyOFJaOztBVWw5UlE7RUFPSTtFQUFBO0FWZzlSWjs7QVV2OVJRO0VBT0k7RUFBQTtBVnE5Ulo7O0FVNTlSUTtFQU9JO0VBQUE7QVYwOVJaOztBVWorUlE7RUFPSTtFQUFBO0FWKzlSWjs7QVV0K1JRO0VBT0k7RUFBQTtBVm8rUlo7O0FVMytSUTtFQU9JO0VBQUE7QVZ5K1JaOztBVWgvUlE7RUFPSTtFQUFBO0FWOCtSWjs7QVVyL1JRO0VBT0k7QVZrL1JaOztBVXovUlE7RUFPSTtBVnMvUlo7O0FVNy9SUTtFQU9JO0FWMC9SWjs7QVVqZ1NRO0VBT0k7QVY4L1JaOztBVXJnU1E7RUFPSTtBVmtnU1o7O0FVemdTUTtFQU9JO0FWc2dTWjs7QVU3Z1NRO0VBT0k7QVYwZ1NaOztBVWpoU1E7RUFPSTtBVjhnU1o7O0FVcmhTUTtFQU9JO0FWa2hTWjs7QVV6aFNRO0VBT0k7QVZzaFNaOztBVTdoU1E7RUFPSTtBVjBoU1o7O0FVamlTUTtFQU9JO0FWOGhTWjs7QVVyaVNRO0VBT0k7QVZraVNaOztBVXppU1E7RUFPSTtBVnNpU1o7O0FVN2lTUTtFQU9JO0FWMGlTWjs7QVVqalNRO0VBT0k7QVY4aVNaOztBVXJqU1E7RUFPSTtBVmtqU1o7O0FVempTUTtFQU9JO0FWc2pTWjs7QVU3alNRO0VBT0k7QVYwalNaOztBVWprU1E7RUFPSTtBVjhqU1o7O0FVcmtTUTtFQU9JO0FWa2tTWjs7QVV6a1NRO0VBT0k7QVZza1NaOztBVTdrU1E7RUFPSTtBVjBrU1o7O0FVamxTUTtFQU9JO0FWOGtTWjs7QVVybFNRO0VBT0k7QVZrbFNaOztBVXpsU1E7RUFPSTtBVnNsU1o7O0FVN2xTUTtFQU9JO0FWMGxTWjs7QVVqbVNRO0VBT0k7QVY4bFNaOztBVXJtU1E7RUFPSTtBVmttU1o7O0FVem1TUTtFQU9JO0FWc21TWjs7QVU3bVNRO0VBT0k7QVYwbVNaOztBVWpuU1E7RUFPSTtBVjhtU1o7O0FVcm5TUTtFQU9JO0FWa25TWjs7QVV6blNRO0VBT0k7QVZzblNaOztBVTduU1E7RUFPSTtBVjBuU1o7O0FVam9TUTtFQU9JO0FWOG5TWjs7QVVyb1NRO0VBT0k7QVZrb1NaOztBVXpvU1E7RUFPSTtBVnNvU1o7O0FVN29TUTtFQU9JO0FWMG9TWjs7QVVqcFNRO0VBT0k7QVY4b1NaOztBVXJwU1E7RUFPSTtBVmtwU1o7O0FVenBTUTtFQU9JO0FWc3BTWjs7QVU3cFNRO0VBT0k7QVYwcFNaOztBVWpxU1E7RUFPSTtBVjhwU1o7O0FVcnFTUTtFQU9JO0FWa3FTWjs7QVV6cVNRO0VBT0k7QVZzcVNaOztBVTdxU1E7RUFPSTtBVjBxU1o7O0FVanJTUTtFQU9JO0FWOHFTWjs7QVVyclNRO0VBT0k7QVZrclNaOztBVXpyU1E7RUFPSTtBVnNyU1o7O0FVN3JTUTtFQU9JO0FWMHJTWjs7QVVqc1NRO0VBT0k7QVY4clNaOztBVXJzU1E7RUFPSTtBVmtzU1o7O0FVenNTUTtFQU9JO0FWc3NTWjs7QVU3c1NRO0VBT0k7QVYwc1NaOztBVWp0U1E7RUFPSTtBVjhzU1o7O0FVcnRTUTtFQU9JO0FWa3RTWjs7QVV6dFNRO0VBT0k7QVZzdFNaOztBVTd0U1E7RUFPSTtBVjB0U1o7O0FVanVTUTtFQU9JO0FWOHRTWjs7QVVydVNRO0VBT0k7QVZrdVNaOztBVXp1U1E7RUFPSTtBVnN1U1o7O0FVN3VTUTtFQU9JO0FWMHVTWjs7QVVqdlNRO0VBT0k7QVY4dVNaOztBVXJ2U1E7RUFPSTtBVmt2U1o7O0FVenZTUTtFQU9JO0FWc3ZTWjs7QVU3dlNRO0VBT0k7QVYwdlNaOztBVWp3U1E7RUFPSTtBVjh2U1o7O0FVcndTUTtFQU9JO0FWa3dTWjs7QVV6d1NRO0VBT0k7QVZzd1NaOztBVTd3U1E7RUFPSTtBVjB3U1o7O0FVanhTUTtFQU9JO0FWOHdTWjs7QVVyeFNRO0VBT0k7QVZreFNaOztBVXZ5U1E7QUFjQTtFQU9JO0VBQUE7QVZ3eFNaOztBVXJ3U1E7QUExQkE7RUFJUTtFQUdKO0FWOHhTWjs7QVVyeVNRO0VBSVE7RUFHSjtBVm15U1o7O0FVMXlTUTtFQUlRO0VBR0o7QVZ3eVNaOztBVS95U1E7RUFJUTtFQUdKO0FWNnlTWjs7QVVwelNRO0VBSVE7RUFHSjtBVmt6U1o7O0FVenpTUTtFQUlRO0VBR0o7QVZ1elNaOztBVTl6U1E7RUFJUTtFQUdKO0FWNHpTWjs7QVVuMFNRO0VBSVE7RUFHSjtBVmkwU1o7O0FVeDBTUTtFQUlRO0VBR0o7QVZzMFNaOztBVTcwU1E7RUFJUTtFQUdKO0FWMjBTWjs7QVVsMVNRO0VBSVE7RUFHSjtBVmcxU1o7O0FVdjFTUTtFQUlRO0VBR0o7QVZxMVNaOztBVTUxU1E7RUFJUTtFQUdKO0FWMDFTWjs7QVVqMlNRO0VBSVE7RUFHSjtBVisxU1o7O0FVdDJTUTtFQUlRO0VBR0o7QVZvMlNaOztBVTMyU1E7RUFJUTtFQUdKO0FWeTJTWjs7QVVoM1NRO0VBSVE7RUFHSjtBVjgyU1o7O0FVcjNTUTtFQUlRO0VBR0o7QVZtM1NaOztBVXA0U1E7RUFDRTtBVnU0U1Y7O0FVeDRTUTtFQUNFO0FWMjRTVjs7QVU1NFNRO0VBQ0U7QVYrNFNWOztBVWg1U1E7RUFDRTtBVm01U1Y7O0FVMTRTUTtFQU9JO0FWdTRTWjs7QVU5NFNRO0VBT0k7QVYyNFNaOztBVWw1U1E7RUFPSTtBVis0U1o7O0FVdDVTUTtFQU9JO0FWbTVTWjs7QVUxNVNRO0VBT0k7QVZ1NVNaOztBVTk1U1E7RUFPSTtBVjI1U1o7O0FVbDZTUTtFQU9JO0FWKzVTWjs7QVV0NlNRO0VBT0k7QVZtNlNaOztBVXA3U1E7RUFDRTtBVnU3U1Y7O0FVbjdTVTtFQUNFO0FWczdTWjs7QVU1N1NRO0VBQ0U7QVYrN1NWOztBVTM3U1U7RUFDRTtBVjg3U1o7O0FVcDhTUTtFQUNFO0FWdThTVjs7QVVuOFNVO0VBQ0U7QVZzOFNaOztBVTU4U1E7RUFDRTtBVis4U1Y7O0FVMzhTVTtFQUNFO0FWODhTWjs7QVVwOVNRO0VBQ0U7QVZ1OVNWOztBVW45U1U7RUFDRTtBVnM5U1o7O0FVbDlTUTtFQU9JO0FWKzhTWjs7QVUxOFNVO0VBT0k7QVZ1OFNkOztBVTE5U1E7RUFPSTtBVnU5U1o7O0FVbDlTVTtFQU9JO0FWKzhTZDs7QVVsK1NRO0VBT0k7QVYrOVNaOztBVTE5U1U7RUFPSTtBVnU5U2Q7O0FVMStTUTtFQUlRO0VBR0o7QVZ3K1NaOztBVS8rU1E7RUFJUTtFQUdKO0FWNitTWjs7QVVwL1NRO0VBSVE7RUFHSjtBVmsvU1o7O0FVei9TUTtFQUlRO0VBR0o7QVZ1L1NaOztBVTkvU1E7RUFJUTtFQUdKO0FWNC9TWjs7QVVuZ1RRO0VBSVE7RUFHSjtBVmlnVFo7O0FVeGdUUTtFQUlRO0VBR0o7QVZzZ1RaOztBVTdnVFE7RUFJUTtFQUdKO0FWMmdUWjs7QVVsaFRRO0VBSVE7RUFHSjtBVmdoVFo7O0FVamlUUTtFQUNFO0FWb2lUVjs7QVVoaVRVO0VBQ0U7QVZtaVRaOztBVXppVFE7RUFDRTtBVjRpVFY7O0FVeGlUVTtFQUNFO0FWMmlUWjs7QVVqalRRO0VBQ0U7QVZvalRWOztBVWhqVFU7RUFDRTtBVm1qVFo7O0FVempUUTtFQUNFO0FWNGpUVjs7QVV4alRVO0VBQ0U7QVYyalRaOztBVWprVFE7RUFDRTtBVm9rVFY7O0FVaGtUVTtFQUNFO0FWbWtUWjs7QVV6a1RRO0VBQ0U7QVY0a1RWOztBVXhrVFU7RUFDRTtBVjJrVFo7O0FVdmtUUTtFQUlRO0VBR0o7QVZxa1RaOztBVTVrVFE7RUFJUTtFQUdKO0FWMGtUWjs7QVVqbFRRO0VBSVE7RUFHSjtBVitrVFo7O0FVdGxUUTtFQUlRO0VBR0o7QVZvbFRaOztBVTNsVFE7RUFJUTtFQUdKO0FWeWxUWjs7QVVobVRRO0VBSVE7RUFHSjtBVjhsVFo7O0FVcm1UUTtFQUlRO0VBR0o7QVZtbVRaOztBVTFtVFE7RUFJUTtFQUdKO0FWd21UWjs7QVUvbVRRO0VBSVE7RUFHSjtBVjZtVFo7O0FVcG5UUTtFQUlRO0VBR0o7QVZrblRaOztBVXpuVFE7RUFJUTtFQUdKO0FWdW5UWjs7QVU5blRRO0VBSVE7RUFHSjtBVjRuVFo7O0FVbm9UUTtFQUlRO0VBR0o7QVZpb1RaOztBVXhvVFE7RUFJUTtFQUdKO0FWc29UWjs7QVV2cFRRO0VBQ0U7QVYwcFRWOztBVTNwVFE7RUFDRTtBVjhwVFY7O0FVL3BUUTtFQUNFO0FWa3FUVjs7QVVucVRRO0VBQ0U7QVZzcVRWOztBVXZxVFE7RUFDRTtBVjBxVFY7O0FVanFUUTtFQU9JO0FWOHBUWjs7QVVycVRRO0VBT0k7QVZrcVRaOztBVXpxVFE7RUFPSTtBVnNxVFo7O0FVN3FUUTtFQU9JO0FWMHFUWjs7QVVqclRRO0VBT0k7QVY4cVRaOztBVXJyVFE7RUFPSTtBVmtyVFo7O0FVenJUUTtFQU9JO0FWc3JUWjs7QVU3clRRO0VBT0k7QVYwclRaOztBVWpzVFE7RUFPSTtBVjhyVFo7O0FVcnNUUTtFQU9JO0FWa3NUWjs7QVV6c1RRO0VBT0k7QVZzc1RaOztBVTdzVFE7RUFPSTtBVjBzVFo7O0FVanRUUTtFQU9JO0FWOHNUWjs7QVVydFRRO0VBT0k7QVZrdFRaOztBVXp0VFE7RUFPSTtBVnN0VFo7O0FVN3RUUTtFQU9JO0FWMHRUWjs7QVVqdVRRO0VBT0k7QVY4dFRaOztBVXJ1VFE7RUFPSTtBVmt1VFo7O0FVenVUUTtFQU9JO0FWc3VUWjs7QVU3dVRRO0VBT0k7QVYwdVRaOztBVWp2VFE7RUFPSTtBVjh1VFo7O0FVcnZUUTtFQU9JO0FWa3ZUWjs7QVV6dlRRO0VBT0k7QVZzdlRaOztBVTd2VFE7RUFPSTtFQUFBO0FWMnZUWjs7QVVsd1RRO0VBT0k7RUFBQTtBVmd3VFo7O0FVdndUUTtFQU9JO0VBQUE7QVZxd1RaOztBVTV3VFE7RUFPSTtFQUFBO0FWMHdUWjs7QVVqeFRRO0VBT0k7RUFBQTtBVit3VFo7O0FVdHhUUTtFQU9JO0VBQUE7QVZveFRaOztBVTN4VFE7RUFPSTtFQUFBO0FWeXhUWjs7QVVoeVRRO0VBT0k7RUFBQTtBVjh4VFo7O0FVcnlUUTtFQU9JO0VBQUE7QVZteVRaOztBVTF5VFE7RUFPSTtFQUFBO0FWd3lUWjs7QVUveVRRO0VBT0k7RUFBQTtBVjZ5VFo7O0FVcHpUUTtFQU9JO0VBQUE7QVZrelRaOztBVXp6VFE7RUFPSTtFQUFBO0FWdXpUWjs7QVU5elRRO0VBT0k7RUFBQTtBVjR6VFo7O0FVbjBUUTtFQU9JO0VBQUE7QVZpMFRaOztBVXgwVFE7RUFPSTtFQUFBO0FWczBUWjs7QVU3MFRRO0VBT0k7RUFBQTtBVjIwVFo7O0FVbDFUUTtFQU9JO0VBQUE7QVZnMVRaOztBVXYxVFE7RUFPSTtFQUFBO0FWcTFUWjs7QVU1MVRRO0VBT0k7RUFBQTtBVjAxVFo7O0FVajJUUTtFQU9JO0VBQUE7QVYrMVRaOztBVXQyVFE7RUFPSTtFQUFBO0FWbzJUWjs7QVUzMlRRO0VBT0k7RUFBQTtBVnkyVFo7O0FVaDNUUTtFQU9JO0VBQUE7QVY4MlRaOztBVXIzVFE7RUFPSTtFQUFBO0FWbTNUWjs7QVUxM1RRO0VBT0k7RUFBQTtBVnczVFo7O0FVLzNUUTtFQU9JO0VBQUE7QVY2M1RaOztBVXA0VFE7RUFPSTtFQUFBO0FWazRUWjs7QVV6NFRRO0VBT0k7RUFBQTtBVnU0VFo7O0FVOTRUUTtFQU9JO0VBQUE7QVY0NFRaOztBVW41VFE7RUFPSTtFQUFBO0FWaTVUWjs7QVV4NVRRO0VBT0k7RUFBQTtBVnM1VFo7O0FVNzVUUTtFQU9JO0VBQUE7QVYyNVRaOztBVWw2VFE7RUFPSTtFQUFBO0FWZzZUWjs7QVV2NlRRO0VBT0k7RUFBQTtBVnE2VFo7O0FVNTZUUTtFQU9JO0VBQUE7QVYwNlRaOztBVWo3VFE7RUFPSTtBVjg2VFo7O0FVcjdUUTtFQU9JO0FWazdUWjs7QVV6N1RRO0VBT0k7QVZzN1RaOztBVTc3VFE7RUFPSTtBVjA3VFo7O0FVajhUUTtFQU9JO0FWODdUWjs7QVVyOFRRO0VBT0k7QVZrOFRaOztBVXo4VFE7RUFPSTtBVnM4VFo7O0FhaDlUSTtFSEdJO0lBT0k7RVYyOFRWO0VVbDlUTTtJQU9JO0VWODhUVjtFVXI5VE07SUFPSTtFVmk5VFY7RVV4OVRNO0lBT0k7RVZvOVRWO0VVMzlUTTtJQU9JO0VWdTlUVjtFVTk5VE07SUFPSTtFVjA5VFY7RVVqK1RNO0lBT0k7RVY2OVRWO0VVcCtUTTtJQU9JO0VWZytUVjtFVXYrVE07SUFPSTtFVm0rVFY7RVUxK1RNO0lBT0k7RVZzK1RWO0VVNytUTTtJQU9JO0VWeStUVjtFVWgvVE07SUFPSTtFVjQrVFY7RVVuL1RNO0lBT0k7RVYrK1RWO0VVdC9UTTtJQU9JO0VWay9UVjtFVXovVE07SUFPSTtFVnEvVFY7RVU1L1RNO0lBT0k7RVZ3L1RWO0VVLy9UTTtJQU9JO0VWMi9UVjtFVWxnVU07SUFPSTtFVjgvVFY7RVVyZ1VNO0lBT0k7RVZpZ1VWO0VVeGdVTTtJQU9JO0VWb2dVVjtFVTNnVU07SUFPSTtFVnVnVVY7RVU5Z1VNO0lBT0k7RVYwZ1VWO0VVamhVTTtJQU9JO0VWNmdVVjtFVXBoVU07SUFPSTtFVmdoVVY7RVV2aFVNO0lBT0k7RVZtaFVWO0VVMWhVTTtJQU9JO0VWc2hVVjtFVTdoVU07SUFPSTtFVnloVVY7RVVoaVVNO0lBT0k7RVY0aFVWO0VVbmlVTTtJQU9JO0VWK2hVVjtFVXRpVU07SUFPSTtFVmtpVVY7RVV6aVVNO0lBT0k7RVZxaVVWO0VVNWlVTTtJQU9JO0VWd2lVVjtFVS9pVU07SUFPSTtFVjJpVVY7RVVsalVNO0lBT0k7RVY4aVVWO0VVcmpVTTtJQU9JO0VWaWpVVjtFVXhqVU07SUFPSTtFVm9qVVY7RVUzalVNO0lBT0k7RVZ1alVWO0VVOWpVTTtJQU9JO0VWMGpVVjtFVWprVU07SUFPSTtFVjZqVVY7RVVwa1VNO0lBT0k7RVZna1VWO0VVdmtVTTtJQU9JO0VWbWtVVjtFVTFrVU07SUFPSTtFVnNrVVY7RVU3a1VNO0lBT0k7RVZ5a1VWO0VVaGxVTTtJQU9JO0VWNGtVVjtFVW5sVU07SUFPSTtFVitrVVY7RVV0bFVNO0lBT0k7RVZrbFVWO0VVemxVTTtJQU9JO0VWcWxVVjtFVTVsVU07SUFPSTtFVndsVVY7RVUvbFVNO0lBT0k7RVYybFVWO0VVbG1VTTtJQU9JO0VWOGxVVjtFVXJtVU07SUFPSTtFVmltVVY7RVV4bVVNO0lBT0k7RVZvbVVWO0VVM21VTTtJQU9JO0VWdW1VVjtFVTltVU07SUFPSTtFVjBtVVY7RVVqblVNO0lBT0k7RVY2bVVWO0VVcG5VTTtJQU9JO0VWZ25VVjtFVXZuVU07SUFPSTtFVm1uVVY7RVUxblVNO0lBT0k7RVZzblVWO0VVN25VTTtJQU9JO0VWeW5VVjtFVWhvVU07SUFPSTtFVjRuVVY7RVVub1VNO0lBT0k7RVYrblVWO0VVdG9VTTtJQU9JO0VWa29VVjtFVXpvVU07SUFPSTtFVnFvVVY7RVU1b1VNO0lBT0k7RVZ3b1VWO0VVL29VTTtJQU9JO0VWMm9VVjtFVWxwVU07SUFPSTtFVjhvVVY7RVVycFVNO0lBT0k7RVZpcFVWO0VVeHBVTTtJQU9JO0VWb3BVVjtFVTNwVU07SUFPSTtFVnVwVVY7RVU5cFVNO0lBT0k7SUFBQTtFVjJwVVY7RVVscVVNO0lBT0k7SUFBQTtFVitwVVY7RVV0cVVNO0lBT0k7SUFBQTtFVm1xVVY7RVUxcVVNO0lBT0k7SUFBQTtFVnVxVVY7RVU5cVVNO0lBT0k7SUFBQTtFVjJxVVY7RVVsclVNO0lBT0k7SUFBQTtFVitxVVY7RVV0clVNO0lBT0k7SUFBQTtFVm1yVVY7RVUxclVNO0lBT0k7SUFBQTtFVnVyVVY7RVU5clVNO0lBT0k7SUFBQTtFVjJyVVY7RVVsc1VNO0lBT0k7SUFBQTtFVityVVY7RVV0c1VNO0lBT0k7SUFBQTtFVm1zVVY7RVUxc1VNO0lBT0k7SUFBQTtFVnVzVVY7RVU5c1VNO0lBT0k7SUFBQTtFVjJzVVY7RVVsdFVNO0lBT0k7SUFBQTtFVitzVVY7RVV0dFVNO0lBT0k7RVZrdFVWO0VVenRVTTtJQU9JO0VWcXRVVjtFVTV0VU07SUFPSTtFVnd0VVY7RVUvdFVNO0lBT0k7RVYydFVWO0VVbHVVTTtJQU9JO0VWOHRVVjtFVXJ1VU07SUFPSTtFVml1VVY7RVV4dVVNO0lBT0k7RVZvdVVWO0VVM3VVTTtJQU9JO0VWdXVVVjtFVTl1VU07SUFPSTtFVjB1VVY7RVVqdlVNO0lBT0k7RVY2dVVWO0VVcHZVTTtJQU9JO0VWZ3ZVVjtFVXZ2VU07SUFPSTtFVm12VVY7RVUxdlVNO0lBT0k7RVZzdlVWO0VVN3ZVTTtJQU9JO0VWeXZVVjtFVWh3VU07SUFPSTtFVjR2VVY7RVVud1VNO0lBT0k7RVYrdlVWO0VVdHdVTTtJQU9JO0VWa3dVVjtFVXp3VU07SUFPSTtFVnF3VVY7RVU1d1VNO0lBT0k7RVZ3d1VWO0VVL3dVTTtJQU9JO0VWMndVVjtFVWx4VU07SUFPSTtFVjh3VVY7RVVyeFVNO0lBT0k7RVZpeFVWO0VVeHhVTTtJQU9JO0VWb3hVVjtFVTN4VU07SUFPSTtFVnV4VVY7RVU5eFVNO0lBT0k7RVYweFVWO0VVanlVTTtJQU9JO0VWNnhVVjtFVXB5VU07SUFPSTtFVmd5VVY7RVV2eVVNO0lBT0k7RVZteVVWO0VVMXlVTTtJQU9JO0VWc3lVVjtFVTd5VU07SUFPSTtFVnl5VVY7RVVoelVNO0lBT0k7RVY0eVVWO0VVbnpVTTtJQU9JO0VWK3lVVjtFVXR6VU07SUFPSTtFVmt6VVY7RVV6elVNO0lBT0k7RVZxelVWO0VVNXpVTTtJQU9JO0lBQUE7RVZ5elVWO0VVaDBVTTtJQU9JO0lBQUE7RVY2elVWO0VVcDBVTTtJQU9JO0lBQUE7RVZpMFVWO0VVeDBVTTtJQU9JO0lBQUE7RVZxMFVWO0VVNTBVTTtJQU9JO0lBQUE7RVZ5MFVWO0VVaDFVTTtJQU9JO0lBQUE7RVY2MFVWO0VVcDFVTTtJQU9JO0lBQUE7RVZpMVVWO0VVeDFVTTtJQU9JO0lBQUE7RVZxMVVWO0VVNTFVTTtJQU9JO0lBQUE7RVZ5MVVWO0VVaDJVTTtJQU9JO0lBQUE7RVY2MVVWO0VVcDJVTTtJQU9JO0lBQUE7RVZpMlVWO0VVeDJVTTtJQU9JO0lBQUE7RVZxMlVWO0VVNTJVTTtJQU9JO0VWdzJVVjtFVS8yVU07SUFPSTtFVjIyVVY7RVVsM1VNO0lBT0k7RVY4MlVWO0VVcjNVTTtJQU9JO0VWaTNVVjtFVXgzVU07SUFPSTtFVm8zVVY7RVUzM1VNO0lBT0k7RVZ1M1VWO0VVOTNVTTtJQU9JO0VWMDNVVjtFVWo0VU07SUFPSTtFVjYzVVY7RVVwNFVNO0lBT0k7RVZnNFVWO0VVdjRVTTtJQU9JO0VWbTRVVjtFVTE0VU07SUFPSTtFVnM0VVY7RVU3NFVNO0lBT0k7RVZ5NFVWO0VVaDVVTTtJQU9JO0VWNDRVVjtFVW41VU07SUFPSTtFVis0VVY7RVV0NVVNO0lBT0k7RVZrNVVWO0VVejVVTTtJQU9JO0VWcTVVVjtFVTU1VU07SUFPSTtFVnc1VVY7RVUvNVVNO0lBT0k7RVYyNVVWO0VVbDZVTTtJQU9JO0VWODVVVjtFVXI2VU07SUFPSTtFVmk2VVY7RVV4NlVNO0lBT0k7RVZvNlVWO0VVMzZVTTtJQU9JO0VWdTZVVjtFVTk2VU07SUFPSTtFVjA2VVY7RVVqN1VNO0lBT0k7RVY2NlVWO0VVcDdVTTtJQU9JO0VWZzdVVjtFVXY3VU07SUFPSTtFVm03VVY7RVUxN1VNO0lBT0k7RVZzN1VWO0VVNzdVTTtJQU9JO0VWeTdVVjtFVWg4VU07SUFPSTtFVjQ3VVY7RVVuOFVNO0lBT0k7RVYrN1VWO0VVdDhVTTtJQU9JO0VWazhVVjtFVXo4VU07SUFPSTtFVnE4VVY7RVU1OFVNO0lBT0k7RVZ3OFVWO0VVLzhVTTtJQU9JO0VWMjhVVjtFVWw5VU07SUFPSTtFVjg4VVY7RVVyOVVNO0lBT0k7RVZpOVVWO0VVeDlVTTtJQU9JO0VWbzlVVjtFVTM5VU07SUFPSTtFVnU5VVY7RVU5OVVNO0lBT0k7RVYwOVVWO0VVaitVTTtJQU9JO0VWNjlVVjtFVXArVU07SUFPSTtFVmcrVVY7RVV2K1VNO0lBT0k7RVZtK1VWO0VVMStVTTtJQU9JO0VWcytVVjtFVTcrVU07SUFPSTtFVnkrVVY7RVVoL1VNO0lBT0k7RVY0K1VWO0FBQ0Y7QWF2L1VJO0VIR0k7SUFPSTtFVmkvVVY7RVV4L1VNO0lBT0k7RVZvL1VWO0VVMy9VTTtJQU9JO0VWdS9VVjtFVTkvVU07SUFPSTtFVjAvVVY7RVVqZ1ZNO0lBT0k7RVY2L1VWO0VVcGdWTTtJQU9JO0VWZ2dWVjtFVXZnVk07SUFPSTtFVm1nVlY7RVUxZ1ZNO0lBT0k7RVZzZ1ZWO0VVN2dWTTtJQU9JO0VWeWdWVjtFVWhoVk07SUFPSTtFVjRnVlY7RVVuaFZNO0lBT0k7RVYrZ1ZWO0VVdGhWTTtJQU9JO0VWa2hWVjtFVXpoVk07SUFPSTtFVnFoVlY7RVU1aFZNO0lBT0k7RVZ3aFZWO0VVL2hWTTtJQU9JO0VWMmhWVjtFVWxpVk07SUFPSTtFVjhoVlY7RVVyaVZNO0lBT0k7RVZpaVZWO0VVeGlWTTtJQU9JO0VWb2lWVjtFVTNpVk07SUFPSTtFVnVpVlY7RVU5aVZNO0lBT0k7RVYwaVZWO0VVampWTTtJQU9JO0VWNmlWVjtFVXBqVk07SUFPSTtFVmdqVlY7RVV2alZNO0lBT0k7RVZtalZWO0VVMWpWTTtJQU9JO0VWc2pWVjtFVTdqVk07SUFPSTtFVnlqVlY7RVVoa1ZNO0lBT0k7RVY0alZWO0VVbmtWTTtJQU9JO0VWK2pWVjtFVXRrVk07SUFPSTtFVmtrVlY7RVV6a1ZNO0lBT0k7RVZxa1ZWO0VVNWtWTTtJQU9JO0VWd2tWVjtFVS9rVk07SUFPSTtFVjJrVlY7RVVsbFZNO0lBT0k7RVY4a1ZWO0VVcmxWTTtJQU9JO0VWaWxWVjtFVXhsVk07SUFPSTtFVm9sVlY7RVUzbFZNO0lBT0k7RVZ1bFZWO0VVOWxWTTtJQU9JO0VWMGxWVjtFVWptVk07SUFPSTtFVjZsVlY7RVVwbVZNO0lBT0k7RVZnbVZWO0VVdm1WTTtJQU9JO0VWbW1WVjtFVTFtVk07SUFPSTtFVnNtVlY7RVU3bVZNO0lBT0k7RVZ5bVZWO0VVaG5WTTtJQU9JO0VWNG1WVjtFVW5uVk07SUFPSTtFVittVlY7RVV0blZNO0lBT0k7RVZrblZWO0VVem5WTTtJQU9JO0VWcW5WVjtFVTVuVk07SUFPSTtFVnduVlY7RVUvblZNO0lBT0k7RVYyblZWO0VVbG9WTTtJQU9JO0VWOG5WVjtFVXJvVk07SUFPSTtFVmlvVlY7RVV4b1ZNO0lBT0k7RVZvb1ZWO0VVM29WTTtJQU9JO0VWdW9WVjtFVTlvVk07SUFPSTtFVjBvVlY7RVVqcFZNO0lBT0k7RVY2b1ZWO0VVcHBWTTtJQU9JO0VWZ3BWVjtFVXZwVk07SUFPSTtFVm1wVlY7RVUxcFZNO0lBT0k7RVZzcFZWO0VVN3BWTTtJQU9JO0VWeXBWVjtFVWhxVk07SUFPSTtFVjRwVlY7RVVucVZNO0lBT0k7RVYrcFZWO0VVdHFWTTtJQU9JO0VWa3FWVjtFVXpxVk07SUFPSTtFVnFxVlY7RVU1cVZNO0lBT0k7RVZ3cVZWO0VVL3FWTTtJQU9JO0VWMnFWVjtFVWxyVk07SUFPSTtFVjhxVlY7RVVyclZNO0lBT0k7RVZpclZWO0VVeHJWTTtJQU9JO0VWb3JWVjtFVTNyVk07SUFPSTtFVnVyVlY7RVU5clZNO0lBT0k7RVYwclZWO0VVanNWTTtJQU9JO0VWNnJWVjtFVXBzVk07SUFPSTtJQUFBO0VWaXNWVjtFVXhzVk07SUFPSTtJQUFBO0VWcXNWVjtFVTVzVk07SUFPSTtJQUFBO0VWeXNWVjtFVWh0Vk07SUFPSTtJQUFBO0VWNnNWVjtFVXB0Vk07SUFPSTtJQUFBO0VWaXRWVjtFVXh0Vk07SUFPSTtJQUFBO0VWcXRWVjtFVTV0Vk07SUFPSTtJQUFBO0VWeXRWVjtFVWh1Vk07SUFPSTtJQUFBO0VWNnRWVjtFVXB1Vk07SUFPSTtJQUFBO0VWaXVWVjtFVXh1Vk07SUFPSTtJQUFBO0VWcXVWVjtFVTV1Vk07SUFPSTtJQUFBO0VWeXVWVjtFVWh2Vk07SUFPSTtJQUFBO0VWNnVWVjtFVXB2Vk07SUFPSTtJQUFBO0VWaXZWVjtFVXh2Vk07SUFPSTtJQUFBO0VWcXZWVjtFVTV2Vk07SUFPSTtFVnd2VlY7RVUvdlZNO0lBT0k7RVYydlZWO0VVbHdWTTtJQU9JO0VWOHZWVjtFVXJ3Vk07SUFPSTtFVml3VlY7RVV4d1ZNO0lBT0k7RVZvd1ZWO0VVM3dWTTtJQU9JO0VWdXdWVjtFVTl3Vk07SUFPSTtFVjB3VlY7RVVqeFZNO0lBT0k7RVY2d1ZWO0VVcHhWTTtJQU9JO0VWZ3hWVjtFVXZ4Vk07SUFPSTtFVm14VlY7RVUxeFZNO0lBT0k7RVZzeFZWO0VVN3hWTTtJQU9JO0VWeXhWVjtFVWh5Vk07SUFPSTtFVjR4VlY7RVVueVZNO0lBT0k7RVYreFZWO0VVdHlWTTtJQU9JO0VWa3lWVjtFVXp5Vk07SUFPSTtFVnF5VlY7RVU1eVZNO0lBT0k7RVZ3eVZWO0VVL3lWTTtJQU9JO0VWMnlWVjtFVWx6Vk07SUFPSTtFVjh5VlY7RVVyelZNO0lBT0k7RVZpelZWO0VVeHpWTTtJQU9JO0VWb3pWVjtFVTN6Vk07SUFPSTtFVnV6VlY7RVU5elZNO0lBT0k7RVYwelZWO0VVajBWTTtJQU9JO0VWNnpWVjtFVXAwVk07SUFPSTtFVmcwVlY7RVV2MFZNO0lBT0k7RVZtMFZWO0VVMTBWTTtJQU9JO0VWczBWVjtFVTcwVk07SUFPSTtFVnkwVlY7RVVoMVZNO0lBT0k7RVY0MFZWO0VVbjFWTTtJQU9JO0VWKzBWVjtFVXQxVk07SUFPSTtFVmsxVlY7RVV6MVZNO0lBT0k7RVZxMVZWO0VVNTFWTTtJQU9JO0VWdzFWVjtFVS8xVk07SUFPSTtFVjIxVlY7RVVsMlZNO0lBT0k7SUFBQTtFVisxVlY7RVV0MlZNO0lBT0k7SUFBQTtFVm0yVlY7RVUxMlZNO0lBT0k7SUFBQTtFVnUyVlY7RVU5MlZNO0lBT0k7SUFBQTtFVjIyVlY7RVVsM1ZNO0lBT0k7SUFBQTtFVisyVlY7RVV0M1ZNO0lBT0k7SUFBQTtFVm0zVlY7RVUxM1ZNO0lBT0k7SUFBQTtFVnUzVlY7RVU5M1ZNO0lBT0k7SUFBQTtFVjIzVlY7RVVsNFZNO0lBT0k7SUFBQTtFViszVlY7RVV0NFZNO0lBT0k7SUFBQTtFVm00VlY7RVUxNFZNO0lBT0k7SUFBQTtFVnU0VlY7RVU5NFZNO0lBT0k7SUFBQTtFVjI0VlY7RVVsNVZNO0lBT0k7RVY4NFZWO0VVcjVWTTtJQU9JO0VWaTVWVjtFVXg1Vk07SUFPSTtFVm81VlY7RVUzNVZNO0lBT0k7RVZ1NVZWO0VVOTVWTTtJQU9JO0VWMDVWVjtFVWo2Vk07SUFPSTtFVjY1VlY7RVVwNlZNO0lBT0k7RVZnNlZWO0VVdjZWTTtJQU9JO0VWbTZWVjtFVTE2Vk07SUFPSTtFVnM2VlY7RVU3NlZNO0lBT0k7RVZ5NlZWO0VVaDdWTTtJQU9JO0VWNDZWVjtFVW43Vk07SUFPSTtFVis2VlY7RVV0N1ZNO0lBT0k7RVZrN1ZWO0VVejdWTTtJQU9JO0VWcTdWVjtFVTU3Vk07SUFPSTtFVnc3VlY7RVUvN1ZNO0lBT0k7RVYyN1ZWO0VVbDhWTTtJQU9JO0VWODdWVjtFVXI4Vk07SUFPSTtFVmk4VlY7RVV4OFZNO0lBT0k7RVZvOFZWO0VVMzhWTTtJQU9JO0VWdThWVjtFVTk4Vk07SUFPSTtFVjA4VlY7RVVqOVZNO0lBT0k7RVY2OFZWO0VVcDlWTTtJQU9JO0VWZzlWVjtFVXY5Vk07SUFPSTtFVm05VlY7RVUxOVZNO0lBT0k7RVZzOVZWO0VVNzlWTTtJQU9JO0VWeTlWVjtFVWgrVk07SUFPSTtFVjQ5VlY7RVVuK1ZNO0lBT0k7RVYrOVZWO0VVdCtWTTtJQU9JO0VWaytWVjtFVXorVk07SUFPSTtFVnErVlY7RVU1K1ZNO0lBT0k7RVZ3K1ZWO0VVLytWTTtJQU9JO0VWMitWVjtFVWwvVk07SUFPSTtFVjgrVlY7RVVyL1ZNO0lBT0k7RVZpL1ZWO0VVeC9WTTtJQU9JO0VWby9WVjtFVTMvVk07SUFPSTtFVnUvVlY7RVU5L1ZNO0lBT0k7RVYwL1ZWO0VVamdXTTtJQU9JO0VWNi9WVjtFVXBnV007SUFPSTtFVmdnV1Y7RVV2Z1dNO0lBT0k7RVZtZ1dWO0VVMWdXTTtJQU9JO0VWc2dXVjtFVTdnV007SUFPSTtFVnlnV1Y7RVVoaFdNO0lBT0k7RVY0Z1dWO0VVbmhXTTtJQU9JO0VWK2dXVjtFVXRoV007SUFPSTtFVmtoV1Y7QUFDRjtBYTdoV0k7RUhHSTtJQU9JO0VWdWhXVjtFVTloV007SUFPSTtFVjBoV1Y7RVVqaVdNO0lBT0k7RVY2aFdWO0VVcGlXTTtJQU9JO0VWZ2lXVjtFVXZpV007SUFPSTtFVm1pV1Y7RVUxaVdNO0lBT0k7RVZzaVdWO0VVN2lXTTtJQU9JO0VWeWlXVjtFVWhqV007SUFPSTtFVjRpV1Y7RVVualdNO0lBT0k7RVYraVdWO0VVdGpXTTtJQU9JO0VWa2pXVjtFVXpqV007SUFPSTtFVnFqV1Y7RVU1aldNO0lBT0k7RVZ3aldWO0VVL2pXTTtJQU9JO0VWMmpXVjtFVWxrV007SUFPSTtFVjhqV1Y7RVVya1dNO0lBT0k7RVZpa1dWO0VVeGtXTTtJQU9JO0VWb2tXVjtFVTNrV007SUFPSTtFVnVrV1Y7RVU5a1dNO0lBT0k7RVYwa1dWO0VVamxXTTtJQU9JO0VWNmtXVjtFVXBsV007SUFPSTtFVmdsV1Y7RVV2bFdNO0lBT0k7RVZtbFdWO0VVMWxXTTtJQU9JO0VWc2xXVjtFVTdsV007SUFPSTtFVnlsV1Y7RVVobVdNO0lBT0k7RVY0bFdWO0VVbm1XTTtJQU9JO0VWK2xXVjtFVXRtV007SUFPSTtFVmttV1Y7RVV6bVdNO0lBT0k7RVZxbVdWO0VVNW1XTTtJQU9JO0VWd21XVjtFVS9tV007SUFPSTtFVjJtV1Y7RVVsbldNO0lBT0k7RVY4bVdWO0VVcm5XTTtJQU9JO0VWaW5XVjtFVXhuV007SUFPSTtFVm9uV1Y7RVUzbldNO0lBT0k7RVZ1bldWO0VVOW5XTTtJQU9JO0VWMG5XVjtFVWpvV007SUFPSTtFVjZuV1Y7RVVwb1dNO0lBT0k7RVZnb1dWO0VVdm9XTTtJQU9JO0VWbW9XVjtFVTFvV007SUFPSTtFVnNvV1Y7RVU3b1dNO0lBT0k7RVZ5b1dWO0VVaHBXTTtJQU9JO0VWNG9XVjtFVW5wV007SUFPSTtFVitvV1Y7RVV0cFdNO0lBT0k7RVZrcFdWO0VVenBXTTtJQU9JO0VWcXBXVjtFVTVwV007SUFPSTtFVndwV1Y7RVUvcFdNO0lBT0k7RVYycFdWO0VVbHFXTTtJQU9JO0VWOHBXVjtFVXJxV007SUFPSTtFVmlxV1Y7RVV4cVdNO0lBT0k7RVZvcVdWO0VVM3FXTTtJQU9JO0VWdXFXVjtFVTlxV007SUFPSTtFVjBxV1Y7RVVqcldNO0lBT0k7RVY2cVdWO0VVcHJXTTtJQU9JO0VWZ3JXVjtFVXZyV007SUFPSTtFVm1yV1Y7RVUxcldNO0lBT0k7RVZzcldWO0VVN3JXTTtJQU9JO0VWeXJXVjtFVWhzV007SUFPSTtFVjRyV1Y7RVVuc1dNO0lBT0k7RVYrcldWO0VVdHNXTTtJQU9JO0VWa3NXVjtFVXpzV007SUFPSTtFVnFzV1Y7RVU1c1dNO0lBT0k7RVZ3c1dWO0VVL3NXTTtJQU9JO0VWMnNXVjtFVWx0V007SUFPSTtFVjhzV1Y7RVVydFdNO0lBT0k7RVZpdFdWO0VVeHRXTTtJQU9JO0VWb3RXVjtFVTN0V007SUFPSTtFVnV0V1Y7RVU5dFdNO0lBT0k7RVYwdFdWO0VVanVXTTtJQU9JO0VWNnRXVjtFVXB1V007SUFPSTtFVmd1V1Y7RVV2dVdNO0lBT0k7RVZtdVdWO0VVMXVXTTtJQU9JO0lBQUE7RVZ1dVdWO0VVOXVXTTtJQU9JO0lBQUE7RVYydVdWO0VVbHZXTTtJQU9JO0lBQUE7RVYrdVdWO0VVdHZXTTtJQU9JO0lBQUE7RVZtdldWO0VVMXZXTTtJQU9JO0lBQUE7RVZ1dldWO0VVOXZXTTtJQU9JO0lBQUE7RVYydldWO0VVbHdXTTtJQU9JO0lBQUE7RVYrdldWO0VVdHdXTTtJQU9JO0lBQUE7RVZtd1dWO0VVMXdXTTtJQU9JO0lBQUE7RVZ1d1dWO0VVOXdXTTtJQU9JO0lBQUE7RVYyd1dWO0VVbHhXTTtJQU9JO0lBQUE7RVYrd1dWO0VVdHhXTTtJQU9JO0lBQUE7RVZteFdWO0VVMXhXTTtJQU9JO0lBQUE7RVZ1eFdWO0VVOXhXTTtJQU9JO0lBQUE7RVYyeFdWO0VVbHlXTTtJQU9JO0VWOHhXVjtFVXJ5V007SUFPSTtFVml5V1Y7RVV4eVdNO0lBT0k7RVZveVdWO0VVM3lXTTtJQU9JO0VWdXlXVjtFVTl5V007SUFPSTtFVjB5V1Y7RVVqeldNO0lBT0k7RVY2eVdWO0VVcHpXTTtJQU9JO0VWZ3pXVjtFVXZ6V007SUFPSTtFVm16V1Y7RVUxeldNO0lBT0k7RVZzeldWO0VVN3pXTTtJQU9JO0VWeXpXVjtFVWgwV007SUFPSTtFVjR6V1Y7RVVuMFdNO0lBT0k7RVYreldWO0VVdDBXTTtJQU9JO0VWazBXVjtFVXowV007SUFPSTtFVnEwV1Y7RVU1MFdNO0lBT0k7RVZ3MFdWO0VVLzBXTTtJQU9JO0VWMjBXVjtFVWwxV007SUFPSTtFVjgwV1Y7RVVyMVdNO0lBT0k7RVZpMVdWO0VVeDFXTTtJQU9JO0VWbzFXVjtFVTMxV007SUFPSTtFVnUxV1Y7RVU5MVdNO0lBT0k7RVYwMVdWO0VVajJXTTtJQU9JO0VWNjFXVjtFVXAyV007SUFPSTtFVmcyV1Y7RVV2MldNO0lBT0k7RVZtMldWO0VVMTJXTTtJQU9JO0VWczJXVjtFVTcyV007SUFPSTtFVnkyV1Y7RVVoM1dNO0lBT0k7RVY0MldWO0VVbjNXTTtJQU9JO0VWKzJXVjtFVXQzV007SUFPSTtFVmszV1Y7RVV6M1dNO0lBT0k7RVZxM1dWO0VVNTNXTTtJQU9JO0VWdzNXVjtFVS8zV007SUFPSTtFVjIzV1Y7RVVsNFdNO0lBT0k7RVY4M1dWO0VVcjRXTTtJQU9JO0VWaTRXVjtFVXg0V007SUFPSTtJQUFBO0VWcTRXVjtFVTU0V007SUFPSTtJQUFBO0VWeTRXVjtFVWg1V007SUFPSTtJQUFBO0VWNjRXVjtFVXA1V007SUFPSTtJQUFBO0VWaTVXVjtFVXg1V007SUFPSTtJQUFBO0VWcTVXVjtFVTU1V007SUFPSTtJQUFBO0VWeTVXVjtFVWg2V007SUFPSTtJQUFBO0VWNjVXVjtFVXA2V007SUFPSTtJQUFBO0VWaTZXVjtFVXg2V007SUFPSTtJQUFBO0VWcTZXVjtFVTU2V007SUFPSTtJQUFBO0VWeTZXVjtFVWg3V007SUFPSTtJQUFBO0VWNjZXVjtFVXA3V007SUFPSTtJQUFBO0VWaTdXVjtFVXg3V007SUFPSTtFVm83V1Y7RVUzN1dNO0lBT0k7RVZ1N1dWO0VVOTdXTTtJQU9JO0VWMDdXVjtFVWo4V007SUFPSTtFVjY3V1Y7RVVwOFdNO0lBT0k7RVZnOFdWO0VVdjhXTTtJQU9JO0VWbThXVjtFVTE4V007SUFPSTtFVnM4V1Y7RVU3OFdNO0lBT0k7RVZ5OFdWO0VVaDlXTTtJQU9JO0VWNDhXVjtFVW45V007SUFPSTtFVis4V1Y7RVV0OVdNO0lBT0k7RVZrOVdWO0VVejlXTTtJQU9JO0VWcTlXVjtFVTU5V007SUFPSTtFVnc5V1Y7RVUvOVdNO0lBT0k7RVYyOVdWO0VVbCtXTTtJQU9JO0VWODlXVjtFVXIrV007SUFPSTtFVmkrV1Y7RVV4K1dNO0lBT0k7RVZvK1dWO0VVMytXTTtJQU9JO0VWdStXVjtFVTkrV007SUFPSTtFVjArV1Y7RVVqL1dNO0lBT0k7RVY2K1dWO0VVcC9XTTtJQU9JO0VWZy9XVjtFVXYvV007SUFPSTtFVm0vV1Y7RVUxL1dNO0lBT0k7RVZzL1dWO0VVNy9XTTtJQU9JO0VWeS9XVjtFVWhnWE07SUFPSTtFVjQvV1Y7RVVuZ1hNO0lBT0k7RVYrL1dWO0VVdGdYTTtJQU9JO0VWa2dYVjtFVXpnWE07SUFPSTtFVnFnWFY7RVU1Z1hNO0lBT0k7RVZ3Z1hWO0VVL2dYTTtJQU9JO0VWMmdYVjtFVWxoWE07SUFPSTtFVjhnWFY7RVVyaFhNO0lBT0k7RVZpaFhWO0VVeGhYTTtJQU9JO0VWb2hYVjtFVTNoWE07SUFPSTtFVnVoWFY7RVU5aFhNO0lBT0k7RVYwaFhWO0VVamlYTTtJQU9JO0VWNmhYVjtFVXBpWE07SUFPSTtFVmdpWFY7RVV2aVhNO0lBT0k7RVZtaVhWO0VVMWlYTTtJQU9JO0VWc2lYVjtFVTdpWE07SUFPSTtFVnlpWFY7RVVoalhNO0lBT0k7RVY0aVhWO0VVbmpYTTtJQU9JO0VWK2lYVjtFVXRqWE07SUFPSTtFVmtqWFY7RVV6alhNO0lBT0k7RVZxalhWO0VVNWpYTTtJQU9JO0VWd2pYVjtBQUNGO0FhbmtYSTtFSEdJO0lBT0k7RVY2alhWO0VVcGtYTTtJQU9JO0VWZ2tYVjtFVXZrWE07SUFPSTtFVm1rWFY7RVUxa1hNO0lBT0k7RVZza1hWO0VVN2tYTTtJQU9JO0VWeWtYVjtFVWhsWE07SUFPSTtFVjRrWFY7RVVubFhNO0lBT0k7RVYra1hWO0VVdGxYTTtJQU9JO0VWa2xYVjtFVXpsWE07SUFPSTtFVnFsWFY7RVU1bFhNO0lBT0k7RVZ3bFhWO0VVL2xYTTtJQU9JO0VWMmxYVjtFVWxtWE07SUFPSTtFVjhsWFY7RVVybVhNO0lBT0k7RVZpbVhWO0VVeG1YTTtJQU9JO0VWb21YVjtFVTNtWE07SUFPSTtFVnVtWFY7RVU5bVhNO0lBT0k7RVYwbVhWO0VVam5YTTtJQU9JO0VWNm1YVjtFVXBuWE07SUFPSTtFVmduWFY7RVV2blhNO0lBT0k7RVZtblhWO0VVMW5YTTtJQU9JO0VWc25YVjtFVTduWE07SUFPSTtFVnluWFY7RVVob1hNO0lBT0k7RVY0blhWO0VVbm9YTTtJQU9JO0VWK25YVjtFVXRvWE07SUFPSTtFVmtvWFY7RVV6b1hNO0lBT0k7RVZxb1hWO0VVNW9YTTtJQU9JO0VWd29YVjtFVS9vWE07SUFPSTtFVjJvWFY7RVVscFhNO0lBT0k7RVY4b1hWO0VVcnBYTTtJQU9JO0VWaXBYVjtFVXhwWE07SUFPSTtFVm9wWFY7RVUzcFhNO0lBT0k7RVZ1cFhWO0VVOXBYTTtJQU9JO0VWMHBYVjtFVWpxWE07SUFPSTtFVjZwWFY7RVVwcVhNO0lBT0k7RVZncVhWO0VVdnFYTTtJQU9JO0VWbXFYVjtFVTFxWE07SUFPSTtFVnNxWFY7RVU3cVhNO0lBT0k7RVZ5cVhWO0VVaHJYTTtJQU9JO0VWNHFYVjtFVW5yWE07SUFPSTtFVitxWFY7RVV0clhNO0lBT0k7RVZrclhWO0VVenJYTTtJQU9JO0VWcXJYVjtFVTVyWE07SUFPSTtFVndyWFY7RVUvclhNO0lBT0k7RVYyclhWO0VVbHNYTTtJQU9JO0VWOHJYVjtFVXJzWE07SUFPSTtFVmlzWFY7RVV4c1hNO0lBT0k7RVZvc1hWO0VVM3NYTTtJQU9JO0VWdXNYVjtFVTlzWE07SUFPSTtFVjBzWFY7RVVqdFhNO0lBT0k7RVY2c1hWO0VVcHRYTTtJQU9JO0VWZ3RYVjtFVXZ0WE07SUFPSTtFVm10WFY7RVUxdFhNO0lBT0k7RVZzdFhWO0VVN3RYTTtJQU9JO0VWeXRYVjtFVWh1WE07SUFPSTtFVjR0WFY7RVVudVhNO0lBT0k7RVYrdFhWO0VVdHVYTTtJQU9JO0VWa3VYVjtFVXp1WE07SUFPSTtFVnF1WFY7RVU1dVhNO0lBT0k7RVZ3dVhWO0VVL3VYTTtJQU9JO0VWMnVYVjtFVWx2WE07SUFPSTtFVjh1WFY7RVVydlhNO0lBT0k7RVZpdlhWO0VVeHZYTTtJQU9JO0VWb3ZYVjtFVTN2WE07SUFPSTtFVnV2WFY7RVU5dlhNO0lBT0k7RVYwdlhWO0VVandYTTtJQU9JO0VWNnZYVjtFVXB3WE07SUFPSTtFVmd3WFY7RVV2d1hNO0lBT0k7RVZtd1hWO0VVMXdYTTtJQU9JO0VWc3dYVjtFVTd3WE07SUFPSTtFVnl3WFY7RVVoeFhNO0lBT0k7SUFBQTtFVjZ3WFY7RVVweFhNO0lBT0k7SUFBQTtFVml4WFY7RVV4eFhNO0lBT0k7SUFBQTtFVnF4WFY7RVU1eFhNO0lBT0k7SUFBQTtFVnl4WFY7RVVoeVhNO0lBT0k7SUFBQTtFVjZ4WFY7RVVweVhNO0lBT0k7SUFBQTtFVml5WFY7RVV4eVhNO0lBT0k7SUFBQTtFVnF5WFY7RVU1eVhNO0lBT0k7SUFBQTtFVnl5WFY7RVVoelhNO0lBT0k7SUFBQTtFVjZ5WFY7RVVwelhNO0lBT0k7SUFBQTtFVml6WFY7RVV4elhNO0lBT0k7SUFBQTtFVnF6WFY7RVU1elhNO0lBT0k7SUFBQTtFVnl6WFY7RVVoMFhNO0lBT0k7SUFBQTtFVjZ6WFY7RVVwMFhNO0lBT0k7SUFBQTtFVmkwWFY7RVV4MFhNO0lBT0k7RVZvMFhWO0VVMzBYTTtJQU9JO0VWdTBYVjtFVTkwWE07SUFPSTtFVjAwWFY7RVVqMVhNO0lBT0k7RVY2MFhWO0VVcDFYTTtJQU9JO0VWZzFYVjtFVXYxWE07SUFPSTtFVm0xWFY7RVUxMVhNO0lBT0k7RVZzMVhWO0VVNzFYTTtJQU9JO0VWeTFYVjtFVWgyWE07SUFPSTtFVjQxWFY7RVVuMlhNO0lBT0k7RVYrMVhWO0VVdDJYTTtJQU9JO0VWazJYVjtFVXoyWE07SUFPSTtFVnEyWFY7RVU1MlhNO0lBT0k7RVZ3MlhWO0VVLzJYTTtJQU9JO0VWMjJYVjtFVWwzWE07SUFPSTtFVjgyWFY7RVVyM1hNO0lBT0k7RVZpM1hWO0VVeDNYTTtJQU9JO0VWbzNYVjtFVTMzWE07SUFPSTtFVnUzWFY7RVU5M1hNO0lBT0k7RVYwM1hWO0VVajRYTTtJQU9JO0VWNjNYVjtFVXA0WE07SUFPSTtFVmc0WFY7RVV2NFhNO0lBT0k7RVZtNFhWO0VVMTRYTTtJQU9JO0VWczRYVjtFVTc0WE07SUFPSTtFVnk0WFY7RVVoNVhNO0lBT0k7RVY0NFhWO0VVbjVYTTtJQU9JO0VWKzRYVjtFVXQ1WE07SUFPSTtFVms1WFY7RVV6NVhNO0lBT0k7RVZxNVhWO0VVNTVYTTtJQU9JO0VWdzVYVjtFVS81WE07SUFPSTtFVjI1WFY7RVVsNlhNO0lBT0k7RVY4NVhWO0VVcjZYTTtJQU9JO0VWaTZYVjtFVXg2WE07SUFPSTtFVm82WFY7RVUzNlhNO0lBT0k7RVZ1NlhWO0VVOTZYTTtJQU9JO0lBQUE7RVYyNlhWO0VVbDdYTTtJQU9JO0lBQUE7RVYrNlhWO0VVdDdYTTtJQU9JO0lBQUE7RVZtN1hWO0VVMTdYTTtJQU9JO0lBQUE7RVZ1N1hWO0VVOTdYTTtJQU9JO0lBQUE7RVYyN1hWO0VVbDhYTTtJQU9JO0lBQUE7RVYrN1hWO0VVdDhYTTtJQU9JO0lBQUE7RVZtOFhWO0VVMThYTTtJQU9JO0lBQUE7RVZ1OFhWO0VVOThYTTtJQU9JO0lBQUE7RVYyOFhWO0VVbDlYTTtJQU9JO0lBQUE7RVYrOFhWO0VVdDlYTTtJQU9JO0lBQUE7RVZtOVhWO0VVMTlYTTtJQU9JO0lBQUE7RVZ1OVhWO0VVOTlYTTtJQU9JO0VWMDlYVjtFVWorWE07SUFPSTtFVjY5WFY7RVVwK1hNO0lBT0k7RVZnK1hWO0VVditYTTtJQU9JO0VWbStYVjtFVTErWE07SUFPSTtFVnMrWFY7RVU3K1hNO0lBT0k7RVZ5K1hWO0VVaC9YTTtJQU9JO0VWNCtYVjtFVW4vWE07SUFPSTtFVisrWFY7RVV0L1hNO0lBT0k7RVZrL1hWO0VVei9YTTtJQU9JO0VWcS9YVjtFVTUvWE07SUFPSTtFVncvWFY7RVUvL1hNO0lBT0k7RVYyL1hWO0VVbGdZTTtJQU9JO0VWOC9YVjtFVXJnWU07SUFPSTtFVmlnWVY7RVV4Z1lNO0lBT0k7RVZvZ1lWO0VVM2dZTTtJQU9JO0VWdWdZVjtFVTlnWU07SUFPSTtFVjBnWVY7RVVqaFlNO0lBT0k7RVY2Z1lWO0VVcGhZTTtJQU9JO0VWZ2hZVjtFVXZoWU07SUFPSTtFVm1oWVY7RVUxaFlNO0lBT0k7RVZzaFlWO0VVN2hZTTtJQU9JO0VWeWhZVjtFVWhpWU07SUFPSTtFVjRoWVY7RVVuaVlNO0lBT0k7RVYraFlWO0VVdGlZTTtJQU9JO0VWa2lZVjtFVXppWU07SUFPSTtFVnFpWVY7RVU1aVlNO0lBT0k7RVZ3aVlWO0VVL2lZTTtJQU9JO0VWMmlZVjtFVWxqWU07SUFPSTtFVjhpWVY7RVVyallNO0lBT0k7RVZpallWO0VVeGpZTTtJQU9JO0VWb2pZVjtFVTNqWU07SUFPSTtFVnVqWVY7RVU5allNO0lBT0k7RVYwallWO0VVamtZTTtJQU9JO0VWNmpZVjtFVXBrWU07SUFPSTtFVmdrWVY7RVV2a1lNO0lBT0k7RVZta1lWO0VVMWtZTTtJQU9JO0VWc2tZVjtFVTdrWU07SUFPSTtFVnlrWVY7RVVobFlNO0lBT0k7RVY0a1lWO0VVbmxZTTtJQU9JO0VWK2tZVjtFVXRsWU07SUFPSTtFVmtsWVY7RVV6bFlNO0lBT0k7RVZxbFlWO0VVNWxZTTtJQU9JO0VWd2xZVjtFVS9sWU07SUFPSTtFVjJsWVY7RVVsbVlNO0lBT0k7RVY4bFlWO0FBQ0Y7QWF6bVlJO0VIR0k7SUFPSTtFVm1tWVY7RVUxbVlNO0lBT0k7RVZzbVlWO0VVN21ZTTtJQU9JO0VWeW1ZVjtFVWhuWU07SUFPSTtFVjRtWVY7RVVubllNO0lBT0k7RVYrbVlWO0VVdG5ZTTtJQU9JO0VWa25ZVjtFVXpuWU07SUFPSTtFVnFuWVY7RVU1bllNO0lBT0k7RVZ3bllWO0VVL25ZTTtJQU9JO0VWMm5ZVjtFVWxvWU07SUFPSTtFVjhuWVY7RVVyb1lNO0lBT0k7RVZpb1lWO0VVeG9ZTTtJQU9JO0VWb29ZVjtFVTNvWU07SUFPSTtFVnVvWVY7RVU5b1lNO0lBT0k7RVYwb1lWO0VVanBZTTtJQU9JO0VWNm9ZVjtFVXBwWU07SUFPSTtFVmdwWVY7RVV2cFlNO0lBT0k7RVZtcFlWO0VVMXBZTTtJQU9JO0VWc3BZVjtFVTdwWU07SUFPSTtFVnlwWVY7RVVocVlNO0lBT0k7RVY0cFlWO0VVbnFZTTtJQU9JO0VWK3BZVjtFVXRxWU07SUFPSTtFVmtxWVY7RVV6cVlNO0lBT0k7RVZxcVlWO0VVNXFZTTtJQU9JO0VWd3FZVjtFVS9xWU07SUFPSTtFVjJxWVY7RVVscllNO0lBT0k7RVY4cVlWO0VVcnJZTTtJQU9JO0VWaXJZVjtFVXhyWU07SUFPSTtFVm9yWVY7RVUzcllNO0lBT0k7RVZ1cllWO0VVOXJZTTtJQU9JO0VWMHJZVjtFVWpzWU07SUFPSTtFVjZyWVY7RVVwc1lNO0lBT0k7RVZnc1lWO0VVdnNZTTtJQU9JO0VWbXNZVjtFVTFzWU07SUFPSTtFVnNzWVY7RVU3c1lNO0lBT0k7RVZ5c1lWO0VVaHRZTTtJQU9JO0VWNHNZVjtFVW50WU07SUFPSTtFVitzWVY7RVV0dFlNO0lBT0k7RVZrdFlWO0VVenRZTTtJQU9JO0VWcXRZVjtFVTV0WU07SUFPSTtFVnd0WVY7RVUvdFlNO0lBT0k7RVYydFlWO0VVbHVZTTtJQU9JO0VWOHRZVjtFVXJ1WU07SUFPSTtFVml1WVY7RVV4dVlNO0lBT0k7RVZvdVlWO0VVM3VZTTtJQU9JO0VWdXVZVjtFVTl1WU07SUFPSTtFVjB1WVY7RVVqdllNO0lBT0k7RVY2dVlWO0VVcHZZTTtJQU9JO0VWZ3ZZVjtFVXZ2WU07SUFPSTtFVm12WVY7RVUxdllNO0lBT0k7RVZzdllWO0VVN3ZZTTtJQU9JO0VWeXZZVjtFVWh3WU07SUFPSTtFVjR2WVY7RVVud1lNO0lBT0k7RVYrdllWO0VVdHdZTTtJQU9JO0VWa3dZVjtFVXp3WU07SUFPSTtFVnF3WVY7RVU1d1lNO0lBT0k7RVZ3d1lWO0VVL3dZTTtJQU9JO0VWMndZVjtFVWx4WU07SUFPSTtFVjh3WVY7RVVyeFlNO0lBT0k7RVZpeFlWO0VVeHhZTTtJQU9JO0VWb3hZVjtFVTN4WU07SUFPSTtFVnV4WVY7RVU5eFlNO0lBT0k7RVYweFlWO0VVanlZTTtJQU9JO0VWNnhZVjtFVXB5WU07SUFPSTtFVmd5WVY7RVV2eVlNO0lBT0k7RVZteVlWO0VVMXlZTTtJQU9JO0VWc3lZVjtFVTd5WU07SUFPSTtFVnl5WVY7RVVoellNO0lBT0k7RVY0eVlWO0VVbnpZTTtJQU9JO0VWK3lZVjtFVXR6WU07SUFPSTtJQUFBO0VWbXpZVjtFVTF6WU07SUFPSTtJQUFBO0VWdXpZVjtFVTl6WU07SUFPSTtJQUFBO0VWMnpZVjtFVWwwWU07SUFPSTtJQUFBO0VWK3pZVjtFVXQwWU07SUFPSTtJQUFBO0VWbTBZVjtFVTEwWU07SUFPSTtJQUFBO0VWdTBZVjtFVTkwWU07SUFPSTtJQUFBO0VWMjBZVjtFVWwxWU07SUFPSTtJQUFBO0VWKzBZVjtFVXQxWU07SUFPSTtJQUFBO0VWbTFZVjtFVTExWU07SUFPSTtJQUFBO0VWdTFZVjtFVTkxWU07SUFPSTtJQUFBO0VWMjFZVjtFVWwyWU07SUFPSTtJQUFBO0VWKzFZVjtFVXQyWU07SUFPSTtJQUFBO0VWbTJZVjtFVTEyWU07SUFPSTtJQUFBO0VWdTJZVjtFVTkyWU07SUFPSTtFVjAyWVY7RVVqM1lNO0lBT0k7RVY2MllWO0VVcDNZTTtJQU9JO0VWZzNZVjtFVXYzWU07SUFPSTtFVm0zWVY7RVUxM1lNO0lBT0k7RVZzM1lWO0VVNzNZTTtJQU9JO0VWeTNZVjtFVWg0WU07SUFPSTtFVjQzWVY7RVVuNFlNO0lBT0k7RVYrM1lWO0VVdDRZTTtJQU9JO0VWazRZVjtFVXo0WU07SUFPSTtFVnE0WVY7RVU1NFlNO0lBT0k7RVZ3NFlWO0VVLzRZTTtJQU9JO0VWMjRZVjtFVWw1WU07SUFPSTtFVjg0WVY7RVVyNVlNO0lBT0k7RVZpNVlWO0VVeDVZTTtJQU9JO0VWbzVZVjtFVTM1WU07SUFPSTtFVnU1WVY7RVU5NVlNO0lBT0k7RVYwNVlWO0VVajZZTTtJQU9JO0VWNjVZVjtFVXA2WU07SUFPSTtFVmc2WVY7RVV2NllNO0lBT0k7RVZtNllWO0VVMTZZTTtJQU9JO0VWczZZVjtFVTc2WU07SUFPSTtFVnk2WVY7RVVoN1lNO0lBT0k7RVY0NllWO0VVbjdZTTtJQU9JO0VWKzZZVjtFVXQ3WU07SUFPSTtFVms3WVY7RVV6N1lNO0lBT0k7RVZxN1lWO0VVNTdZTTtJQU9JO0VWdzdZVjtFVS83WU07SUFPSTtFVjI3WVY7RVVsOFlNO0lBT0k7RVY4N1lWO0VVcjhZTTtJQU9JO0VWaThZVjtFVXg4WU07SUFPSTtFVm84WVY7RVUzOFlNO0lBT0k7RVZ1OFlWO0VVOThZTTtJQU9JO0VWMDhZVjtFVWo5WU07SUFPSTtFVjY4WVY7RVVwOVlNO0lBT0k7SUFBQTtFVmk5WVY7RVV4OVlNO0lBT0k7SUFBQTtFVnE5WVY7RVU1OVlNO0lBT0k7SUFBQTtFVnk5WVY7RVVoK1lNO0lBT0k7SUFBQTtFVjY5WVY7RVVwK1lNO0lBT0k7SUFBQTtFVmkrWVY7RVV4K1lNO0lBT0k7SUFBQTtFVnErWVY7RVU1K1lNO0lBT0k7SUFBQTtFVnkrWVY7RVVoL1lNO0lBT0k7SUFBQTtFVjYrWVY7RVVwL1lNO0lBT0k7SUFBQTtFVmkvWVY7RVV4L1lNO0lBT0k7SUFBQTtFVnEvWVY7RVU1L1lNO0lBT0k7SUFBQTtFVnkvWVY7RVVoZ1pNO0lBT0k7SUFBQTtFVjYvWVY7RVVwZ1pNO0lBT0k7RVZnZ1pWO0VVdmdaTTtJQU9JO0VWbWdaVjtFVTFnWk07SUFPSTtFVnNnWlY7RVU3Z1pNO0lBT0k7RVZ5Z1pWO0VVaGhaTTtJQU9JO0VWNGdaVjtFVW5oWk07SUFPSTtFVitnWlY7RVV0aFpNO0lBT0k7RVZraFpWO0VVemhaTTtJQU9JO0VWcWhaVjtFVTVoWk07SUFPSTtFVndoWlY7RVUvaFpNO0lBT0k7RVYyaFpWO0VVbGlaTTtJQU9JO0VWOGhaVjtFVXJpWk07SUFPSTtFVmlpWlY7RVV4aVpNO0lBT0k7RVZvaVpWO0VVM2laTTtJQU9JO0VWdWlaVjtFVTlpWk07SUFPSTtFVjBpWlY7RVVqalpNO0lBT0k7RVY2aVpWO0VVcGpaTTtJQU9JO0VWZ2paVjtFVXZqWk07SUFPSTtFVm1qWlY7RVUxalpNO0lBT0k7RVZzalpWO0VVN2paTTtJQU9JO0VWeWpaVjtFVWhrWk07SUFPSTtFVjRqWlY7RVVua1pNO0lBT0k7RVYralpWO0VVdGtaTTtJQU9JO0VWa2taVjtFVXprWk07SUFPSTtFVnFrWlY7RVU1a1pNO0lBT0k7RVZ3a1pWO0VVL2taTTtJQU9JO0VWMmtaVjtFVWxsWk07SUFPSTtFVjhrWlY7RVVybFpNO0lBT0k7RVZpbFpWO0VVeGxaTTtJQU9JO0VWb2xaVjtFVTNsWk07SUFPSTtFVnVsWlY7RVU5bFpNO0lBT0k7RVYwbFpWO0VVam1aTTtJQU9JO0VWNmxaVjtFVXBtWk07SUFPSTtFVmdtWlY7RVV2bVpNO0lBT0k7RVZtbVpWO0VVMW1aTTtJQU9JO0VWc21aVjtFVTdtWk07SUFPSTtFVnltWlY7RVVoblpNO0lBT0k7RVY0bVpWO0VVbm5aTTtJQU9JO0VWK21aVjtFVXRuWk07SUFPSTtFVmtuWlY7RVV6blpNO0lBT0k7RVZxblpWO0VVNW5aTTtJQU9JO0VWd25aVjtFVS9uWk07SUFPSTtFVjJuWlY7RVVsb1pNO0lBT0k7RVY4blpWO0VVcm9aTTtJQU9JO0VWaW9aVjtFVXhvWk07SUFPSTtFVm9vWlY7QUFDRjtBZ0IzclpBO0VOK0NRO0lBT0k7RVZ5b1pWO0VVaHBaTTtJQU9JO0VWNG9aVjtFVW5wWk07SUFPSTtFVitvWlY7RVV0cFpNO0lBT0k7RVZrcFpWO0FBQ0Y7QWdCdHJaQTtFTjRCUTtJQU9JO0VWdXBaVjtFVTlwWk07SUFPSTtFVjBwWlY7RVVqcVpNO0lBT0k7RVY2cFpWO0VVcHFaTTtJQU9JO0VWZ3FaVjtFVXZxWk07SUFPSTtFVm1xWlY7RVUxcVpNO0lBT0k7RVZzcVpWO0VVN3FaTTtJQU9JO0VWeXFaVjtFVWhyWk07SUFPSTtFVjRxWlY7RVVuclpNO0lBT0k7RVYrcVpWO0VVdHJaTTtJQU9JO0VWa3JaVjtFVXpyWk07SUFPSTtFVnFyWlY7QUFDRjtBMkQvdlpBO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEZ3daSjs7QTJEOXZaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEaXdaSjtBMkQvdlpJO0VBQ0k7QTNEaXdaUjtBMkQ5dlpJO0VBQ0k7RUFDQTtBM0Rnd1pSOztBMkQ3dlpBOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEZ3daSjs7QTJEN3ZaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Rnd1pKO0EyRDl2Wkk7RUFFSTtFQUNBO0EzRCt2WlI7QTJENXZaSTtFQUNJO0EzRDh2WlI7QTJEM3ZaSTtFQUNJO0EzRDZ2WlI7O0EyRDF2WkE7RUFDSTtFQUNBO0VBQ0E7RUFXQTtBM0RtdlpKO0EyRDd2Wkk7RUFDSTtBM0QrdlpSO0EyRDd2Wkk7RUFDSTtBM0QrdlpSO0EyRDd2Wkk7RUFDSTtBM0QrdlpSO0EyRDF2Wkk7RUFDSTtBM0Q0dlpSO0EyRHp2Wkk7RUFDSTtBM0QydlpSO0EyRHh2Wkk7RUFDSTtBM0QwdlpSO0EyRHZ2Wkk7RUFDSTtFQUNBO0VBQ0E7QTNEeXZaUjs7QTJEdHZaQTtFQUNJO0EzRHl2Wko7O0E0RDExWkE7Ozs7OztFQUFBO0FDR0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Q4MVpGO0E2RDUxWkU7RUFLSSxZckQ0SjJCO0FSOHJaakM7QTZEcjFaSTtFQUtJLFlyRGtKeUI7QVJpc1pqQztBNkQvMFpJOzs7RUFHRSx5QnJETlE7QVJ1MVpkOztBNkQ1MFpBO0VBQ0UsV3JEZ0krQjtFcUQvSC9CO0VBQ0E7RUFDQTtBN0QrMFpGOztBNkQ1MFpBO0VBQ0U7RUFDQTtFQUNBO0E3RCswWkY7QTZENzBaRTtFQUdFLFdyRGtINkI7RXFEakg3QixXckRrSDZCO0VxRGpIN0IseUJyRDVCVTtFcUQ2QlYsa0JyRG1INkI7RXFEbEg3QjtFQUNBO0VBQ0E7RUFDQTtBN0Q2MFpKO0E2RDEwWkU7RUFFRTtFQUNBO0E3RDIwWko7QTZEeDBaRTtFQUNFO0E3RDAwWko7QTZEdjBaRTtFQUNFO0E3RHkwWko7O0E4RDc1WkU7O0VBQUE7QUFJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlEKzVaTjtBOEQ3NVpNO0VBQ0U7RUFDQTtBOUQrNVpSO0E4RDM1Wk07RUFDRTtBOUQ2NVpSO0E4RHY1Wk07RUFDRTtFQUNBO0VBQ0E7QTlEeTVaUjtBOER2NVpRO0VBQ0U7RUFDQTtFQUNBO0E5RHk1WlY7QThEcjVaUTtFQUNFO0VBQ0E7RUFDQTtBOUR1NVpWOztBK0Q5N1pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQ21Qa0I7RURsUGxCO0VBQ0EsZ0JDUlU7RURTVix5TENxT0Y7RURwT0U7QS9EaThaSjtBK0QvN1pJO0VBQ0U7QS9EaThaTjtBK0Q5N1pJO0VBQ0UsaUJDeU9xQjtFRHhPckIsVUN5T3NCO0VEeE90QixjQ3lPd0I7RUR4T3hCO0EvRGc4Wk47QStENzdaSTtFQUNFO0EvRCs3Wk47QStENTdaSTtFQUNFLFdDcU9xQjtFRHBPckIsYUNxT3FCO0VEcE9yQixjQ3FPd0I7QWhFeXRaOUI7QStEMzdaSTtFQUNFLGNDa082QjtBaEUydFpuQztBK0QxN1pJO0VBQ0UsaUJDZ09zQjtFRC9OdEIsa0JDK05zQjtFRDlOdEIsZ0JDZ095QjtBaEU0dFovQjtBK0R6N1pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWUNxTTJCO0VEcE0zQixhQ3FNNEI7RURwTTVCLFNDcU00QjtFRHBNNUIsY0NxTStCO0FoRXN2WnJDO0ErRHg3Wkk7RUFDRSxpQkN3TThCO0VEdk05QixVQ3dNK0I7RUR2TS9CO0VBQ0EsY0N1TWlDO0VEdE1qQztBL0QwN1pOO0ErRHg3Wk07RUFDRTtBL0QwN1pSO0ErRHQ3Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EdzdaTjtBK0RyN1pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9EdTdaTjtBK0RyN1pNO0VBQ0U7RUFDQTtFQUNBLGdCQ3VLcUI7RUR0S3JCO0EvRHU3WlI7QStEbjdaUTtFQUNFO0VBQ0E7QS9EcTdaVjtBK0RoN1pRO0VBQ0U7RUFDQTtBL0RrN1pWO0ErRGg3WlU7RUFDRTtBL0RrN1paO0ErRC82WlU7RUFDRTtBL0RpN1paO0ErRDM2Wkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRDY2Wk47QStEMTZaSTtFQUNFO0VBQ0E7RUFDQSxjQ3lJMEI7QWhFbXlaaEM7QStEejZaSTtFQUNFLHFCQzFGVTtBaEVxZ2FoQjtBK0R6NlpNO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QS9EMDZaUjtBK0R4NlpRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0QwNlpWO0ErRHY2WlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBL0R5NlpWO0ErRHI2Wk07RUFDRTtFQUNBO0EvRHU2WlI7QStEcDZaTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvRHM2WlI7QStEbjZaTTtFQUNFO0EvRHE2WlI7QStEbjZaUTtFQUNFO0VBQ0E7RUFDQTtBL0RxNlpWO0ErRGw2WlE7RUFDRTtFQUNBO0VBQ0E7QS9EbzZaVjtBK0Q5NVpVO0VBQ0U7QS9EZzZaWjtBK0Q3NVpVO0VBQ0U7QS9EKzVaWjtBK0R6NVpJO0VBQ0UsZ0NDdUN1QjtBaEVvM1o3QjtBK0R4NVpJO0VBQ0UseUNDb0N1QjtBaEVzM1o3Qjs7QWlFL2xhQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwrSUFDRTtFQUdGO0VBQ0E7RUFDQSxnQkRUd0I7RUNVeEI7RUFDQSxpQ0RZMEI7RUNUMUI7QWpFNmxhRjtBaUUzbGFFO0VBRUUsOEJESWE7QWhFd2xhakI7QWlFemxhRTtFQUNFO0FqRTJsYUo7QWlFeGxhRTtFQUdFO0FqRXdsYUo7QWlFcmxhRTtFQUdFO0FqRXFsYUo7QWlFbGxhRTtFQUdFO0FqRWtsYUo7QWlFL2thRTtFQUNFO0FqRWlsYUo7QWlFOWthRTtFQUNFO0VBQ0E7QWpFZ2xhSjtBaUU3a2FFO0VBRUU7RUFDQTtBakU4a2FKO0FpRTNrYUU7RUFFRTtFQUNBO0FqRTRrYUo7QWlFemthRTtFQUNFO0VBQ0E7RUFDQTtBakUya2FKO0FpRXhrYUU7RUFFRTtFQUNBO0VBQ0E7QWpFeWthSjtBaUV0a2FFO0VBRUU7RUFDQTtFQUNBO0FqRXVrYUo7QWlFcGthRTtFQUNFO0VBQ0E7RUFDQTtBakVza2FKO0FpRW5rYUU7RUFFRTtFQUNBO0VBQ0E7QWpFb2thSjtBaUVqa2FFO0VBRUU7RUFDQTtBakVra2FKO0FpRS9qYUU7RUFFRTtFQUNBO0FqRWdrYUo7QWlFN2phRTtFQUNFO0FqRStqYUo7QWlFNWphRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV0RuSFU7RUNvSFY7RUFDQSxtQkRwSFk7RUNxSFosWURwSFc7RUNxSFgsa0JEbkhrQjtFQ29IbEIsZ0JEaElVO0VDaUlWLGNEdEhVO0VDdUhWLG9CRDNHUztFQzRHVCxlRDNHYztBaEV5cWFsQjtBaUU1amFJO0VBQ0U7QWpFOGphTjtBaUUzamFJO0VBQ0U7QWpFNmphTjtBaUV6amFFO0VBQ0Usa0JEOUZtQjtFQytGbkIsZUQ5Rm9CO0VDK0ZwQixTRDlGaUI7RUMrRmpCLG9CRDlGa0I7RUMrRmxCLGNEOUZnQjtFQytGaEIsa0JEOUZvQjtFQytGcEIsZ0JEOUZzQjtFQytGdEIsa0JEOUZxQjtFQytGckI7RUFDQTtBakUyamFKO0FpRXhqYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxlRGlCc0I7RUNoQnRCLG1CRGlCd0I7RUNoQnhCLHVCRGlCNEI7RUNoQjVCLFdEaUJrQjtFQ2hCbEIscUJEaUJtQjtFQ2hCbkIsVURpQm9CO0FoRXlpYXhCO0FpRXRqYVE7RUFDRTtBakV3amFWO0FpRXJqYVE7RUFDRTtBakV1amFWO0FpRXBqYVE7RUFDRTtBakVzamFWO0FpRWhqYUU7RUFDRTtFQUNBLG1CRHFDdUI7RUNwQ3ZCLHVCRHFDMkI7RUNwQzNCLFlEcUNpQjtFQ3BDakIsYURxQ2tCO0VDcENsQixpQkRxQ2tCO0VDcENsQiw4RERxQ3FCO0VDcENyQixvQkRxQ3dCO0VDcEN4QixtQkRxQ3dCO0VDcEN4QixtQkRxQ3lCO0VDcEN6QixxRERxQ3dCO0FoRTZnYTVCO0FpRS9pYUU7RUFDRSxnQkRka0I7RUNlbEIsc0JEZG1CO0VDZW5CLDJCRGRzQjtFQ2V0QixpQ0Rkc0I7RUNldEIsZ0JEZHVCO0FoRStqYTNCO0FpRS9pYUk7RUFDRTtBakVpamFOO0FpRTlpYUk7RUFFRSxTRGR3QjtFQ2V4QixxQkRkK0I7RUNlL0I7RUFDQSx5QkRma0M7RUNnQmxDLFdEdE5RO0VDdU5SLGNEZjJCO0FoRThqYWpDO0FpRTdpYU07RUFDRSw4Q0RqQmdDO0FoRWdrYXhDO0FpRTNpYUk7RUFFRSxTRG5CcUI7RUNvQnJCLHFCRG5CNEI7RUNvQjVCO0VBQ0EseUJEcEIrQjtFQ3FCL0IsV0RwT1E7RUNxT1IsY0RwQndCO0FoRWdrYTlCO0FpRTFpYU07RUFDRSw0Q0R0QjZCO0FoRWtrYXJDO0FpRXhpYUk7RUFFRSxTRHhCdUI7RUN5QnZCLHFCRHhCOEI7RUN5QjlCO0VBQ0EseUJEekJpQztFQzBCakMsV0RsUFE7RUNtUFIsY0R6QjBCO0FoRWtrYWhDO0FpRXZpYU07RUFDRSw4Q0QzQitCO0FoRW9rYXZDO0FpRXBpYU07RUFDRSw4Q0Q1RHdCO0FoRWttYWhDO0FpRWxpYUk7RUFDRSxhRGxFdUI7QWhFc21hN0I7QWlFamlhSTtFQUNFO0FqRW1pYU47QWlFL2hhRTtFQUNFLGVEcElrQjtFQ3FJbEIsa0JEcEltQjtFQ3FJbkI7RUFDQSxjRHBJaUI7RUNxSWpCLGNEcElxQjtFQ3FJckIsa0JEcElzQjtBaEVxcWExQjtBaUU5aGFFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsK0JEN1FrQjtFQzhRbEIsOEJEOVFrQjtBaEU4eWF0QjtBaUU3aGFFO0VBQ0U7RUFDQSxjRGpKOEI7RUNrSjlCLDhCRGpKa0M7QWhFZ3JhdEM7QWlFNWhhRTtFQUNFO0VBQ0Esb0JEdlBpQjtBaEVxeGFyQjtBaUUzaGFFO0VBRUU7RUFDQSxtQkR4SjZCO0VDeUo3Qix1QkR4SmlDO0VDeUpqQyxZRHhKdUI7RUN5SnZCLGFEeEp3QjtFQ3lKeEIsYUR2SnFCO0VDd0pyQixlRHhKcUI7RUN5SnJCO0VBQ0EsVUR6SnlCO0VDMEp6QjtFQUNBLHVDRHpKRjtFQzBKRSxZRHhKd0I7RUN5SnhCLGtCRDFTa0I7RUM0U2xCLHVCRHhKNEI7RUN5SjVCLFdEeEp1QjtFQ3lKdkIsc0JEeEo2QjtFQ3lKN0IsZ0JEeEoyQjtFQ3lKM0I7RUFDQSxpQkQzSzhCO0FoRXNzYWxDO0FpRXpoYUk7RUFDRSxlRHpKK0I7RUMwSi9CLHVCRHhKZ0M7RUN5SmhDLGNEMVJRO0FoRXF6YWQ7QWlFeGhhSTtFQUNFLGFEMUo2QjtFQzJKN0Isb0REMUpnQztBaEVvcmF0QztBaUV2aGFJO0VBQ0U7QWpFeWhhTjtBaUVyaGFFO0VBQ0U7RUFDQSx1QkR0Um1DO0VDdVJuQyxTRHRSMEI7RUN1UjFCLHdCRHRSMkI7RUN1UjNCLGNEdFI0QjtFQ3VSNUIsY0R0UnlCO0VDdVJ6QixrQkR0UjZCO0VDdVI3QixtQkR0UitCO0VDdVIvQixtQkR0UitCO0VDdVIvQixrQkR0UjhCO0VDdVI5QixxQkR0UjZCO0VDdVI3QixzQkR0UjhCO0FoRTZ5YWxDO0FpRXBoYUU7Ozs7OztFQU1FLG1CRDVSaUI7QWhFa3phckI7QWlFbmhhRTs7O0VBR0U7RUFDQSxXRGxTZ0I7RUNtU2hCLDhDRHZSRjtFQ3dSRSx5QkRqU2lCO0VDa1NqQix1QkRqU3dCO0VDa1N4Qix1QkQ3UnFCO0VDOFJyQixzRURqU0Y7RUNrU0UsY0Q5UmdCO0VDK1JoQixrQkRqU29CO0FoRXN6YXhCO0FpRW5oYUk7OztFQUNFO0VBQ0E7QWpFdWhhTjtBaUVwaGFJOzs7RUFDRSx5QkRqU3FCO0VDa1NyQixhRGpTc0I7RUNrU3RCLG1GRGhTSjtBaEV3emFGO0FpRXJoYUk7OztFQUNFO0FqRXloYU47QWlFcmhhRTtFQUNFLG1CRDdUaUI7RUM4VGpCLGdCRHRZVTtBaEU2NWFkO0FpRXJoYUk7RUFDRTtBakV1aGFOO0FpRXBoYUk7RUFDRTtFQUNBLGNEM1RjO0VDNFRkO0VBQ0E7QWpFc2hhTjtBaUVuaGFJOztFQUVFLGVEM1VlO0VDNFVmO0VBQ0Esa0JEdFVrQjtFQ3VVbEIsb0JEOVVlO0FoRW0yYXJCO0FpRWpoYUU7RUFDRSxlRG5WaUI7RUNvVmpCLGlCRG5Wa0I7QWhFczJhdEI7QWlFaGhhRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHVCRG5WcUI7RUNvVnJCLGtCRHJWb0I7QWhFdTJheEI7QWlFL2dhRTtFQUNFLGNEMVVvQjtFQzJVcEIsZUQxVXFCO0FoRTIxYXpCO0FpRTlnYUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx1QkRoV3FCO0VDaVdyQixjRGhXZ0I7RUNpV2hCLGtCRG5Xb0I7QWhFbTNheEI7QWlFN2dhRTs7RUFFRTtFQUNBO0VBQ0EsZ0JEM2JVO0VDNGJWLGNEeldnQjtBaEV3M2FwQjtBaUU3Z2FJOztFQUNFO0VBQ0Esa0JEL1drQjtBaEUrM2F4QjtBaUU3Z2FJOztFQUNFO0VBQ0E7QWpFZ2hhTjtBaUU1Z2FFO0VBQ0U7RUFDQSx1QkR0V2dDO0VDdVdoQyxrQkR4V3VCO0FoRXMzYTNCO0FpRTNnYUU7RUFDRSxtQkR4V21DO0VDeVduQyx1QkR4V3VDO0VDeVd2QyxlRHhXOEI7RUN5VzlCLGdCRHhXK0I7RUN5Vy9CO0VBQ0EsbUJEeldrQztFQzBXbEMsY0R6VzZCO0VDMFc3QixjRHpXaUM7RUMwV2pDLGdCRHpXbUM7QWhFczNhdkM7QWlFM2dhSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0EseUJEM2JRO0VDNGJSLFdEcGVRO0VDcWVSO0VBQ0E7RUFDQTtBakU0Z2FOO0FpRXhnYUU7RUFDRSxlRHZYNkI7RUN3WDdCLG1CRHZYK0I7RUN3WC9CLGVEdlg2QjtFQ3dYN0IsbUJEdFgwQjtFQ3VYMUIsVUR0WDJCO0VDdVgzQix1QkR6WDhCO0VDMFg5QixnQkR2WCtCO0FoRWk0YW5DO0FpRXhnYUk7RUFDRTtFQUNBO0FqRTBnYU47QWlFdmdhSTtFQUNFO0VBQ0E7RUFDQSxVRC9Yc0I7RUNnWXRCLFdEL1h1QjtFQ2dZdkIsa0JEL1g4QjtFQ2dZOUIsbUJEN1h5QjtFQzhYekIsV0RoZ0JRO0VDaWdCUixnQkRuWXVCO0VDb1l2QjtBakV5Z2FOO0FpRXZnYU07RUFDRSxtQkRuWXVCO0FoRTQ0YS9CO0FpRXZnYVE7RUFDRSxtQkR4WXVCO0VDeVl2QixXRHpnQkk7QWhFa2hiZDtBaUV0Z2FRO0VBQ0UsbUJEN1l1QjtBaEVxNWFqQztBaUVuZ2FJO0VBQ0U7RUFDQTtFQUNBLFlEelowQjtFQzBaMUI7RUFDQTtFQUNBLG1CRHRaeUI7QWhFMjVhL0I7O0FrRXZoYkE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxVRnFCZ0I7RUVwQmhCLFdGb0JnQjtFRW5CaEIsd0JGcUJrQjtFRW5CbEI7RUFDQTtFQUNBLGtCRm9Cd0I7RUVuQnhCLG9CRmlCdUI7RUVoQnZCLGdCRmFnQjtFRVpoQjtFQUNBO0FsRXloYkY7QWtFdmhiRTtFQUNFO0VBQ0E7RUFDQSxpQkZVbUI7QWhFK2didkI7QWtFdGhiRTtFQUNFLHFCRldVO0VFVlYsY0ZVVTtBaEU4Z2JkO0FrRXRoYkk7RUFDRTtFQUNBO0FsRXdoYk47QWtFamhiSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCRlJRO0FoRTJoYmQ7QWtFamhiTTtFQUNFO0VBQ0E7QWxFbWhiUjtBa0VoaGJNO0VBQ0U7RUFDQTtBbEVraGJSO0FrRTdnYkk7RUFFSTtBbEU4Z2JSO0FrRTVnYlE7RUFDRTtBbEU4Z2JWO0FrRXhnYkU7RUFDRTtFQUNBLGNGbENZO0FoRTRpYmhCO0FrRXZnYkk7RUFFSTtBbEV3Z2JSO0FrRXRnYlE7RUFDRTtBbEV3Z2JWO0FrRWxnYkU7RUFDRTtFQUNBLGNGakRTO0FoRXFqYmI7QWtFamdiSTtFQUVJO0FsRWtnYlI7QWtFaGdiUTtFQUNFO0FsRWtnYlY7QWtFNS9hRTtFQUNFO0VBQ0EsY0ZoRWE7QWhFOGpiakI7QWtFMy9hSTtFQUVJO0FsRTQvYVI7QWtFMS9hUTtFQUNFO0FsRTQvYVY7QWtFdC9hRTtFQUNFLHFCRnBGWTtFRXFGWixjRnJGWTtBaEU2a2JoQjtBa0V0L2FJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QWxFdS9hTjtBa0VyL2FNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEV1L2FSO0FrRWgvYU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRWsvYVI7QWtFMSthSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEUyK2FOO0FrRXArYUk7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEVxK2FOO0FrRTk5YUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJGN0pVO0FoRTZuYmhCO0FrRTk5YU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEVnK2FSO0FrRTc5YU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbEUrOWFSO0FrRXA5YVE7RUFDRTtBbEVzOWFWO0FrRW45YVE7RUFDRTtBbEVxOWFWO0FrRWw5YVE7RUFDRTtBbEVvOWFWOztBaUV4cGFBO0VBQ0U7QWpFMnBhRjs7QWlFeHBhQTtFQUNFLDBCRHJoQnFCO0FoRWdyYnZCOztBaUV4cGFBO0VBQ0Usb0NEeGhCcUI7QWhFbXJidkI7O0FpRXhwYUE7RUFDRTtBakUycGFGOztBaUV2cGFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakUwcGFGOztBaUVycGFFO0VBQ0U7RUFDQSxjRHJhcUI7QWhFNmpiekI7QWlFcnBhRTtFQUNFO0VBQ0E7QWpFdXBhSjs7QW1FeHRiQTtFQUNFO0lBQ0U7RW5FMnRiRjtFbUV4dGJBO0lBQ0U7RW5FMHRiRjtFbUV2dGJBO0lBQ0U7RW5FeXRiRjtFbUV0dGJBO0lBQ0U7RW5Fd3RiRjtBQUNGO0FtRXJ0YkE7RUFDRTtJQUNFO0lBQ0E7RW5FdXRiRjtBQUNGO0FtRXB0YkE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFbkVzdGJGO0VtRW50YkE7SUFDRTtJQUNBO0lBQ0E7RW5FcXRiRjtFbUVsdGJBO0lBQ0U7SUFDQTtJQUNBO0VuRW90YkY7RW1FanRiQTtJQUNFO0lBQ0E7SUFDQTtFbkVtdGJGO0VtRWh0YkE7SUFDRTtJQUNBO0lBQ0E7RW5Fa3RiRjtBQUNGO0FtRS9zYkE7RUFDRTtJQUNFO0lBQ0E7SUFDQTtFbkVpdGJGO0VtRTlzYkE7SUFDRTtJQUNBO0lBQ0E7RW5FZ3RiRjtFbUU3c2JBO0lBQ0U7SUFDQTtJQUNBO0VuRStzYkY7RW1FNXNiQTtJQUNFO0lBQ0E7SUFDQTtFbkU4c2JGO0FBQ0Y7QW9FNXhiQTtFQUNFO0lBQ0U7RXBFOHhiRjtFb0UzeGJBO0lBQ0U7RXBFNnhiRjtFb0UxeGJBO0lBQ0U7RXBFNHhiRjtFb0V6eGJBO0lBQ0U7RXBFMnhiRjtBQUNGO0FvRXZ4YkE7RUFDRTtJQUNFO0lBQ0E7RXBFeXhiRjtFb0V0eGJBO0lBQ0U7SUFDQTtFcEV3eGJGO0FBQ0Y7QW9FcHhiQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0VwRXN4YkY7RW9FbnhiQTtJQUNFO0lBQ0E7SUFDQTtFcEVxeGJGO0VvRWx4YkE7SUFDRTtJQUNBO0lBQ0E7RXBFb3hiRjtFb0VqeGJBO0lBQ0U7SUFDQTtJQUNBO0VwRW14YkY7RW9FaHhiQTtJQUNFO0lBQ0E7SUFDQTtFcEVreGJGO0FBQ0Y7QW9FL3diQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0VwRWl4YkY7RW9FOXdiQTtJQUNFO0lBQ0E7SUFDQTtFcEVneGJGO0VvRTd3YkE7SUFDRTtJQUNBO0lBQ0E7RXBFK3diRjtFb0U1d2JBO0lBQ0U7SUFDQTtJQUNBO0VwRTh3YkY7QUFDRjtBb0Uzd2JBO0VBQ0U7SUFDRTtFcEU2d2JGO0VvRTF3YkE7SUFDRTtFcEU0d2JGO0VvRXp3YkE7SUFDRTtFcEUyd2JGO0VvRXh3YkE7SUFDRTtFcEUwd2JGO0FBQ0Y7QW9FdHdiQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0VwRXd3YkY7RW9FcndiQTtJQUNFO0lBQ0E7SUFDQTtFcEV1d2JGO0VvRXB3YkE7SUFDRTtJQUNBO0VwRXN3YkY7RW9FbndiQTtJQUNFO0lBQ0E7SUFDQTtFcEVxd2JGO0FBQ0Y7QW9FbHdiQTtFQUNFO0lBQ0U7SUFDQTtFcEVvd2JGO0VvRWp3YkE7SUFDRTtJQUNBO0VwRW13YkY7QUFDRjtBb0Vod2JBO0VBQ0U7SUFDRTtFcEVrd2JGO0VvRS92YkE7SUFDRTtFcEVpd2JGO0FBQ0Y7QW9FN3ZiQTtFQUNFO0lBQ0U7RXBFK3ZiRjtFb0U1dmJBO0lBQ0U7RXBFOHZiRjtBQUNGO0FvRTF2YkE7RUFDRTtJQUNFO0lBQ0E7RXBFNHZiRjtFb0V6dmJBO0lBQ0U7SUFDQTtFcEUydmJGO0VvRXh2YkE7SUFDRTtJQUNBO0VwRTB2YkY7RW9FdnZiQTtJQUNFO0lBQ0E7RXBFeXZiRjtFb0V0dmJBO0lBQ0U7SUFDQTtFcEV3dmJGO0FBQ0Y7QXFFLzZiRTtFQ1BJO0F0RXk3Yk47QXNFcjdiRTtFQUNFO0F0RXU3Yko7QXNFbjdiSTtFQUNFO0VBQ0E7QXRFcTdiTjtBc0VuN2JNO0VBQ0U7QXRFcTdiUjtBc0VsN2JNO0VBQ0U7QXRFbzdiUjtBc0UvNmJFO0VEaEJBO0lDbUJNO0V0RWc3Yk47RXNFOTZiTTtJQUNFO0V0RWc3YlI7RXNFNzZiTTtJQUNFO0V0RSs2YlI7QUFDRjtBdUVwOWJJO0VBQ0U7RUFDQSxZUG9QYztFT25QZDtFQUNBO0VBQ0E7QXZFczliTjtBdUVwOWJNO0VBQ0U7RUFDQTtBdkVzOWJSO0F1RW45Yk07RUFFRTtBdkVvOWJSO0F1RWo5Yk07RUFFRTtBdkVrOWJSO0F1RS84Yk07RUFFRTtFQUNBO0F2RWc5YlI7QXVFNzhiTTtFQUNFO0VBQ0E7QXZFKzhiUjtBdUU1OGJNO0VBRUU7RUFDQTtBdkU2OGJSO0F1RTE4Yk07RUFFRTtBdkUyOGJSO0F1RXg4Yk07RUFDRTtFQUNBO0F2RTA4YlI7QXVFdjhiTTtFQUVFO0F2RXc4YlI7O0FBNzliQTtFQUNFO0FBZytiRjs7QUE5OWJBO0VBQ0U7QUFpK2JGOztBQTk5YkE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWkrYkY7O0FBOTliQTtBQUNBO0VBRUU7Ozs7SUFJRTtFQWcrYkY7QUFDRjtBQTc5YkE7RUFDRSxvR1FvQnVCO0VSbkJ2QixjUXZCWTtFUndCWix5QlFNUTtFZ0UzQ0Y7RXhFdUNOLGdCUW9CaUI7RVJuQmpCO0VBQ0E7QUErOWJGOztBQTU5YkE7RXdFMUJVO0F4RTAvYlY7QWF0K2JJO0ViTUo7SXdFMUJVO0V4RTgvYlI7QUFDRjs7QUFqK2JBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW8rYkY7O0FBaitiQTtFQUNFO0FBbytiRjs7QUFqK2JBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCUXBEb0I7RVJxRHBCO0FBbytiRjs7QUFqK2JBO0VBQ0U7SUFDRTtFQW8rYkY7QUFDRjtBQWorYkE7RUFDRTtJQUNFO0VBbStiRjtBQUNGO0FBaCtiQTtBQUNBO0VBRUU7QUFpK2JGOztBQTk5YkE7RUFDRTtBQWkrYkY7O0FBOTliQTtBQUNBO0VBQ0UseUJRdkZZO0VSd0ZaLHFCUXhGWTtFUnlGWixjUWxGb0I7RVJtRnBCLGtCUXRCYztFUnVCZDtFQUNBO0VBQ0E7RUFFQTtBQWcrYkY7QUEvOWJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBaStiSjs7QUE3OWJBO0VBQ0UsY1F2R29CO0VSd0dwQjtBQWcrYkY7QXdFMWpjTTtFeEU2RkY7QUFnK2JKO0F3RXJqY0k7RUFDRTtJeEVvRkY7RUFvK2JGO0FBQ0Y7QXdFbGtjTTtFeEVpR0Y7QUFvK2JKO0F3RXJrY007RXhFaUdGO0FBdStiSjtBd0Voa2NJO0VBQ0U7SXhFd0ZGO0VBMitiRjtBQUNGOztBQXgrYkE7RUFDRTtBQTIrYkY7QUF6K2JFO0VBQ0U7QUEyK2JKOztBQXYrYkE7Ozs7OztFQU1FLHlIUTdGcUI7RVI4RnJCLGdCUXJGcUI7QVIramN2Qjs7QUF2K2JBO0VBQ0U7QUEwK2JGOztBQXYrYkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTArYkY7O0FBditiQTtFQUNFO0VBQ0E7QUEwK2JGOztBQXYrYkE7RUFDRSxjUTVKb0I7QVJzb2N0Qjs7QUF2K2JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCUS9Ga0I7RVJnR2xCLHlIUWxJcUI7RVJtSXJCLGdCUTlIZ0I7RVIrSGhCO0VBQ0Esa0JRNUdjO0VSNkdkO0FBMCtiRjtBQXgrYkU7RUFLRTtBQXMrYko7QUFsK2JFO0VBQ0Usa0JRN0dzQjtBUmlsYzFCO0FBaitiRTtFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFpK2JKOztBQTU5YkE7Ozs7O0VBS0UseUhRdEtxQjtFUnVLckIsZ0JRbEtnQjtBUmlvY2xCOztBQTU5YkE7RUFDRSx5QlEvTW9CO0VSZ05wQjtFQUNBLGNRMUxRO0VSMkxSLGtCUXJKYztBUm9uY2hCOztBQTU5YkE7OztFQUdFO0VBQ0EseUJRek5vQjtFUjBOcEIscUJRMU5vQjtFUjJOcEI7QUErOWJGOztBQTU5YkE7RUFDRTtBQSs5YkY7O0FBNTliQTtFQUNFO0FBKzliRjs7QUE1OWJBO0V3RXhPVTtFeEUwT1I7RUFDQSxjUWhQWTtBUitzY2Q7QWF0cmNJO0Vib05KO0l3RXhPVTtFeEU4c2NSO0FBQ0Y7QUFsK2JFO0VBQ0U7RUFDQTtBQW8rYko7O0FBaCtiQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY1F0UG9CO0VSdVBwQjtBQW0rYkY7O0FBLzliRTtFQUNFLHlCUW5RVTtBUnF1Y2Q7QUFoK2JJO0VBQ0U7RUFDQSx5QlF2UVE7QVJ5dWNkOztBQXo5YkE7RUFDRTtBQTQ5YkY7O0FBejliQTs7RUFFRTtFeUUzUkEsa0JBdUNrQjtFQXhCVjtFQUFBO0VBQUE7RUFSRjtFekVzUk47RXdFblJRO0F4RW92Y1Y7QWFodWNJO0ViMlBKOztJd0UvUVU7RXhFeXZjUjtBQUNGOztBQWwrYkE7RUFDRTtBQXErYkY7O0FBaitiQTtFQUNFO0FBbytiRjs7QUE3OWJFO0VBQ0U7QUFnK2JKOztBQTU5YkE7RXdFMVNVO0VBQUE7QXhFMndjVjtBYXZ2Y0k7RWJzUko7SXdFMVNVO0lBQUE7RXhFZ3hjUjtBQUNGO0FhN3ZjSTtFYnNSSjtJd0UxU1U7SUFBQTtFeEVzeGNSO0FBQ0Y7QWFud2NJO0Vic1JKO0l3RTFTVTtJQUFBO0V4RTR4Y1I7QUFDRjtBYXp3Y0k7RWJzUko7SXdFMVNVO0lBQUE7RXhFa3ljUjtBQUNGO0FhL3djSTtFYnNSSjtJd0UxU1U7SUFBQTtFeEV3eWNSO0FBQ0Y7QUE1L2JFO0V3RTdTUTtFQUFBO0F4RTZ5Y1Y7QWF6eGNJO0VieVJGO0l3RTdTUTtFeEVpemNSO0FBQ0Y7QWE5eGNJO0VieVJGO0l3RTdTUTtFeEVzemNSO0FBQ0Y7QUFyZ2NFO0V3RWxUUTtFeEVvVE47RXdFcFRNO0V4RXNUTjtBQXVnY0o7QWF6eWNJO0ViOFJGO0l3RWxUUTtFeEVpMGNSO0FBQ0Y7QWE5eWNJO0ViOFJGO0l3RWxUUTtFeEVzMGNSO0FBQ0Y7QUFoaGNJO0VBQ0Usb0dRblJtQjtBUnF5Y3pCOztBQTVnY0E7RVE3SkUsaUJBbE1jO0VBbU1kO0VBQ0E7QVI2cWNGOztBQTlnY0E7RXdFbFVVO0VBQUE7QXhFcTFjVjtBYWowY0k7RWI4U0o7SXdFbFVVO0lBQUE7RXhFMDFjUjtBQUNGO0FhdjBjSTtFYjhTSjtJd0VsVVU7SUFBQTtFeEVnMmNSO0FBQ0Y7QWE3MGNJO0ViOFNKO0l3RWxVVTtJQUFBO0V4RXMyY1I7QUFDRjtBYW4xY0k7RWI4U0o7SXdFbFVVO0lBQUE7RXhFNDJjUjtBQUNGO0FhejFjSTtFYjhTSjtJd0VsVVU7SUFBQTtFeEVrM2NSO0FBQ0Y7O0FBN2ljQTtFd0V0VVU7RUFBQTtBeEV3M2NWO0FhcDJjSTtFYmtUSjtJd0V0VVU7SUFBQTtFeEU2M2NSO0FBQ0Y7QWExMmNJO0Via1RKO0l3RXRVVTtJQUFBO0V4RW00Y1I7QUFDRjtBYWgzY0k7RWJrVEo7SXdFdFVVO0lBQUE7RXhFeTRjUjtBQUNGO0FhdDNjSTtFYmtUSjtJd0V0VVU7SUFBQTtFeEUrNGNSO0FBQ0Y7QWE1M2NJO0Via1RKO0l3RXRVVTtJQUFBO0V4RXE1Y1I7QUFDRjs7QUE1a2NBO0V3RTFVVTtFQUFBO0F4RTI1Y1Y7QWF2NGNJO0Vic1RKO0l3RTFVVTtJQUFBO0V4RWc2Y1I7QUFDRjtBYTc0Y0k7RWJzVEo7SXdFMVVVO0lBQUE7RXhFczZjUjtBQUNGO0FhbjVjSTtFYnNUSjtJd0UxVVU7SUFBQTtFeEU0NmNSO0FBQ0Y7QWF6NWNJO0Vic1RKO0l3RTFVVTtJQUFBO0V4RWs3Y1I7QUFDRjtBYS81Y0k7RWJzVEo7SXdFMVVVO0lBQUE7RXhFdzdjUjtBQUNGOztBQTNtY0E7RXdFOVVVO0VBQUE7QXhFODdjVjtBYTE2Y0k7RWIwVEo7SXdFOVVVO0lBQUE7RXhFbThjUjtBQUNGO0FhaDdjSTtFYjBUSjtJd0U5VVU7SUFBQTtFeEV5OGNSO0FBQ0Y7QWF0N2NJO0ViMFRKO0l3RTlVVTtJQUFBO0V4RSs4Y1I7QUFDRjtBYTU3Y0k7RWIwVEo7SXdFOVVVO0lBQUE7RXhFcTljUjtBQUNGO0FhbDhjSTtFYjBUSjtJd0U5VVU7SUFBQTtFeEUyOWNSO0FBQ0Y7O0FBdG9jQTs7RVF4S0U7QVJtemNGO0FRanpjRTs7O0VBQzZCO0FScXpjL0I7QVFuemNFOztFQUE2QiwrQ0FUZjtBUmcwY2hCO0FRcnpjRTs7RUFDRTtFQUNBLCtDQVpZO0FSbzBjaEI7QVF0emNJOztFQUFVLDZDQWJRO0FSdTBjdEI7QVF2emNFOztFQUE4Qix5Q0FsQmhCO0FSNjBjaEI7O0FBenBjQTtFQUNFO0FBNHBjRjtBQTFwY0U7RUFDRSxVQVBVO0VBUVYsV0FSVTtBQW9xY2Q7O0FBdnBjRTtFQUNFLFdBZFU7QUF3cWNkOztBQXJwY0U7RUFDRSxVQXBCVTtBQTRxY2Q7O0FBbnBjRTtFQUNFLFVBekJZO0VBMEJaLFdBMUJZO0FBZ3JjaEI7O0FBanBjRTtFQUNFLFVBaENZO0FBb3JjaEI7O0FBN29jQTtFQUNFO0FBZ3BjRjs7QUE3b2NBO0VBQ0U7QUFncGNGOztBQTdvY0E7RUFDRTtBQWdwY0Y7O0FBN29jQTtFeUV6WkUsa0JBK0NrQjtFekU0V2xCLHlCUS9Zb0I7RVJnWnBCO0VBQ0E7RUFDQSxjUTNYUTtFUjRYUixrQlF0VmM7RVJ1VmQseUhRaFhxQjtFUmlYckI7RUFDQSxnQlE3V2dCO0VSOFdoQjtBQWdwY0Y7QUE5b2NFO0VBR0U7RUFDQTtBQThvY0o7QXdFcmhkSTtFQUNFO0l4RTJZRix5QlEzWU07SVI0WU4scUJRbmFrQjtJUm9hbEI7SUFDQTtFQTZvY0Y7QUFDRjs7QUF0b2NBO0V5RXpiRSxrQkErQ2tCO0V6RTRZbEIseUJRclhVO0VSc1hWO0VBQ0E7RUFDQSxjUTNaUTtFUjRaUixrQlF0WGM7RVJ1WGQseUhRaFpxQjtFUmlackI7RUFDQSxnQlE3WWdCO0FSc2hkbEI7QUF2b2NFO0VBR0U7QUF1b2NKO0F3RTVpZEk7RUFDRTtJeEV5YUY7SUFDQSxxQlFqY2tCO0lSa2NsQjtFQXNvY0Y7QUFDRjs7QUEvbmNBO0VBQ0UseUJRM2NvQjtFUjRjcEIscUJRNWNvQjtFUjZjcEIsY1F0YlE7QVJ3amRWO0FBaG9jRTtFQUdFO0FBZ29jSjtBd0U1amRJO0VBQ0U7SXhFK2JGLHlCUXRka0I7SVJ1ZGxCLHFCUXZka0I7SVJ3ZGxCO0VBZ29jRjtBQUNGOztBQTduY0E7OztFQUdFO0VBQ0E7RUFDQSxjUWplb0I7RVJrZXBCO0FBZ29jRjs7QUE3bmNBOzs7Ozs7RUFNRTtFQUNBLGtCUXRlTTtFUnVlTixjUXRkUTtBUnNsZFY7O0FBN25jQTs7O0VBR0UseUJRbmZvQjtFUm9mcEIscUJRcGZvQjtFUnFmcEIsY1E5ZFE7RVIrZFI7QUFnb2NGOztBQTduY0E7Ozs7O0VBS0U7RUFDQSxrQlFsY2M7RVJtY2QsY1FoZ0JvQjtFUmlnQnBCO0VBQ0EsZ0JReGRpQjtBUndsZG5COztBQTVuY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjUTFnQmtCO0FSeW9kdEI7O0FBM25jQTtFQUNFLGtCUXpja0I7RVIwY2xCO0VBQ0EsZ0JPOEM0QjtFUDdDNUI7RXdFcGhCUTtBeEVtcGRWO0FhL25kSTtFYjRmSjtJd0VoaEJVO0V4RXVwZFI7QUFDRjtBQWhvY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQWtvY0o7O0FBOW5jQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FBaW9jRjtBQS9uY0U7RUFDRTtBQWlvY0o7QUE5bmNFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JRbGZZO0FSa25kaEI7QUExbmNJO0VBQ0UseUJRdGpCZ0I7RVJ1akJoQixxQlF2akJnQjtBUm1yZHRCO0FBem5jSTtFQUNFO0VBQ0EscUJRNWpCZ0I7QVJ1cmR0Qjs7QUFybmNFO0VBQ0U7QUF3bmNKOztBQXBuY0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1bmNGOztBQXBuY0E7RUFDRTtBQXVuY0Y7O0FBcG5jQTtFQUNFO0VBQ0E7QUF1bmNGOztBQS9tY0E7RUFDRTtBQWtuY0Y7O0FBL21jQTtFQUNFO0VBQ0E7RUFDQTtBQWtuY0Y7O0FBL21jQTtFQUNFO0VBQ0E7RUFDQTtBQWtuY0Y7QUFqbmNFO0VBSkY7SUFLSTtFQW9uY0Y7QUFDRjs7QUFqbmNBO0VBQ0U7RUFDQTtBQW9uY0Y7QUFsbmNFO0VBQ0U7QUFvbmNKO0FBbG5jSTtFQUNFO0VBQ0E7RUFDQSxzQlF4bkJFO0VSeW5CRixrQlFsa0JVO0FSc3JkaEI7QUFqbmNJO0VBQ0U7RUFDQTtFQUNBO0FBbW5jTjtBQWhuY0k7RUFDRSxjUXJvQkM7RVJzb0JELGdCTzNFd0I7RVA0RXhCO0V3RS9wQkU7QXhFa3hkUjtBQS9tY0k7RUFDRTtFQUNBO0VBQ0E7RUFDQSx5QlFsb0JJO0VSbW9CSixrQlF2bEJVO0VSd2xCVjtBQWluY047QUE5bWNJO0VBQ0U7RUFDQSx5QlExcEJnQjtFUjJwQmhCLGtCUTlsQlU7RVIrbEJWO0FBZ25jTjtBQTdtY0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JReG1CVTtFUnltQlYsc0JRaHFCRTtFUmlxQkY7RUFDQSxjUS9xQlE7RVJnckJSO0VBQ0E7RUFDQTtBQSttY047QUE1bWNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQThtY047QUEzbWNJO0VBQ0U7RUFDQSxjUWxzQlE7RVJtc0JSLGdCTzdId0I7RVA4SHhCO0FBNm1jTjtBQTFtY0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBNG1jTjtBQXptY0k7RUFDRTtFQUNBLGNRMXNCZ0I7QVJxemR0Qjs7QUFybWNFO0VBQ0U7QUF3bWNKO0FBcm1jRTtFQUNFO0VBQ0E7RUFDQTtBQXVtY0o7QUFybWNJO0V3RTd1Qkk7QXhFcTFkUjtBYS95ZEk7RWJ1c0JBO0l3RTd1Qkk7RXhFeTFkTjtBQUNGO0FBem1jSTtFQUNFLGNRcnVCUTtFUnN1QlI7RUFDQTtBQTJtY047QUF6bWNNO0VBQ0UsY1FudUJjO0FSODBkdEI7QUF2bWNJO0VBQ0U7QUF5bWNOO0FBdG1jSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXUWp2QkU7RVJrdkJGLGtCUTNyQlU7RVI0ckJWLHlCUXp2QmdCO0VSMHZCaEI7QUF3bWNOO0FBdG1jTTtFQUNFO0FBd21jUjtBQXJtY007RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQXVtY1I7QUFsbWNJO0VBQ0UsY1Exd0JnQjtFUjJ3QmhCO0VBQ0E7RXdFaHlCRTtFeEVreUJGLGdCUXZ1QmE7QVIyMGRuQjtBYWgyZEk7RWJ1dkJBO0l3RTd4Qkk7RXhFMDRkTjtBQUNGO0FBdG1jSTtFd0VueEJNO0V4RXF4Qko7RUFDQTtBQXdtY047QWExMmRJO0ViK3ZCQTtJd0VueEJNO0V4RWs0ZFI7QUFDRjtBQTNtY007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCUTl0QlE7RVIrdEJSLGdCUW52QlU7QVJnMmRsQjtBQTdsY0E7RUFDRTtJQUNFO0VBK2xjRjtFQTVsY0E7SUFDRTtFQThsY0Y7QUFDRjtBQXhsY0E7RUFDRTtBQTBsY0Y7QUF4bGNFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QUF5bGNKO0FBdmxjSTtFQUNFO0VBQ0E7RUFDQTtBQXlsY047QUF2bGNNO0VBQ0U7RUFDQTtBQXlsY1I7QUF0bGNNO0VBQ0U7QUF3bGNSO0FBcGxjSTtFQUNFO0FBc2xjTjtBQW5sY0k7RUFDRSxnQlE3eUJhO0FSazRkbkI7QUFubGNNO0VBQ0U7RUFDQTtBQXFsY1I7QUFsbGNNO0VBQ0U7QUFvbGNSO0FBamxjTTtFQUNFO0VBQ0E7QUFtbGNSO0FBL2tjSTtFQUNFO0VBQ0E7RUFDQTtBQWlsY047QUE5a2NJO0VBQ0U7RUFDQTtFQUNBO0FBZ2xjTjtBQTlrY007RUFDRTtBQWdsY1I7QUE5a2NRO0VBQ0U7QUFnbGNWO0FBN2tjUTtFQUNFO0VBQ0E7QUEra2NWO0FBNWtjUTtFQUNFO0FBOGtjVjtBQXhrY0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTBrY0o7O0FBbGtjQTtFeUVwNkJFLGtCQXVDa0I7RUEzQlYsUUFGSztFQUVMLE9BRks7RURBTDtFeEU2NUJSO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FBc2tjRjtBYXQ5ZEk7RWJzNEJKO0l3RTE1QlU7RXhFOCtkUjtBQUNGO0FBemtjRTtFeUVoN0JBLGtCQStDa0I7RURyQ1Y7QXhFbS9kVjtBYS85ZEk7RWJrNUJGO0l3RXQ2QlE7RXhFdS9kUjtBQUNGO0FBOWtjSTtFeUVwN0JGLGtCQStDa0I7RXpFdTRCZDtFQUNBO0VBQ0E7RUFDQTtFd0UvNkJJO0V4RWk3Qko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZ2xjTjtBYWwvZEk7RWJzNUJBO0l3RTE2Qk07RXhFMGdlUjtBQUNGO0Fhdi9kSTtFYnM1QkE7SXdFMTZCTTtFeEUrZ2VSO0FBQ0Y7QUF4bGNNO0VBRUU7QUF5bGNSO0FBdmxjUTtFQUNFO0FBeWxjVjtBQXJsY007RUFDRTtFeUU1OEJOLGtCQXVDa0I7RUFoQ1o7RUFLRSxZQUZLO0VBS0w7RXpFKzdCRjtFQUNBLGtCUXQ0QlE7RVJ1NEJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTBsY1I7QUF0bGNJO0VBQ0U7RUFDQSx5QlEzOEJDO0FSbWllUDs7QUFubGNBO0V3RXQ5QlU7QXhFNmllVjtBYXpoZUk7RWJrOEJKO0l3RXQ5QlU7RXhFaWplUjtBQUNGOztBQXRsY0k7RUFDRTtBQXlsY047O0FBcGxjQTtFQUNFO0V3RW4rQlE7RUFBQTtBeEU0amVWO0FheGllSTtFYjg4Qko7SXdFbCtCVTtFeEVna2VSO0FBQ0Y7QWE3aWVJO0ViODhCSjtJd0VsK0JVO0V4RXFrZVI7QUFDRjtBQS9sY0U7RUFDRTtBQWltY0o7QUEvbGNJO0VBQ0UsY1FoL0JRO0VnRWJOO0V4RSsvQkYsb0dReDhCbUI7QVJ5aWV6QjtBYTFqZUk7RWJzOUJBO0l3RTUvQkk7RXhFb21lTjtBQUNGO0FBcG1jTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JRcjdCUTtBUjJoZWhCO0FBcm1jUTtFQUNFO0FBdW1jVjtBQW5tY007RUFDRSxjUWhnQ007RVJpZ0NOO0VBQ0E7RXdFL2dDQTtBeEVxbmVSO0FhL2tlSTtFYnMrQkU7SXdFNWdDRTtFeEV5bmVOO0FBQ0Y7QUF2bWNNO0VBQ0U7QUF5bWNSO0FBdG1jTTtFQUVFO0FBdW1jUjtBQTlsY007RUFDRSxjUS9nQ2M7RVJnaENkO0VBQ0Esc0JRM2dDQTtBUjJtZVI7QUE3bGNNO0VBQ0U7RXdFemlDQTtBeEV5b2VSO0Fhbm1lSTtFYmtnQ0U7SXdFeGlDRTtFeEU2b2VOO0FBQ0Y7QUFqbWNNO0VBQ0UsYVFqaUNNO0VSa2lDTixlUWxpQ007RVJtaUNOO0VBQ0EsY1FwaUNNO0VScWlDTjtFQUNBO0VBQ0E7RUFDQTtBQW1tY1I7O0EwRWpyZUE7RUYyQ1U7RUFBQTtFQUFBO0VFbENWOzs7Ozs7UUFBQTtFQXFFSTs7SUFBQTtBMUVtbmVKO0FhbG9lSTtFNkQvREo7SUYyQ1U7RXhFMHBlUjtBQUNGO0Fhdm9lSTtFNkQvREo7SUYyQ1U7RXhFK3BlUjtBQUNGO0FhNW9lSTtFNkQvREo7SUYyQ1U7RXhFb3FlUjtBQUNGO0EwRTNzZUk7RUFDRTtBMUU2c2VOO0EwRWxzZUk7RUFDRTtBMUVvc2VOO0EwRWpzZUk7RUFDRTtBMUVtc2VOO0EwRWhzZUk7RUFDRTtFQUNBO0VBQ0EseUJsRWlCZ0I7QVJpcmV0QjtBMEUvcmVJO0VBQ0U7RUFDQTtFQUNBLGNsRVdnQjtBUnNyZXRCO0EwRTlyZUk7RUFDRTtBMUVnc2VOO0EwRTdyZUk7RUFDRTtBMUUrcmVOO0EwRTdyZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFFK3JlTjtBMEUzcmVJO0VBQ0U7QTFFNnJlTjtBMEUxcmVJO0VBQ0U7QTFFNHJlTjtBMEV6cmVJO0VBQ0U7QTFFMnJlTjtBMEV4cmVJO0VBQ0U7QTFFMHJlTjtBMEV2cmVJO0VBQ0U7QTFFeXJlTjtBMEUzcWVJO0VBQ0U7QTFFNnFlTjtBMEUxcWVJO0VBQ0U7QTFFNHFlTjtBMEV6cWVJO0VBQ0U7QTFFMnFlTjtBMEV4cWVJO0VBQ0U7QTFFMHFlTjtBMEV2cWVJO0VBQ0U7RUFDQTtBMUV5cWVOO0EwRXRxZUk7RUFDRTtBMUV3cWVOO0EwRXRxZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFFd3FlTjtBMEVwcWVJO0VBQ0U7QTFFc3FlTjtBMEVucWVJO0VBQ0U7QTFFcXFlTjs7QTJFOXhlSTtFQUNFO0EzRWl5ZU47QTJFN3hlRTtFQUNFO0VBQ0EseUNuRTJDbUI7RW1FMUNuQjtBM0UreGVKO0EyRTd4ZUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0UreGVOO0EyRTd4ZU07O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNFK3hlUjtBMkV6eGVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUhETTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBeEVreWVWO0FhOXdlSTtFOEQzQkY7SUhPUTtFeEVzeWVSO0FBQ0Y7QWFueGVJO0U4RDNCRjtJSE9RO0V4RTJ5ZVI7QUFDRjtBYXh4ZUk7RThEM0JGO0lIT1E7RXhFZ3plUjtBQUNGO0FhN3hlSTtFOEQzQkY7SUhPUTtFeEVxemVSO0FBQ0Y7QWFseWVJO0U4RDNCRjtJSE9RO0V4RTB6ZVI7QUFDRjtBYXZ5ZUk7RThEM0JGO0lIT1E7RXhFK3plUjtBQUNGO0FhNXllSTtFOEQzQkY7SUhPUTtFeEVvMGVSO0FBQ0Y7QWFqemVJO0U4RDNCRjtJSE9RO0V4RXkwZVI7QUFDRjtBYXR6ZUk7RThEM0JGO0lIT1E7RXhFODBlUjtBQUNGO0FhM3plSTtFOEQzQkY7SUhPUTtFeEVtMWVSO0FBQ0Y7QWFoMGVJO0U4RDNCRjtJSE9RO0V4RXcxZVI7QUFDRjtBMkV6MGVJO0VBQ0UsV25FVEU7RWdFMUJBO0VHcUNGO0VBQ0E7QTNFMjBlTjtBYTMwZUk7RThESkE7SUhsQ0k7RXhFcTNlTjtBQUNGO0EyRTcwZUk7RUFDRSxvR25FYW1CO0VtRVpuQixXbkVqQkU7RW1Fa0JGO0VIMUJJO0F4RTAyZVY7QWF0MWVJO0U4REdBO0lIdkJNO0V4RTgyZVI7QUFDRjtBMkVoMWVJO0VIakRJO0VHbURGO0EzRWsxZU47QWEvMWVJO0U4RFdBO0lIakRJO0V4RXk0ZU47QUFDRjtBMkVyMWVNO0VBQ0U7QTNFdTFlUjtBMkVwMWVNO0V2RWlORTtBSnNvZVI7QUlseWVJO0V1RXJERTtJdkV3TkU7RUptb2VOO0FBQ0Y7QTJFdjFlSTtFSDVDTTtBeEVzNGVWO0FhbDNlSTtFOER3QkE7SUg1Q007RXhFMDRlUjtBQUNGO0EyRTExZU07RXZFdU1FO0V1RXJNQTtBM0U0MWVSO0FJbnplSTtFdUUzQ0U7SXZFOE1FO0VKb3BlTjtBQUNGO0EyRTkxZU07RUFDRTtFQUNBLGdCbkVmVztFbUVnQlgsaUJuRU5XO0VtRU9YO0EzRWcyZVI7QTJFMzFlSTtFQUNFO0EzRTYxZU47QTJFejFlRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRTIxZUo7QTJFejFlSTtFQUNFLFduRXRFRTtFZ0UxQkE7RUdrR0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRTIxZU47QWE1NWVJO0U4RHlEQTtJSC9GSTtFeEVzOGVOO0FBQ0Y7QWFqNmVJO0U4RHlEQTtJSC9GSTtFeEUyOGVOO0FBQ0Y7QWF0NmVJO0U4RHlEQTtJSC9GSTtFeEVnOWVOO0FBQ0Y7QTJFdjJlSTtFQUNFLFduRWpGRTtFZ0UxQkE7RUc2R0Y7RUFDQTtBM0V5MmVOO0FhajdlSTtFOERvRUE7SUgxR0k7RXhFMjllTjtBQUNGO0EyRTMyZUk7RUFDRSxXbkV4RkU7RW1FeUZGO0VIbkhFO0VHcUhGO0VBQ0E7RUFDQTtBM0U2MmVOO0FhOTdlSTtFOEQyRUE7SUhqSEk7RXhFdytlTjtBQUNGO0EyRWozZU07RUFDRTtFQUNBLGNuRTdHTTtBUmcrZWQ7O0E0RXRnZkE7RUFDRTtFSjBDUTtFSXhDUjtBNUV5Z2ZGO0FhNzhlSTtFK0QvREo7SUoyQ1U7RXhFcStlUjtBQUNGO0E0RTUvZUk7RUpJSTtFSUZGLG9HcEV5RG1CO0FScThlekI7QWF0OWVJO0UrRDFDQTtJSklJO0V4RWdnZk47QUFDRjtBNEVyL2VJO0VBQ0U7QTVFdS9lTjtBNEVuL2VFO0VBQ0U7RUpBTTtBeEVzL2VWO0FhbCtlSTtFK0RyQkY7SUpDUTtFeEUwL2VSO0FBQ0Y7QTRFai9lRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFbS9lSjtBNEVoL2VJO0VBQ0U7RUFDQTtBNUVrL2VOO0E0RS8rZUk7RUp2Qk07RUFBQTtFQUFBO0VJMkJKLGtCcEVvQ1U7RW9FbkNWO0VBQ0E7RUFDQTtBNUVpL2VOO0FhMy9lSTtFK0RHQTtJSnZCTTtFeEVtaGZSO0FBQ0Y7QWFoZ2ZJO0UrREdBO0lKdkJNO0V4RXdoZlI7QUFDRjtBYXJnZkk7RStER0E7SUp2Qk07RXhFNmhmUjtBQUNGO0E0RTkvZU07RUFDRTtBNUVnZ2ZSO0E0RTkvZVE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxvQnBFMEJjO0VvRXpCZDtFQUNBO0E1RWdnZlY7QTRFNS9lTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG9CcEVhZ0I7RW9FWmhCO0VBQ0EseUJwRXBEYztFb0VxRGQ7RUFDQTtBNUU4L2VSO0E0RTMvZU07RUFDRTtJQUNFO0U1RTYvZVI7QUFDRjtBNEUxL2VNO0VBQ0U7RUFDQTtBNUU0L2VSO0E0RTEvZVE7RUFDRTtFQUNBLGtCcEVQUztFb0VRVDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFNC9lVjtBNEV2L2VJO0VKbEZNO0VJb0ZKO0VBQ0E7RUFDQTtFSnhHRTtFSTBHRjtFQUNBO0VBQ0E7QTVFeS9lTjtBYS9qZkk7RStEOERBO0lKbEZNO0V4RXVsZlI7QUFDRjtBYXBrZkk7RStEOERBO0lKcEdJO0V4RThtZk47QUFDRjtBNEVqZ2ZNO0VBQ0U7QTVFbWdmUjtBNEU5L2VFO0VBR0U7RUgvR0Ysa0JBK0NrQjtFR2tFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQnBFNUNZO0FSMGlmaEI7QTRFei9lTTtFQUNFO0E1RTIvZVI7QTRFNS9lTTtFQUNFO0E1RTgvZVI7QXdFdmxmSTtFSXdGRTtJQUNFO0U1RWtnZk47QUFDRjtBNEUvL2VJO0VBQ0U7RUFDQTtFQUNBLGNwRXRIZ0I7RW9FdUhoQjtFQUNBLGtCcEUzRFU7RW9FNERWLGdCcEUvRWE7RW9FZ0ZiO0VKNUhJO0VBQUE7RUFBQTtFQWxCRjtBeEVtcGZSO0FhN21mSTtFK0RpR0E7SUpySE07RXhFcW9mUjtBQUNGO0FhbG5mSTtFK0RpR0E7SUpySE07SUFBQTtFeEUyb2ZSO0FBQ0Y7QWF4bmZJO0UrRGlHQTtJSnZJSTtFeEVrcWZOO0FBQ0Y7QTRFL2dmSTtFSDVJRixrQkErQ2tCO0VHK0ZkO0VBQ0E7RUpySUk7RUl1SUoseUJwRW5JVztFb0VvSVg7RUFDQTtFQUNBO0VBQ0Esa0JwRTVFVTtFb0U2RVY7RUFDQTtBNUVpaGZOO0FhMW9mSTtFK0Q4R0E7SUpsSU07RXhFa3FmUjtBQUNGO0E0RXBoZk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUlBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFbWhmUjtBNEVoaGZNO0VBQ0U7RUFDQTtBNUVraGZSO0E0RTlnZk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RWdoZlI7QTRFOWdmUTs7O0VBR0U7QTVFZ2hmVjtBNEU3Z2ZRO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJwRWpMTztBUmdzZmpCO0E0RTdnZlU7O0VBRUU7RUFDQTtFSjFMRjtFQUFBO0VBQUE7RUFBQTtFQUFBO0VJZ01FO0VBQ0E7QTVFK2dmWjtBYTVyZkk7RStEbUtNOztJSnZMQTtFeEVxdGZSO0FBQ0Y7QWFsc2ZJO0UrRG1LTTs7SUp2TEE7RXhFMnRmUjtBQUNGO0FheHNmSTtFK0RtS007O0lKdkxBO0V4RWl1ZlI7QUFDRjtBYTlzZkk7RStEbUtNOztJSnZMQTtFeEV1dWZSO0FBQ0Y7QWFwdGZJO0UrRG1LTTs7SUp2TEE7RXhFNnVmUjtBQUNGO0E0RXppZlE7RUpyTUU7RUFBQTtFQUFBO0VJd01BO0VBQ0E7RUFDQSxvQnBFekljO0VvRTBJZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RTRpZlY7QWF2dWZJO0UrRGlMSTtJSnJNRTtFeEUrdmZSO0FBQ0Y7QWE1dWZJO0UrRGlMSTtJSnJNRTtJQUFBO0V4RXF3ZlI7QUFDRjtBNEVyamZVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJwRXROVTtFb0V1TlY7QTVFdWpmWjtBNEVwamZVO0VBQ0U7QTVFc2pmWjtBNEVuamZVO0VBQ0U7QTVFcWpmWjtBNEVqamZRO0VBQ0U7QTVFbWpmVjtBNEU5aWZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVnamZSO0E0RTdpZk07RUFDRTtJQUNFO0U1RStpZlI7RTRFNWlmTTtJQUNFO0U1RThpZlI7QUFDRjtBNEUzaWZNO0VBQ0U7RUFDQTtFQUNBLGtCcEVqTVE7RW9Fa01SO0VBQ0E7QTVFNmlmUjtBNEUxaWZNO0VBQ0U7QTVFNGlmUjtBNEVuaWZJO0VKL1FNO0VJaVJKO0E1RXFpZk47QWFseWZJO0UrRDJQQTtJSi9RTTtFeEUwemZSO0FBQ0Y7QTRFeGlmTTtFSnJTRTtFSXVTQSxjcEUxUk07RW9FMlJOO0VBQ0E7QTVFMGlmUjtBYTd5Zkk7RStEK1BFO0lKclNFO0V4RXUxZk47QUFDRjtBNEU1aWZNOzs7RUhwU0osa0JBK0NrQjtFRzBQWjtFQUNBLGNwRXJTTTtBUmsxZmQ7QTRFM2lmUTs7O0VBQ0U7QTVFK2lmVjtBNEUzaWZNOztFQUVFLGlCcEV0UFc7RW9FdVBYO0E1RTZpZlI7QTRFM2lmUTs7RUFDRTtBNUU4aWZWO0E0RTFpZk07RUpuVUU7QXhFZzNmUjtBNEV6aWZNO0VKdlVFO0VJeVVBLGdCcEUzUVc7RW9FNFFYO0VBQ0Esb0dwRXBSaUI7QVIremZ6QjtBYWgxZkk7RStEaVNFO0lKdlVFO0V4RTAzZk47QUFDRjtBYXgwZkk7RStEMlJNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUVnamZWO0FBQ0Y7QTRFM2lmUTtFSjVWQTtBeEUwNGZSO0FhcDJmSTtFK0RzVEk7SUo1VkE7RXhFODRmTjtBQUNGO0E0RTlpZlU7RUFDRTtFQUNBLGNwRS9VVTtFb0VnVlYsZ0JwRXRTTztBUnMxZm5CO0E0RTlpZlk7RUFDRSxjcEV4VkQ7RW9FeVZDO0VBQ0E7RUFDQSxnQnBFNVNLO0FSNDFmbkI7QTRFeGlmTTtFQUNFLGdCcEVyVFc7RW9Fc1RYO0VKcFhBO0F4RSs1ZlI7QTRFcGlmSTtFQUNFO0VBRUE7RUFFQTtFQUNBLGtCcEVoVFU7RWdFL0ROO0VBQUE7RUFBQTtFQWxCRjtBeEV5NmZSO0FhbjRmSTtFK0RxVkE7SUp6V007RXhFMjVmUjtBQUNGO0FheDRmSTtFK0RxVkE7SUp6V007SUFBQTtFeEVpNmZSO0FBQ0Y7QWE5NGZJO0UrRHFWQTtJSjNYSTtFeEV3N2ZOO0FBQ0Y7QTRFampmSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VKMVhJO0VBQUE7RUFsQkY7QXhFazhmUjtBNEVwamZNO0VBQ0U7RUFDQTtBNUVzamZSO0FhaDZmSTtFK0RrV0E7SUp0WE07RXhFdzdmUjtBQUNGO0FhcjZmSTtFK0RrV0E7SUp0WE07RXhFNjdmUjtBQUNGOztBNEVoamZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVtamZGO0E0RWpqZkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxrQnBFMVZZO0VnRS9ETjtFQUFBO0VBbEJGO0VJK2FKLHlCcEUzWmtCO0VvRTRabEIsV3BFdFpJO0VvRXVaSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFbWpmSjtBYW44Zkk7RStEaVlGO0lKclpRO0V4RTI5ZlI7QUFDRjtBYXg4Zkk7RStEaVlGO0lKclpRO0V4RWcrZlI7QUFDRjtBYTc4Zkk7RStEaVlGO0lKdmFNO0V4RXUvZk47QUFDRjtBNEVoa2ZJOztFQUVFO0VBQ0E7QTVFa2tmTjs7QTRFN2pmQTtBQUNBO0VBQ0U7RUFDQTtBNUVna2ZGOztBNEU3amZBO0FBQ0E7Ozs7RUFJRTtFQUNBO0E1RWdrZkY7O0E0RTdqZkE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVna2ZGOztBNEU1amZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBNUU4amZGOztBNEUxamZBO0VBQ0U7QTVFNmpmRjs7QTRFempmQTtBQUNBO0VBQ0U7QTVFNGpmRjs7QTRFempmQTtFQUNFO0lBQ0U7RTVFNGpmRjtFNEV6amZBO0lBQ0U7RTVFMmpmRjtBQUNGO0E0RXJqZkE7RUFDRTtJQUNFO0U1RXVqZkY7QUFDRjtBNEVsamZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFb2pmRjs7QTRFampmQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVvamZGOztBNEVqamZBO0FBQ0E7RUFDRTtBNUVvamZGOztBNEVqamZBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RW9qZkY7O0E0RTlpZkE7QUFDQTtFQUNFO0E1RWlqZkY7O0E0RTlpZkE7RUFDRTtJQUNFO0U1RWlqZkY7QUFDRjtBNkU5b2dCQTtFTDJDVTtFQUFBO0VLekNSO0VBQ0E7RUFDQTtFekUrUk07RXlFN1JOLGdCckVpRmlCO0FSZ2tnQm5CO0FheGxnQkk7RWdFL0RKO0lMMkNVO0lBQUE7RXhFaW5nQlI7QUFDRjtBYTlsZ0JJO0VnRS9ESjtJTDJDVTtJQUFBO0V4RXVuZ0JSO0FBQ0Y7QWFwbWdCSTtFZ0UvREo7SUwyQ1U7SUFBQTtFeEU2bmdCUjtBQUNGO0FhMW1nQkk7RWdFL0RKO0lMMkNVO0lBQUE7RXhFbW9nQlI7QUFDRjtBYWhuZ0JJO0VnRS9ESjtJTDJDVTtJQUFBO0V4RXlvZ0JSO0FBQ0Y7QUk5aWdCSTtFeUV2SUo7SXpFMFNRO0VKKzRmTjtBQUNGOztBOEUxcmdCQTtFQUNFO0VBQ0E7RU55Q1E7RUFBQTtBeEVzcGdCVjtBYWxvZ0JJO0VpRS9ESjtJTjJDVTtFeEUwcGdCUjtBQUNGO0Fhdm9nQkk7RWlFL0RKO0lOMkNVO0V4RStwZ0JSO0FBQ0Y7QWE1b2dCSTtFaUUvREo7SU4yQ1U7RXhFb3FnQlI7QUFDRjtBYWpwZ0JJO0VpRS9ESjtJTjJDVTtFeEV5cWdCUjtBQUNGO0E4RS9zZ0JFO0VBRUU7QTlFZ3RnQko7QThFL3NnQkk7RUFDRTtFQUNBO0VOZ0NJO0VBQUE7RU03Qko7RUFDQTtFQUNBO0VBQ0E7QTlFaXRnQk47QWFucWdCSTtFaUV0REE7SU5rQ007RXhFMnJnQlI7QUFDRjtBYXhxZ0JJO0VpRXREQTtJTmtDTTtFeEVnc2dCUjtBQUNGO0E4RTF0Z0JNO0VOT0U7RU1MQSxvR3RFNERpQjtFc0UzRGpCLGdCdEUrRFc7QVI2cGdCbkI7QWFscmdCSTtFaUU3Q0U7SU5PRTtFeEU0dGdCTjtBQUNGO0E4RTN0Z0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGN0RVlnQjtFc0VYaEI7RUFDQTtBOUU2dGdCTjtBOEUzdGdCTTtFQUNFO0E5RTZ0Z0JSO0E4RTF0Z0JNOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0E5RTR0Z0JSO0E4RW50Z0JFO0VBQ0U7RU5iTTtBeEVtdWdCVjtBYS9zZ0JJO0VpRVJGO0lOWlE7RXhFdXVnQlI7QUFDRjtBOEV0dGdCRTtFQUNFO0VBQ0E7RUFDQTtFTnJCTTtBeEU4dWdCVjtBYTF0Z0JJO0VpRUZGO0lObEJRO0V4RWt2Z0JSO0FBQ0Y7QThFMXRnQkk7RU56Qk07QXhFc3ZnQlY7QThFeHRnQkU7RUFDRTtBOUUwdGdCSjtBOEV2dGdCRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5dGdCSjtBOEV0dGdCRTtFQUNFO0VBQ0E7RU5sRE07QXhFMndnQlY7QWF2dmdCSTtFaUU0QkY7SU5oRFE7RXhFK3dnQlI7QUFDRjtBOEUzdGdCSTtFQUNFO0E5RTZ0Z0JOO0E4RXp0Z0JFO0VBQ0U7RUFDQTtFTjVETTtBeEV3eGdCVjtBYXB3Z0JJO0VpRXNDRjtJTjFEUTtFeEU0eGdCUjtBQUNGO0E4RTl0Z0JJO0VBQ0U7QTlFZ3VnQk47O0E4RTN0Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFOHRnQkY7O0E4RTN0Z0JBO0FBQ0E7OztFQUdFO0E5RTh0Z0JGOztBOEUzdGdCQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0E5RTh0Z0JGOztBOEUxdGdCQTtBQUNBO0VBQ0U7RUFDQTtFTjlGUTtFTWdHUjtBOUU2dGdCRjtBYXp5Z0JJO0VpRXdFSjtJTjVGVTtFeEVpMGdCUjtBQUNGOztBK0UzMmdCRTtFTitCQSxrQkErQ2tCO0F6RWl5Z0JwQjs7QWdGajNnQkE7QUFDQTtFQUNFO0VBQ0EsY3hFbUNZO0VnRUtKO0VBQUE7QXhFODBnQlY7QWExemdCSTtFbUU5REo7SVIwQ1U7RXhFazFnQlI7QUFDRjtBYS96Z0JJO0VtRTlESjtJUjBDVTtFeEV1MWdCUjtBQUNGO0FnRjUzZ0JJO0VBREY7SUFFSTtFaEYrM2dCSjtBQUNGO0FnRjMzZ0JJO0VBQ0U7RUFDQTtBaEY2M2dCTjtBZ0Y1M2dCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEY4M2dCUjtBZ0Y3M2dCUTtFUkVBO0VRQUUsb0d4RXVEZTtBUncwZ0J6QjtBYXoxZ0JJO0VtRXhDSTtJUkVBO0V4RW00Z0JOO0FBQ0Y7QWdGajRnQlE7RUFDRTtFQUNBLGN4RWVZO0V3RWRaO0FoRm00Z0JWO0FhdDFnQkk7RW1FdkNGO0lBQ3VDO0VoRmc0Z0J2QztBQUNGO0FnRjkzZ0JFO0VBQ0U7RUFDQTtFQUNBLG1CeEVOVTtFd0VPVjtFQUNBO0FoRmc0Z0JKO0FnRjkzZ0JJO0VBQ0U7RUFDQSxtQnhFTGdCO0V3RU1oQjtBaEZnNGdCTjtBZ0Y1M2dCRTtFQUNFO0VBQ0E7QWhGODNnQko7QWdGMzNnQkU7RUFDRTtBaEY2M2dCSjtBZ0YxM2dCRTtFQUNFO0VBQ0E7RUFFQTtFQTRFQTtFQW1FQTtBaEY4dWdCSjtBZ0Y1M2dCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRjgzZ0JOO0FnRjUzZ0JNO0VBQUk7QWhGKzNnQlY7QWdGNzNnQk07RUFDRTtFQUNBO0VBRUE7QWhGODNnQlI7QWdGNzNnQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEYrM2dCVjtBZ0Y1M2dCUTtFQUNFLG1CeEVyQ0c7QVJtNmdCYjtBZ0Z4M2dCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQVM7RVI1RFA7QXhFdzdnQlY7QWFwNmdCSTtFbUVvQ0U7SVJ4REk7RXhFNDdnQlI7QUFDRjtBYXo2Z0JJO0VtRW9DRTtJUnhESTtFeEVpOGdCUjtBQUNGO0FnRm40Z0JRO0VBQ0UsV3hFeERGO0VnRTFCQTtFUW9GRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhGcTRnQlY7QWF4N2dCSTtFbUUyQ0k7SVJqRkE7RXhFaytnQk47QUFDRjtBYTc3Z0JJO0VtRTJDSTtJUmpGQTtFeEV1K2dCTjtBQUNGO0FhbDhnQkk7RW1FMkNJO0lSakZBO0V4RTQrZ0JOO0FBQ0Y7QWdGbDVnQlE7RUFDRSxXeEVsRUY7RWdFMUJBO0VROEZFO0VBQ0E7QWhGbzVnQlY7QWE3OGdCSTtFbUVxREk7SVIzRkE7RXhFdS9nQk47QUFDRjtBZ0Z2NWdCUTtFQUNFLFd4RXhFRjtFd0V5RUU7RVJuR0Y7RVFxR0U7RUFDQTtBaEZ5NWdCVjtBYXo5Z0JJO0VtRTJESTtJUmpHQTtFeEVtZ2hCTjtBQUNGO0FnRjE1Z0JNO0VBQ0U7QWhGNDVnQlI7QWdGMTVnQlE7RUFDRTtBaEY0NWdCVjtBZ0Z6NWdCUTtFQUNFO0FoRjI1Z0JWO0FnRnI1Z0JJO0VBQ0U7RUFDQTtFUnhHSTtFQUFBO0F4RWlnaEJWO0FhNytnQkk7RW1Fa0ZBO0lSdEdNO0V4RXFnaEJSO0FBQ0Y7QWFsL2dCSTtFbUVrRkE7SVJ0R007RXhFMGdoQlI7QUFDRjtBZ0YvNWdCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjeEVoSGM7RXdFaUhkO0VBQ0E7QWhGaTZnQlI7QWdGLzVnQlE7RUFDRTtBaEZpNmdCVjtBZ0Y5NWdCUTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBaEZnNmdCVjtBZ0Y1NWdCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFNQTtBaEZ3NWdCUjtBZ0Y3NWdCUTtFQUFZO0VBQW9CO0VBQVU7QWhGazZnQmxEO0FnRmo2Z0JROzs7RUFFMkI7QWhGbzZnQm5DO0FnRmo2Z0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRm02Z0JWO0FnRmg2Z0JNO0VBQ0U7RUFDQTtFQUNBO0VSNUpFO0F4RStqaEJWO0FhM2loQkk7RW1FcUlFO0lSekpJO0V4RW1raEJSO0FBQ0Y7QWdGcjZnQk07RUFDRTtBaEZ1NmdCUjtBZ0ZyNmdCUTtFQUNFO0FoRnU2Z0JWO0FnRmo2Z0JJO0VBQ0U7QWhGbTZnQk47QWdGajZnQk07RUFDRTtFQUNBO0VBQ0E7QWhGbTZnQlI7QWdGajZnQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEZtNmdCUjtBYXZqaEJJO0VtRXdKQTtJQUN1QztFaEZrNmdCekM7QUFDRjs7QWdGOTVnQkE7QUFDQTtFQUNFO0lBR0U7SUFxQkE7SUFRQTtFaEZvNGdCRjtFZ0ZuNmdCRTtJQUFPO0VoRnM2Z0JUO0VnRm42Z0JFO0lBQXFDO0lBQWM7RWhGdTZnQnJEO0VnRnI2Z0JFO0lBQ0U7SUFDQTtFaEZ1NmdCSjtFZ0ZyNmdCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VoRnU2Z0JKO0VnRnI2Z0JFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFaEZ1NmdCSjtFZ0ZuNmdCRTs7OztJQUlFO0VoRnE2Z0JKO0VnRmo2Z0JFOztJQUVFO0lBQ0E7SUFDQTtJQUNBO0VoRm02Z0JKO0FBQ0Y7QWdGLzVnQkE7QUN2UkE7RUFDRSx5QnpFdURXO0VnRWJIO0VBQUE7QXhFaXBoQlY7QWE3bmhCSTtFb0UvREo7SVQyQ1U7SUFBQTtFeEVzcGhCUjtBQUNGO0Fhbm9oQkk7RW9FL0RKO0lUMkNVO0lBQUE7RXhFNHBoQlI7QUFDRjtBYXpvaEJJO0VvRS9ESjtJVDJDVTtJQUFBO0V4RWtxaEJSO0FBQ0Y7QWEvb2hCSTtFb0UvREo7SVQyQ1U7SUFBQTtFeEV3cWhCUjtBQUNGO0FhcnBoQkk7RW9FL0RKO0lUMkNVO0lBQUE7RXhFOHFoQlI7QUFDRjtBaUZ0dGhCRTtFQUNFLGdCekVrRmU7RXlFakZmLGN6RWdDVTtFZ0ViTjtBeEVzc2hCUjtBYWhxaEJJO0VvRTNERjtJVHFCTTtFeEUwc2hCTjtBQUNGO0FpRjF0aEJFO0VBQ0UsY3pFMkJVO0V5RTFCVixvR3pFb0VxQjtFeUVuRXJCLGdCekV1RWU7RXlFdEVmO0VUV0k7QXhFa3RoQlI7QWE1cWhCSTtFb0VyREY7SVRlTTtFeEVzdGhCTjtBQUNGO0FpRjl0aEJFO0VBQ0UsY3pFbUJVO0V5RWxCVixvR3pFNERxQjtFeUUzRHJCLGdCekVrRWU7RXlFakVmO0VUR0k7QXhFOHRoQlI7QWF4cmhCSTtFb0U3Q0Y7SVRPTTtFeEVrdWhCTjtBQUNGO0FpRmx1aEJFO0VBQ0UsY3pFV1U7RWdFYk47QXhFdXVoQlI7QWFqc2hCSTtFb0VyQ0Y7SVRETTtFeEUydWhCTjtBQUNGO0FpRnR1aEJFO0VBQ0UsY3pFaUJHO0VnRXhCQztFU1NKLGdCekVrRGU7QVJzcmhCbkI7QWlGcnVoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjekVJa0I7RXlFSGxCO0FqRnV1aEJKO0FpRnB1aEJFO0VBQ0U7RUFDQTtBakZzdWhCSjtBaUZydWhCSTtFQUNFO0FqRnV1aEJOO0FpRm51aEJFO0VBQ0UseUJ6RWlCVTtFeUVoQlY7RUFDQTtFQUNBO0VUZE07QXhFb3ZoQlY7QWFodWhCSTtFb0VWRjtJVFZRO0V4RXd2aEJSO0FBQ0Y7QWlGdnVoQkU7RUFDRSx5QnpFVVU7QVIrdGhCZDtBaUZ0dWhCRTtFQUNFO0FqRnd1aEJKO0FpRnZ1aEJJO0VUMUNJO0F4RW94aEJSO0FhOXVoQkk7RW9FSUE7SVQxQ0k7RXhFd3hoQk47QUFDRjs7QWtGbHpoQkE7RVYyQ1U7QXhFMndoQlY7QWF2dmhCSTtFcUUvREo7SVYyQ1U7RXhFK3doQlI7QUFDRjtBa0Z4emhCSTtFQUNJO0VBQ0E7RUFDQTtFVnFDRTtFVW5DRjtBbEYwemhCUjtBYW53aEJJO0VxRTVEQTtJVndDTTtFeEUyeGhCUjtBQUNGO0FrRjd6aEJRO0VBQ0ksYzFFMkJFO0VnRWJOO0VVWkksZ0IzRStsQmtCO0UyRTlsQmxCO0FsRit6aEJaO0FhOXdoQkk7RXFFckRJO0lWZUE7RXhFd3poQk47QUFDRjs7QW1GaDFoQkE7RUFDRTtBbkZtMWhCRjs7QW1GLzBoQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GazFoQko7QW1GajFoQkk7RUFDRSxrQjNFMkZVO0FSd3ZoQmhCO0FtRmoxaEJNO0VBQ0U7QW5GbTFoQlI7QW1GaDFoQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVzNFa0JBO0UyRWpCQSxrQjNFd0VRO0UyRXZFUix5QjNFVWM7RTJFVGQ7QW5GazFoQlI7QW1GaDFoQlE7RUFDRTtBbkZrMWhCVjtBbUYvMGhCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRmkxaEJWO0FtRjcwaEJNO0VBQ0U7RUFFQTtFWFZFO0F4RXkxaEJWO0FhcjBoQkk7RXNFYkU7SVhQSTtFeEU2MWhCUjtBQUNGO0FtRjMwaEJRO0VBQ0U7RUFDQTtBbkY2MGhCVjtBbUY1MGhCVTtFQUNFO0VBQ0EsYzNFN0JFO0VnRUtKO0F4RXUyaEJWO0FhbjFoQkk7RXNFRU07SVh0QkE7RXhFMjJoQlI7QUFDRjtBbUZ2MGhCWTtFQUNFO0FuRnkwaEJkO0FtRnYwaEJZO0VBQ0U7QW5GeTBoQmQ7QW1GcjBoQlk7RUFDRTtBbkZ1MGhCZDtBbUZwMGhCWTtFWG5FSjtFVzBFTTtFQUNBLG9HM0VwQlc7RTJFcUJYO0FuRmkwaEJkO0FhdjJoQkk7RXNFNkJRO0lYbkVKO0V4RWk1aEJOO0FBQ0Y7QW1GbjBoQlk7RVgvRUo7RVdzRk0sb0czRS9CVztFMkVnQ1g7QW5GZzBoQmQ7QWFqM2hCSTtFc0V5Q1E7SVgvRUo7RXhFMjVoQk47QUFDRjtBbUZuMGhCYztFWHpGTjtBeEUrNWhCUjtBYXozaEJJO0VzRW1EVTtJWHpGTjtFeEVtNmhCTjtBQUNGO0FtRmgwaEJjO0VBQ0UsZ0IzRXZDRztBUnkyaEJuQjtBbUY5emhCWTtFQUNFLGMzRTdGQTtBUjY1aEJkO0FtRi96aEJjO0VYM0dOO0F4RTY2aEJSO0FhdjRoQkk7RXNFcUVVO0lYM0dOO0V4RWk3aEJOO0FBQ0Y7QW1GOXpoQmdCO0VBQ0U7QW5GZzBoQmxCO0FtRnp6aEJRO0VBRUU7QW5GMHpoQlY7QW1GenpoQlU7RUFDRTtFQUNBO0FuRjJ6aEJaOztBb0ZyOWhCQTtFQUNFO0VBQ0E7RUFDQSxzQjVFZ0RNO0FSdzZoQlI7QW9GdDloQkU7RUFDRTtFQUNBO0FwRnc5aEJKO0FvRnI5aEJFO0VBQ0U7QXBGdTloQko7QW9GcDloQkU7RUFDRTtBcEZzOWhCSjs7QW9GbDloQkE7RUFDRTtFQUNBO0VBQ0E7QXBGcTloQkY7O0FvRmw5aEJBO0VBQ0U7RUFDQTtFQUNBLHFCNUVpQm9CO0U0RWhCcEIsb0c1RW1EdUI7QVJrNmhCekI7O0FvRmw5aEJBO0VBQ0U7RUFDQTtBcEZxOWhCRjs7QW9GbDloQkE7RUFDRTtJQUNFO0lBQ0E7RXBGcTloQkY7RW9GbDloQkE7SUFDRTtFcEZvOWhCRjtBQUNGO0FxRmpnaUJBO0VBRUU7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFtQkE7RUFNQTtBckZ3K2hCRjtBcUZoZ2lCRTtFQUNFO0FyRmtnaUJKO0FxRi8vaEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRmlnaUJKO0FxRjkvaEJFO0VBQ0U7RUFDQTtBckZnZ2lCSjtBcUY1L2hCRTtFQUNFO0VBQ0E7QXJGOC9oQko7QXFGMS9oQkU7RUFDRTtBckY0L2hCSjtBcUZ6L2hCRTtFQUNFO0FyRjIvaEJKO0FxRnYvaEJFO0VBQ0U7QXJGeS9oQko7QXFGbC9oQkU7RUFHRTs7SUFBQTtBckZvL2hCSjtBcUY1K2hCRTtFYnRCUTtFQUFBO0Vhd0JOLHlCN0U1QlU7RTZFNkJWLGM3RTlCVTtFNkUrQlY7RWI1Q0k7RWE4Q0osWTdFZ0VvQjtFNkUvRHBCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGKytoQko7QWEvL2hCSTtFd0VFRjtJYnRCUTtJQUFBO0V4RXdoaUJSO0FBQ0Y7QWFyZ2lCSTtFd0VFRjtJYnRCUTtJQUFBO0V4RThoaUJSO0FBQ0Y7QXFGei9oQkk7RUFDRSxnQjdFRWE7QVJ5L2hCbkI7QXFGdi9oQkk7RUFDRTtFQUNBO0ViL0RFO0VhaUVGLGdCN0VIYTtBUjQvaEJuQjtBYXBoaUJJO0V3RUVGO0lBNkJJO0lBQ0E7RXJGeS9oQko7QUFDRjtBYTFoaUJJO0V3RW9DRTtJWmxFSixrQkF1Q2tCO0lBM0JWLFNBRks7SVkwRFA7RXJGMC9oQk47QUFDRjtBcUZyL2hCRTtFYmhFUTtFYW1FTjtBckZzL2hCSjtBYXJpaUJJO0V3RTRDRjtJYmhFUTtFeEU2amlCUjtBQUNGO0FxRnAvaEJJO0VBRUU7QXJGcS9oQk47QXFGbC9oQkk7RWIvRU07RWFpRkosUzdFV2tCO0U2RVZsQjtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCN0U3REk7QVJpamlCVjtBYXRqaUJJO0V3RTJEQTtJYi9FTTtFeEU4a2lCUjtBQUNGO0FxRnQvaEJNO0VBQ0U7RUFDQTtBckZ3L2hCUjtBcUZyL2hCTTtFQUNFLHlCN0V0RUU7QVI2amlCVjtBcUZsL2hCRTtFQUNFO0VBQ0E7RUFNQTtBckYrK2hCSjtBYTFqaUJJO0V3RW1FRjtJQUlNO0lBQ0E7RXJGdS9oQk47QUFDRjtBcUZuL2hCRTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0U7QXJGby9oQk47QWF2a2lCSTtFd0U2RUY7SUFRTTtFckZzL2hCTjtBQUNGO0FxRm4vaEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFc3RTNISTtBUmduaUJSO0FxRnAvaEJLO0VBQ08sYzdFbklVO0FSeW5pQnRCO0FxRmwvaEJFO0VBRUU7RUFDQTtFQUNBO0VBQ0EseUI3RXJITTtFNkVzSE47RUFFQTtFYmpKTTtFQUFBO0VBQUE7RUFBQTtBeEV1b2lCVjtBYW5uaUJJO0V3RXFIRjtJYnpJUTtFeEUyb2lCUjtBQUNGO0FheG5pQkk7RXdFcUhGO0lieklRO0V4RWdwaUJSO0FBQ0Y7QWE3bmlCSTtFd0VxSEY7SWJ6SVE7RXhFcXBpQlI7QUFDRjtBYWxvaUJJO0V3RXFIRjtJYnpJUTtFeEUwcGlCUjtBQUNGO0FxRm5naUJJOzs7RUFHRSx5QjdFbElJO0U2RW1JSjtFQUNBO0VBQ0E7RUFDQTtBckZxZ2lCTjtBcUZsZ2lCSTtFQUNFO0VBQ0E7QXJGb2dpQk47QXFGLy9oQk07OztFQUdFO0VBQ0EseUI3RXBKRTtBUnFwaUJWO0FxRjkvaEJNO0VBQ0UseUI3RXhKRTtBUndwaUJWO0FxRjkvaEJROzs7RUFHRTtBckZnZ2lCVjtBcUZ6L2hCTTs7O0VBR0U7QXJGMi9oQlI7QXFGdi9oQkk7RUFDRTtFQUVBO0VBQ0E7RUFDQTtBckZ3L2hCTjtBcUZyL2hCTTtFQUVFO0VBRUE7RUFDQTtFQUNBO0FyRnEvaEJSO0FxRm4vaEJRO0VBQ0U7QXJGcS9oQlY7QXFGbC9oQlE7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0ViaFBGO0F4RW91aUJSO0FhOXJpQkk7RXdFb01JO0liMU9BO0V4RXd1aUJOO0FBQ0Y7QXFGdC9oQlU7RUFDRSxjN0V2T0U7QVIrdGlCZDtBcUZyL2hCVTtFQUNFO0FyRnUvaEJaO0FxRm4vaEJRO0VBQ0U7RUFDQTtFQUNBO0FyRnEvaEJWO0FxRm4vaEJVO0VBQ0U7RUFDQTtBckZxL2hCWjtBcUZuL2hCWTtFQUNFO0VBQ0E7QXJGcS9oQmQ7QXFGai9oQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckZtL2hCWjtBcUZoL2hCVTtFQUNFO0VBQ0E7RUFDQTtBckZrL2hCWjtBcUYvK2hCVTtFQUNFO0FyRmkvaEJaO0FxRjcraEJRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsVzdFM1FGO0U2RTRRRTtFQUNBO0VBQ0E7RUFDQTtBckY4K2hCVjtBcUY1K2hCVTtFQUNFO0VBQ0E7QXJGOCtoQlo7QXFGNStoQlk7RUFDRTtFQUNBLGdCN0VuUEs7QVJpdWlCbkI7QXFGeCtoQlk7RUFDRTtFQUNBO0FyRjAraEJkO0FxRngraEJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGMCtoQmQ7QXFGeCtoQmM7RUFDRSxjN0VwVE07RTZFcVROO0VBQ0E7QXJGMCtoQmhCO0FxRnQraEJZO0VBQ0U7SUFDRSxjN0U1VE07STZFNlROO0lBQ0E7RXJGdytoQmQ7QUFDRjtBcUZ0K2hCWTtFQUNFO0FyRncraEJkO0FxRmwraEJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFM3RXRQUTtFNkV1UFIseUI3RXhURTtFNkV5VEY7RUFDQTtBckZvK2hCUjtBcUZsK2hCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGbytoQlY7QXFGaitoQlE7RUFDRTtBckZtK2hCVjtBcUYvOWhCUTtFQUNFLGM3RXBXWTtBUnEwaUJ0QjtBcUYxOWhCRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQjdFcFRZO0U2RXFUWjtFQUNBO0FyRjQ5aEJKO0F3RWowaUJNO0Vhd1dFO0FyRjQ5aEJSO0FxRjM5aEJRO0VBQ0U7QXJGNjloQlY7QXdFdjBpQk07RWF3V0U7QXJGaytoQlI7QXFGaitoQlE7RUFDRTtBckZtK2hCVjtBd0VyMGlCSTtFQUNFO0lhK1ZFO0VyRnkraEJOO0VxRngraEJNO0lBQ0U7RXJGMCtoQlI7QUFDRjtBcUZ2K2hCSTtFQUNJO0VBQ0E7RUFDQSxrQjdFbFVRO0U2RW1VUjtBckZ5K2hCUjtBcUZ2K2hCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ5K2hCTjtBcUZ4K2hCTTtFQUVFO0FyRnkraEJSO0FxRnAraEJFO0VBQ0U7RUFDQTtFQUNBO0VBRUE7QXJGcStoQko7QXFGaitoQkk7RUFDRTtBckZtK2hCTjtBcUZqK2hCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyRm0raEJSO0FxRi85aEJNO0VBQ0U7RUFDQTtBckZpK2hCUjtBcUY5OWhCTTtFQUNFO0VBQ0E7QXJGZytoQlI7QXFGNzloQk07RUFDRTtBckYrOWhCUjtBcUY3OWhCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRis5aEJWO0FxRjc5aEJVO0VBQ0U7RUFDQTtBckYrOWhCWjtBcUYzOWhCUTtFQUNFO0VBQ0E7RUFDQTtBckY2OWhCVjtBcUYzOWhCVTtFQUNFO0VBQ0E7RUFDQTtBckY2OWhCWjtBcUYzOWhCWTtFQUNFO0VBQ0E7QXJGNjloQmQ7QXFGejloQlk7RUFDRTtFQUNBO0FyRjI5aEJkO0FxRnQ5aEJRO0VBQ0UseUI3RTlkSTtBUnM3aUJkO0FxRnY5aEJVO0VBQ0UsYzdFMWRVO0FSbTdpQnRCO0FxRmg5aEJJO0VBQ0U7RUFDQTtBckZrOWhCTjtBcUYvOGhCSTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckZpOWhCTjtFcUYvOGhCTTtJQUNFLGM3RXBmWTtJNkVxZlo7SUFDQTtFckZpOWhCUjtBQUNGO0FxRjc4aEJJO0VBQ0U7SUFDRSxjN0U3ZmM7STZFOGZkO0lBQ0E7RXJGKzhoQk47QUFDRjtBcUY1OGhCSTtFQTVYRjtJQThYSTtFckY4OGhCSjtFcUY3OGhCSTtJQUNFO0VyRis4aEJOO0VxRjU4aEJJO0lBQ0U7RXJGODhoQk47QUFDRjtBcUYxOGhCSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VidmhCSTtFQUFBO0F4RW8raUJWO0FhaDlpQkk7RXdFOGZBO0libGhCTTtFeEV3K2lCUjtBQUNGO0FhcjlpQkk7RXdFOGZBO0libGhCTTtFeEU2K2lCUjtBQUNGO0FxRjc4aEJVO0VibmpCRjtFYXFqQkksYzdFeGlCRTtBUnUvaUJkO0FxRno4aEJVO0ViemlCQTtBeEVxL2lCVjtBYWoraUJJO0V3RXFoQk07SWJ6aUJBO0V4RXkvaUJSO0FBQ0Y7QWF0K2lCSTtFd0VxaEJNO0liemlCQTtFeEU4L2lCUjtBQUNGO0FxRmo5aEJRO0VBQ0U7RUFDQSxXN0V4aUJGO0U2RXlpQkU7RUFDQTtFQUNBO0VicmtCRjtBeEV5aGpCUjtBcUZoOWhCVTtFQUNFO0VBQ0E7QXJGazloQlo7QXFGaDloQlk7RUFDRTtBckZrOWhCZDtBcUY5OGhCVTtFYmxsQkY7RWFvbEJJLGM3RTVqQkw7RTZFNmpCSztBckZnOWhCWjtBcUYxOGhCUTtFQUNFO0FyRjQ4aEJWO0FxRmw4aEJRO0VBQ0U7RUFDQTtBckZvOGhCVjtBcUY3N2hCUTtFQU1FO0VBQ0E7RWJwbUJBO0VBQUE7RWF3bUJBOzs7OztLQUFBO0FyRjg3aEJWO0FhbGhqQkk7RXdFeWtCSTtJYjdsQkU7RXhFMGlqQlI7QUFDRjtBYXZoakJJO0V3RXlrQkk7SWI3bEJFO0V4RStpakJSO0FBQ0Y7QXFGajhoQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxtQjdFeG5CRTtFNkV5bkJGLFc3RTVtQko7RTZFNm1CSSx5SDdFL2tCVztFNkVnbEJYLGdCN0Uza0JNO0U2RTRrQk47QXJGbThoQlo7QXFGajhoQlk7RUFDRTtBckZtOGhCZDtBcUZoOGhCWTtFQUNFO0FyRms4aEJkO0FxRi83aEJZO0VBQ0U7QXJGaThoQmQ7QXFGNTdoQlU7RUFDRSxtQjdFN29CRTtFNkU4b0JGLFc3RWpvQko7QVIrampCUjtBcUZ0N2hCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5SDdFcG5CaUI7RTZFcW5CakIsZ0I3RWhuQlk7RWdFM0NSO0F4RW9sakJWO0FhaGtqQkk7RXdFNm5CQTtJYmpwQk07RXhFd2xqQlI7QUFDRjtBcUZ6N2hCTTtFYmhxQkk7RWFrcUJGO0FyRjI3aEJSO0FhemtqQkk7RXdFNG9CRTtJYmhxQkk7RXhFaW1qQlI7QUFDRjtBd0VsbGpCTTtFYXNwQkUsYzdFcHFCYztBUm1takJ0QjtBd0VybGpCTTtFYXNwQkUsYzdFcHFCYztBUnNtakJ0QjtBd0VobGpCSTtFQUNFO0lhNm9CRSxjN0VwcUJjO0VSMG1qQnBCO0FBQ0Y7QXFGcDhoQk07RUFDRSxjN0UvcUJNO0FScW5qQmQ7QXFGbjhoQk07RUFDRTtBckZxOGhCUjtBcUYvN2hCTTtFQUZGO0lBR0k7SUFDQTtFckZrOGhCTjtFcUZoOGhCTTtJQUNFO0lBQ0E7SUFDQTtFckZrOGhCUjtBQUNGO0FhMW1qQkk7RXdFNHFCSTtJQUNFO0lBQ0E7SUFDQTtFckZpOGhCUjtBQUNGO0FxRjc3aEJNO0VieHNCSTtFQUFBO0VBQUE7QXhFMG9qQlY7QWF0bmpCSTtFd0VvckJFO0lieHNCSTtFeEU4b2pCUjtBQUNGO0FhM25qQkk7RXdFb3JCRTtJYnhzQkk7RXhFbXBqQlI7QUFDRjtBYWhvakJJO0V3RW9yQkU7SWJ4c0JJO0V4RXdwakJSO0FBQ0Y7QXFGNThoQlE7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0FyRjQ4aEJWO0FhNW9qQkk7RXdFeXJCSTtJYjdzQkU7RXhFb3FqQlI7QUFDRjtBcUYvOGhCVTtFQUNFO0FyRmk5aEJaO0FxRjU4aEJZOzs7RUFHRTtBckY4OGhCZDtBcUZyOGhCUTtFQUZGO0laaHZCSixlQTJDa0I7SUFwQ1o7SUFRRTtJWXF1QkE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFDQSxnQjdFN3VCRjtJNkU4dUJFO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsZ0ZBQ0U7SUFHRjtJQUNBO0lBQ0EsVTdFbHFCZ0I7STZFbXFCaEI7SUFDQTtJQUNBO0VyRnM4aEJSO0VxRnA4aEJRO0lBQ0U7SUFDQTtJQUNBO0lBQ0Esb0RBQ0U7RXJGcThoQlo7RXFGajhoQlE7SUFDRTtJQUNBO0lBQ0E7SUFDQSxnRkFDRTtFckZrOGhCWjtFcUY3N2hCUTtJQUNFLHNCN0VqeEJKO0VSZ3RqQk47RXFGNzdoQlU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGM3RTl4QlE7STZFK3hCUjtJQUNBO0lBQ0E7SUFDQSxrQjdFcnVCRTtJNkVzdUJGO0lBQ0EsZ0I3RTF2Qks7RVJ5cmpCakI7RXFGMzdoQlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJGNjdoQlY7RXFGMzdoQlU7SUFDRTtJQUNBO0VyRjY3aEJaO0VxRjM3aEJZO0lBQ0UsYzdFanpCVDtJNkVrekJTO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyRjY3aEJkO0VxRjM3aEJjO0lBQ0UsZ0I3RXJ4QkM7STZFc3hCRDtFckY2N2hCaEI7RXFGdDdoQlU7SUFDRTtJQUNBO0lBQ0EsYzdFdDBCUDtFUjh2akJMO0VxRnA3aEJRO0lBQ0UseUI3RS8wQlU7RVJxd2pCcEI7RXFGcDdoQlU7SUFDRTtJQUNBO0VyRnM3aEJaO0VxRnA3aEJZO0lBQ0U7RXJGczdoQmQ7RXFGbDdoQlU7O0lBRUU7RXJGbzdoQlo7RXFGajdoQlU7SWJuM0JKO0lhcTNCTSxXN0UzMUJOO0k2RTQxQk07SUFDQSxnQjdFenpCSztFUjR1akJqQjtBQUNGO0FxRjc2aEJJO0VBQ0U7RUFDQTtFQUNBO0ViLzJCSTtBeEUreGpCVjtBYTN3akJJO0V3RXcxQkE7SWI1MkJNO0V4RW15akJSO0FBQ0Y7QXFGbDdoQk07RUFDRTtBckZvN2hCUjtBcUY5NmhCVTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0FyRis2aEJaO0FxRjc2aEJZO0VBRUU7RUFFQTtBckY2NmhCZDtBcUYxNmhCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGM3RTU0QlE7RTZFNjRCUjtFQUNBO0VBQ0E7RUFDQSxnQjdFdDJCSztBUmt4akJuQjtBcUYxNmhCYztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckY0NmhCaEI7QXFGMTZoQmdCO0VBQ0U7RUFDQTtBckY0NmhCbEI7QXFGaDZoQlU7RUFDRTtBckZrNmhCWjtBcUYvNWhCVTtFYmg4QkY7RWFrOEJJLFc3RXg2Qko7RTZFeTZCSSx5SDdFMzRCVztFNkU0NEJYLGdCN0V2NEJNO0U2RXc0Qk47RUFDQTtBckZpNmhCWjtBcUYvNWhCWTtFQUVFLGM3RTc3QkE7QVI2MWpCZDtBcUZoNGhCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZrNGhCZDtBcUZoNGhCYztFQUNFO0FyRms0aEJoQjtBcUYvM2hCYztFQUNFO0FyRmk0aEJoQjtBcUYvM2hCZ0I7RUFDRTtBckZpNGhCbEI7QXFGNzNoQmM7RUFDRTtBckYrM2hCaEI7QXFGNzNoQmdCO0VBQ0U7QXJGKzNoQmxCO0FxRjMzaEJjO0VBQ0U7QXJGNjNoQmhCO0FxRjMzaEJnQjtFQUNFO0FyRjYzaEJsQjtBcUYxM2hCZ0I7RUFDRTtBckY0M2hCbEI7QXFGeDNoQmM7RUFDRTtBckYwM2hCaEI7QXFGdDNoQlk7O0VBRUU7RUFDQTtFQUNBO0VBQ0EsYzdFM2dDUTtFNkU0Z0NSO0FyRnczaEJkO0FxRnIzaEJZO0VBQ0U7QXJGdTNoQmQ7QXFGbjNoQlU7RUFDRTtBckZxM2hCWjtBYXgzakJJO0V3RWtnQ007SWJ0aENBO0V4RWc1akJSO0FBQ0Y7QWE3M2pCSTtFd0VrZ0NNO0lidGhDQTtFeEVxNWpCUjtBQUNGO0FxRjMzaEJZO0VBTEY7SUFNSTtFckY4M2hCWjtBQUNGO0FhdjRqQkk7RXdFa2dDTTtJQVVJO0VyRiszaEJaO0FBQ0Y7QWEvM2pCSTtFd0VrZ0NRO0lBR0k7SUFDQTtFckY4M2hCZDtBQUNGO0FxRjUzaEJjO0ViNWpDTjtFYThqQ1EsZ0I3RW5nQ0c7QVJpNGpCbkI7QWF6NGpCSTtFd0V5Z0NVO0lBS0k7RXJGKzNoQmhCO0FBQ0Y7QXFGejNoQlk7RWJ0akNGO0F4RWs3akJWO0FhOTVqQkk7RXdFa2lDUTtJYnRqQ0Y7RXhFczdqQlI7QUFDRjtBcUY5M2hCYztFQUNFO0FyRmc0aEJoQjtBd0UxNmpCTTtFYThpQ1UsYzdFbmtDRjtBUms4akJkO0F3RTc2akJNO0VhOGlDVSxjN0Vua0NGO0FScThqQmQ7QXdFeDZqQkk7RUFDRTtJYXFpQ1UsYzdFbmtDRjtFUnk4akJaO0FBQ0Y7QXFGbjRoQmdCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCN0U1aENDO0U2RTZoQ0Q7RUFDQTtFQUNBO0VBQ0EseUI3RTFrQ0k7RTZFMmtDSixvQjdFNWdDTTtFNkU2Z0NOO0VBQ0E7RUFDQTtBckZxNGhCbEI7QXFGajRoQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQSxnQjdFL2lDRztFNkVnakNIO0VBQ0E7RUFDQSxrQjdFNWhDQTtFNkU2aENBLHlCN0VqbUNGO0U2RWttQ0UsVzdFcmxDUjtFNkVzbENRO0FyRm00aEJoQjtBYTc4akJJO0V3RStrQ007SVo3bUNSLGtCQStDa0I7RXpFZzhqQmxCO0FBQ0Y7QXFGOTNoQlk7RUFDRTtFQUNBO0VBQ0E7QXJGZzRoQmQ7QXFGNzNoQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscUI3RXhqQ0Y7RTZFeWpDRSwyQjdFdGpDRTtFNkV1akNGLDhCN0V2akNFO0FSczdqQmhCO0FxRjUzaEJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUI3RWprQ0Y7QVIrN2pCWjtBcUZ6M2hCYztFQUNFO0VBQ0E7RUFDQTtBckYyM2hCaEI7QXFGdjNoQmdCO0VBQ0U7QXJGeTNoQmxCO0FxRnAzaEJZO0VaenBDVixrQkF1Q2tCO0VBeEJWO0VBSEEsWUFGSztFWWlwQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0FyRnUzaEJkO0FhaC9qQkk7RXdFOG1DUTtJQWNJO0lBQ0E7SUFDQTtJQUNBO0VyRnczaEJkO0FBQ0Y7QXFGdDNoQmM7RUFDRTtFQUNBO0FyRnczaEJoQjtBcUZyM2hCYztFWmxyQ1osa0JBdUNrQjtFQXhCVjtFQUFBO0VBUkY7RVk2cUNRO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckYwM2hCaEI7QXFGOTJoQkk7RUFDRSxjN0Vwc0NRO0FSb2prQmQ7QXFGOTJoQk07RUFDRSxjN0V2c0NNO0FSdWprQmQ7QXFGNzJoQk07RUFDRTtBckYrMmhCUjtBcUY3MmhCUTs7RUFFRTtBckYrMmhCVjtBcUYzMmhCTTtFQUNFO0FyRjYyaEJSO0FxRngyaEJRO0VBQ0U7QXJGMDJoQlY7QXFGdjJoQlE7RUFDRTtBckZ5MmhCVjtBcUZ0MmhCUTtFQUNFO0FyRncyaEJWO0FxRmgyaEJNO0VBQ0U7QXJGazJoQlI7QXFGLzFoQk07RUFDRSxjN0UvdUNNO0FSZ2xrQmQ7QXFGNTFoQlE7O0VBQ0UsYzdFcnZDSTtFNkVzdkNKO0FyRisxaEJWO0FxRjkxaEJVOztFQUNFLGM3RWp2Q1U7QVJrbGtCdEI7QXFGejFoQkU7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFk3RXR5Q2lCO0U2RXV5Q2pCLGdCN0U3dkNJO0FSdWxrQlI7QXFGeDFoQkk7RUFaRjtJQWFJO0VyRjIxaEJKO0FBQ0Y7QXFGejFoQkk7RUFDRTtFQUNBO0VBQ0E7QXJGMjFoQk47QXFGejFoQk07RUFDRTtBckYyMWhCUjtBcUZ0MWhCSTtFQUNFO0VBQ0EsZ0I3RWh4Q0U7RTZFaXhDRixjN0U5eENRO0U2RSt4Q1I7RUFDQTtFQUNBLGdCN0VodkNhO0U2RWl2Q2I7RUFDQTtFQUNBO0FyRncxaEJOO0FxRm4xaEJFO0VBQ0U7RUFDQTtBckZxMWhCSjs7QXFGaDFoQkE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRmsxaEJGOztBcUYvMGhCQTtFQUNFO0VBQ0E7QXJGazFoQkY7O0FxRjkwaEJBO0VBQ0U7QXJGaTFoQkY7O0FxRjkwaEJBO0VBQ0U7RUFDQSxjN0VwMENvQjtFNkVxMENwQjtFQUNBO0FyRmkxaEJGOztBcUY3MGhCQTtFQUNFO0VBQ0E7RUFDQSxjN0U3MENvQjtBUjZwa0J0Qjs7QXFGNzBoQkE7RUFDRTtFQUNBO0FyRmcxaEJGOztBcUY3MGhCQTtFQUNFO0FyRmcxaEJGOztBcUY3MGhCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGZzFoQkY7O0FxRjcwaEJBO0VBQ0U7QXJGZzFoQkY7O0FxRjcwaEJBO0VBQ0U7QXJGZzFoQkY7O0FxRjUwaEJBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckYrMGhCRjtFcUYzMGhCQTtJQUNFLGM3RTEzQ2tCO0VSdXNrQnBCO0VxRnowaEJBO0lBQ0UseUI3RXoyQ2M7RVJvcmtCaEI7RXFGeDBoQkE7SUFDRSx5QjdFNzJDYztFUnVya0JoQjtFcUZ2MGhCQTtJQUNFLHlCN0VqM0NjO0VSMHJrQmhCO0VxRnQwaEJBO0lBQ0U7RXJGdzBoQkY7QUFDRjtBcUZsMGhCQTs7RUFFRTtBckZvMGhCRjtBcUZsMGhCRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVp4NkNGLGVBMkNrQjtFQS9CVixNQUZLO0VBRUwsUUFGSztFQUVMLFNBRks7RUFFTCxPQUZLO0F6RXd1a0JmO0FxRnAwaEJJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFWnI3Q0osZUEyQ2tCO0VBL0JWLE1BRks7RUFFTCxRQUZLO0VBRUwsU0FGSztFQUVMLE9BRks7QXpFc3ZrQmY7O0FxRjl6aEJJOztFQUNFO0FyRmswaEJOO0FxRjF6aEJNOztFQUNFO0FyRjZ6aEJSOztBcUZ2emhCQTtFQUNFO0lBQ0U7SUEwSEE7RXJGaXNoQkY7RXFGMXpoQkU7SUFDRTtJQUNBO0lBQ0E7RXJGNHpoQko7RXFGMXpoQkU7SUFDRTtFckY0emhCSjtFcUZ6emhCRTs7SUFFRTtJQUNBO0lBQ0E7SUFDQTtFckYyemhCSjtFcUZ4emhCRTtJQUNFO0VyRjB6aEJKO0VxRnZ6aEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLHlCN0U3OENJO0k2RTg4Q0o7SUFDQTtJQUNBO0lBQ0E7SUFDQSxjN0VoL0NRO0lnRWJOO0V4RXV6a0JOO0VxRnZ6aEJJO0lBQ0U7SUFDQTtFckZ5emhCTjtFcUZyemhCRTtJQUNFO0VyRnV6aEJKO0VxRnB6aEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGM3RW5nRFE7RVJ5emtCWjtFcUZwemhCSTtJQUNFO0lBQ0E7SUFDQTtFckZzemhCTjtFcUZuemhCSTtJQUNFO0VyRnF6aEJOO0VxRmh6aEJJO0lBQ0U7RXJGa3poQk47RXFGL3loQkk7SUFDRTtFckZpemhCTjtFcUY3eWhCRTtJQUNFO0VyRit5aEJKO0VxRjV5aEJFOztJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGM3RXRpRFE7STZFdWlEUjtJYnBqREU7RXhFbTJrQk47RXFGM3loQkU7O0lBRUU7RXJGNnloQko7RXFGenloQkk7SUFDRSx5QjdFemlEUztFUm8xa0JmO0VxRnh5aEJJO0lBQ0U7RXJGMHloQk47RXFGdnloQkk7SUFDRTtJQUNBO0lBQ0E7SUFDQSxjN0U3akRNO0VSczJrQlo7RXFGcnloQkU7SUFDRTtFckZ1eWhCSjtFcUZweWhCRTtJQUNFO0VyRnN5aEJKO0FBQ0Y7QXFGbnloQkk7RUFDRTtJQUNFO0VyRnF5aEJOO0FBQ0Y7QXFGaHloQkE7QUFDQTtFQUNFO0VBQ0E7QXJGa3loQkY7O0FxRi94aEJBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZreWhCRjs7QXFGL3hoQkE7RUFDRTtJQUNFO0VyRmt5aEJGO0VxRi94aEJBOztJQUVFO0VyRml5aEJGO0VxRjl4aEJBOzs7Ozs7Ozs7OztJQVdFO0VyRmd5aEJGO0FBQ0Y7QXFGM3hoQkU7RUFDRTtFQUNBLFc3RXRuREk7QVJtNWtCUjtBcUYxeGhCRTtFQUNFLFc3RTFuREk7QVJzNWtCUjs7QXFGdnhoQkU7RUFDRTtBckYweGhCSjtBcUZ2eGhCRTtFQUNFO0VBQ0EsVzdFcm9ESTtBUjg1a0JSO0FxRnZ4aEJJO0VBQ0U7QXJGeXhoQk47QXFGcnhoQkU7RUFDRSxXN0U3b0RJO0FSbzZrQlI7QXFGcHhoQkU7O0VBRUUsYzdFeHBEa0I7QVI4NmtCdEI7QXFGbnhoQkU7RUFDRTtBckZxeGhCSjtBcUZseGhCRTs7RUFFRTtBckZveGhCSjtBcUZqeGhCRTtFQUNFO0VBQ0EsVzdFaHFESTtFNkVpcURKO0FyRm14aEJKO0FxRmh4aEJFOzs7RUFHRTtBckZreGhCSjs7QXFGeHdoQkU7Ozs7OztFQUNFLHlCN0VqcURNO0FSaTdrQlY7QXFGN3doQkU7Ozs7OztFQUNFLGM3RW5zRFU7QVJ1OWtCZDtBcUZseGhCSTs7Ozs7O0VBQ0UsYzdFdHNEUTtBUis5a0JkO0FxRnR4aEJJOzs7Ozs7RUFDRTtBckY2eGhCTjtBcUZ6eGhCRTs7Ozs7O0VBQ0UsYzdFL3NEVTtBUisra0JkO0FxRjd4aEJFOzs7Ozs7Ozs7Ozs7RUFFRSxjN0U3c0RrQjtBUnMva0J0QjtBcUZ0eWhCRTs7Ozs7O0VBQ0UsYzdFeHREVTtBUnFnbEJkO0FxRjF5aEJFOzs7Ozs7Ozs7Ozs7RUFFRSxjN0V0dERrQjtBUjRnbEJ0QjtBcUZuemhCRTs7Ozs7Ozs7Ozs7O0VBRUU7QXJGK3poQko7QXFGNXpoQkU7Ozs7OztFQUNFO0FyRm0waEJKO0FxRmgwaEJFOzs7Ozs7RUFDRSx5QjdFMXVEVTtFNkUydURWLFc3RTl0REk7RTZFK3RESjtBckZ1MGhCSjs7QXNGeGxsQkU7RUFDRSxtQjlFa0VNO0VnRXpCQTtFQUFBO0VBQUE7RUFBQTtBeEVzamxCVjtBYWxpbEJJO0V5RTlERjtJZDBDUTtFeEUwamxCUjtBQUNGO0FhdmlsQkk7RXlFOURGO0lkMENRO0V4RStqbEJSO0FBQ0Y7QWE1aWxCSTtFeUU5REY7SWQwQ1E7SUFBQTtFeEVxa2xCUjtBQUNGO0FhbGpsQkk7RXlFOURGO0lkMENRO0lBQUE7RXhFMmtsQlI7QUFDRjtBYXhqbEJJO0V5RTlERjtJZDBDUTtJQUFBO0V4RWlsbEJSO0FBQ0Y7QWE5amxCSTtFeUU5REY7SWQwQ1E7SUFBQTtFeEV1bGxCUjtBQUNGO0FhcGtsQkk7RXlFOURGO0lkMENRO0lBQUE7RXhFNmxsQlI7QUFDRjtBc0Zsb2xCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUI5RWtIYTtFZ0V0RlQ7QXhFeW1sQlY7QWFybGxCSTtFeUV4REE7SWRvQ007RXhFNm1sQlI7QUFDRjtBc0Zwb2xCTTtFQWlDRTs7SUFBQTtFZFhFO0VBQUE7QXhFcW5sQlY7QXNGMW9sQlE7RUFDRTtBdEY0b2xCVjtBc0Z0b2xCVTtFQUNFO0VBQ0E7QXRGd29sQlo7QXNGL25sQlE7RWRHRTtFQUFBO0F4RWdvbEJWO0FhNW1sQkk7RXlFdkJJO0lkR0U7RXhFb29sQlI7QUFDRjtBYWpubEJJO0V5RXZCSTtJZEdFO0V4RXlvbEJSO0FBQ0Y7QXNGdm9sQlE7RWRIRTtBeEU2b2xCVjtBYXpubEJJO0V5RWpCSTtJZEhFO0V4RWlwbEJSO0FBQ0Y7QXNGM29sQlE7RWRQRTtBeEVxcGxCVjtBYWpvbEJJO0V5RWJJO0lkUEU7RXhFeXBsQlI7QUFDRjtBc0Yzb2xCUTtFZGZFO0F4RTZwbEJWO0Fhem9sQkk7RXlFTEk7SWRmRTtFeEVpcWxCUjtBQUNGO0FzRi9vbEJRO0VkbkJFO0F4RXFxbEJWO0FhanBsQkk7RXlFREk7SWRuQkU7RXhFeXFsQlI7QUFDRjtBYXRwbEJJO0V5RTFDRTtJZHNCSTtFeEU4cWxCUjtBQUNGO0FzRnJwbEJRO0VkMUJFO0F4RWtybEJWO0FhOXBsQkk7RXlFTUk7SWQxQkU7RXhFc3JsQlI7QUFDRjtBc0Z6cGxCUTtFQUNFLGM5RTdCWTtFOEU4Qlo7RUFDQTtFQUNBO0VBQ0EsZ0I5RVNTO0VnRTlEWDtFQWtCRTtFQUFBO0F4RWlzbEJWO0FhN3FsQkk7RXlFVUk7SWQ5QkU7RXhFcXNsQlI7QUFDRjtBYWxybEJJO0V5RVVJO0lkOUJFO0V4RTBzbEJSO0FBQ0Y7QXNGbnFsQlU7RUFDRTtFQUNBLGM5RXhDVTtFOEV5Q1Y7RUFDQTtFQUNBO0VBQ0E7RWRoRUo7RUFrQkU7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0F4RTB0bEJWO0FhdHNsQkk7RXlFb0JNO0lkeENBO0V4RTh0bEJSO0FBQ0Y7QWEzc2xCSTtFeUVvQk07SWR4Q0E7SUFBQTtFeEVvdWxCUjtBQUNGO0FhanRsQkk7RXlFb0JNO0lkeENBO0V4RXl1bEJSO0FBQ0Y7QWF0dGxCSTtFeUVvQk07SWR4Q0E7RXhFOHVsQlI7QUFDRjtBYTN0bEJJO0V5RW9CTTtJZHhDQTtFeEVtdmxCUjtBQUNGO0FhaHVsQkk7RXlFb0JNO0lkeENBO0V4RXd2bEJSO0FBQ0Y7QXNGaHNsQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VkakVKO0VBQUE7QXhFcXdsQlY7QWFqdmxCSTtFeUVxQ1E7SWR6REY7RXhFeXdsQlI7QUFDRjtBYXR2bEJJO0V5RXFDUTtJZHpERjtFeEU4d2xCUjtBQUNGO0FzRnRzbEJjO0VBQ0U7RUFDQTtBdEZ3c2xCaEI7QXNGanNsQlE7RUFDRTtFZG5GQTtFQUFBO0VBQUE7QXhFeXhsQlY7QWFyd2xCSTtFeUU4REk7SWRsRkU7RXhFNnhsQlI7QUFDRjtBc0Zyc2xCVTtFQUNFO0VBQ0E7QXRGdXNsQlo7QXNGbnNsQmM7RWQvRko7QXhFcXlsQlY7QXNGOXJsQlk7RWR2R0Y7QXhFd3lsQlY7QWFweGxCSTtFeUVtRlE7SWR2R0Y7RXhFNHlsQlI7QUFDRjtBc0Zsc2xCWTtFQUNFO0VBQ0EsZ0I5RXBFSztFOEVxRUwsYzlFNUdRO0U4RTZHUjtFQUNBO0VkbElOO0F4RXUwbEJSO0FzRnpybEJVO0VBQ0UsYzlFM0hVO0U4RTRIVixnQjlFckZPO0U4RXNGUCxnQjlFdEZPO0U4RXVGUDtFZGxKSjtBeEU4MGxCUjtBc0ZwcmxCTTtFQUNFO0VBQ0E7QXRGc3JsQlI7QXNGanJsQkU7RUFDRTtFQUNBO0F0Rm1ybEJKO0FzRmpybEJJO0VBQ0U7RUFDQTtBdEZtcmxCTjtBc0ZocmxCSTtFQUVJO0lBQ0U7SUFDQTtFdEZpcmxCUjtFc0YvcWxCUTtJQUNFO0V0RmlybEJWO0VzRjlxbEJRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRGZ3JsQlY7RXNGN3FsQlE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdEYrcWxCVjtBQUNGO0FzRjFxbEJJO0VBMUNGO0lBMkNJO0V0RjZxbEJKO0VzRjNxbEJJO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdEY2cWxCTjtFc0YxcWxCSTtJQUNFO0V0RjRxbEJOO0VzRjFxbEJNO0lBQ0U7SUFDQTtFdEY0cWxCUjtFc0Z6cWxCTTtJQUNFO0V0RjJxbEJSO0VzRnhxbEJNO0lBQ0U7RXRGMHFsQlI7RXNGcHFsQlE7SUFDRTtFdEZzcWxCVjtBQUNGO0FzRmhxbEJFO0VBQ00seUI5RXZNRTtBUnkybEJWO0FzRmhxbEJFO0VBQ0UseUI5RTFNTTtBUjQybEJWO0FzRmpxbEJJO0VBRUU7RUFDQSxpQjlFakphO0U4RWtKYjtFQUNBO0Vkek9JO0VBQUE7RUFBQTtFQUFBO0F4RSs0bEJWO0FhMzNsQkk7RXlFZ05BO0lkcE9NO0V4RW01bEJSO0FBQ0Y7QWFoNGxCSTtFeUVnTkE7SWRwT007RXhFdzVsQlI7QUFDRjtBc0Z2cWxCTTtFQUdFO0VkclBFO0VBQUE7QXhFODVsQlY7QWExNGxCSTtFeUU4TkU7SWRsUEk7RXhFazZsQlI7QUFDRjtBYS80bEJJO0V5RThORTtJZGxQSTtFeEV1NmxCUjtBQUNGO0FzRjlxbEJRO0VBQ0U7RUFDQTtBdEZncmxCVjtBc0Y3cWxCUTtFQUNFLGdCOUV2TlM7RThFd05UO0VkalFBO0VBbEJGO0F4RW84bEJSO0FzRjVxbEJVO0VBQ0U7QXRGOHFsQlo7QXNGM3FsQlU7RUFDRTtFZDdSSjtBeEUyOGxCUjtBc0Z4cWxCTTtFZGpSSTtBeEU0N2xCVjtBYXg2bEJJO0V5RTZQRTtJZGpSSTtFeEVnOGxCUjtBQUNGO0FzRjNxbEJNO0VBQ0U7RUFDQTtFQUNBLGdCOUVoUFc7RThFaVBYLGM5RXhSYztFZ0VGWjtFQWxCRjtBeEUyOWxCUjtBc0YxcWxCUTtFQUNFO0F0RjRxbEJWO0FzRnJxbEJHO0VBQ00sYzlFdFNhO0FSNjhsQnRCO0FzRnBxbEJNO0VBQ0UsYzlFMVNjO0FSZzlsQnRCO0FzRm5xbEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYzlFalRnQjtFOEVrVGhCO0VBQ0E7QXRGcXFsQk47QXNGbnFsQkk7RUFDRTtFQUNBLHlCOUV2VGdCO0U4RXdUaEIscUI5RXhUZ0I7RThFeVRoQixjOUVsU0k7RThFb1NKO0F0Rm9xbEJOO0FzRmpxbEJJO0VBQ0U7RUFHQTtFZHBVSTtBeEVzK2xCVjtBYWw5bEJJO0V5RTRTQTtJZGhVTTtFeEUwK2xCUjtBQUNGO0FzRjlwbEJJO0VBQ0U7QXRGZ3FsQk47QXNGM3BsQkU7RUFBeUI7QXRGOHBsQjNCOztBdUYzaG1CRTtFQUNFO0F2RjhobUJKO0F1RjNobUJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkY2aG1CSjtBdUYxaG1CRTtFQUNFO0VBTUE7RUFDQTtBdkZ1aG1CSjtBdUZwaG1CRTtFQUNFO0VBQ0E7QXZGc2htQko7QXVGbmhtQkU7RUFDRTtJQUNFO0V2RnFobUJKO0V1RmxobUJFO0lBQ0U7RXZGb2htQko7QUFDRjtBdUZqaG1CRTtFQUNFO0VBQ0E7RUFDQSxXL0VNSTtFK0VMSixtQi9FRGtCO0FSb2htQnRCO0F1RmpobUJJO0VBQ0U7RUFDQTtFQUNBO0F2Rm1obUJOO0F1RmhobUJJO0VBQ0UsbUIvRVZnQjtFK0VXaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkZraG1CTjtBdUYvZ21CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZGaWhtQk47QXVGL2dtQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RmlobUJSO0F1RjdnbUJJO0VBQ0U7RUFDQTtFQUNBO0F2RitnbUJOO0F1RjVnbUJJO0VBQ0U7QXZGOGdtQk47QXVGM2dtQkk7RUFDRTtFQUNBO0F2RjZnbUJOO0F1RjFnbUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0IvRXJERTtBUmlrbUJSO0F1RjFnbUJNOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0F2RjRnbUJSO0F1RnhnbUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RjBnbUJOO0F1RnZnbUJJO0VBQ0U7RUFDQSxnQi9FM0VFO0FSb2xtQlI7QXVGdGdtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVy9FcEZFO0UrRXFGRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2RndnbUJOO0F1RnRnbUJNO0VBQ0U7RUFDQTtFQUNBO0VmeEhBO0VlMEhBO0F2RndnbUJSO0FhNWxtQkk7RTBFK0VFO0lmckhFO0V4RXNvbUJOO0FBQ0Y7QWFqbW1CSTtFMEUrRUU7SWZySEU7RXhFMm9tQk47QUFDRjtBdUYvZ21CTTtFQUNFO0VBQ0E7RWYvSEE7RWVpSUE7QXZGaWhtQlI7QWE1bW1CSTtFMEV1RkU7SWY3SEU7RXhFc3BtQk47QUFDRjtBdUZuaG1CTTtFQUNFO0VBQ0EsVy9FNUdBO0UrRTZHQTtBdkZxaG1CUjtBdUZuaG1CUTtFQUNFLGdCL0VoSEY7RStFaUhFLGMvRTlISTtBUm1wbUJkO0F1RmhobUJJO0VBQ0U7SUFDRTtJQUNBO0V2RmtobUJOO0V1Ri9nbUJJO0lBQ0U7RXZGaWhtQk47RXVGOWdtQkk7SUFDRTtFdkZnaG1CTjtFdUY3Z21CSTtJQUNFO0V2RitnbUJOO0V1RjVnbUJJO0lBQ0U7RXZGOGdtQk47RXVGNWdtQk07SUFDRTtJZnRLRjtFeEVxcm1CTjtBQUNGO0FhaHBtQkk7RTBFK0hJO0lmcktBO0V4RTBybUJOO0FBQ0Y7QWFycG1CSTtFMEUrSEk7SWZyS0E7RXhFK3JtQk47QUFDRjtBdUZoam1CSTtFQTBCSTtJZjFLQTtJZTRLRTtFdkZ5aG1CUjtBQUNGO0FhaHFtQkk7RTBFb0lJO0lmMUtBO0V4RTBzbUJOO0FBQ0Y7QXVGMWhtQkk7RUFDRTtJQUNFO0V2RjRobUJOO0V1RnpobUJJO0lBQ0U7RXZGMmhtQk47QUFDRjtBdUZ2aG1CRTtFQUNFLG1CL0UvS1U7RStFZ0xWO0F2RnlobUJKO0F1RnZobUJJO0VBQ0U7RUFDQTtFQUNBO0F2RnlobUJOO0F1RnZobUJNO0VBTEY7SUFNSTtJQUNBO0V2RjBobUJOO0FBQ0Y7QXVGdmhtQkk7RUFDRTtBdkZ5aG1CTjtBdUZ0aG1CSTtFQUNFLGMvRTVMZ0I7QVJvdG1CdEI7QXVGcmhtQkk7RUFDRTtFQUNBO0VBQ0E7QXZGdWhtQk47QXVGcGhtQkk7RUFDRTtFQUNBO0F2RnNobUJOO0F1Rm5obUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZGcWhtQk47QXVGbmhtQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkZxaG1CUjtBdUZqaG1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxXL0V4TkU7RStFeU5GO0VBQ0E7QXZGbWhtQk47QXVGamhtQk07O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QXZGbWhtQlI7QXVGOWdtQkU7RUFDRTtFZi9PTTtBeEVnd21CVjtBYTV1bUJJO0UwRTBORjtJZjlPUTtFeEVvd21CUjtBQUNGO0F1Rm5obUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZGcWhtQk47QXVGbmhtQk07RUFORjtJQU9JO0lBQ0E7RXZGc2htQk47QUFDRjtBdUZwaG1CSTtFQUNJO0F2RnNobUJSO0F1RmxobUJFO0VBQ0U7RWZyUkk7QXhFMHltQlI7QWFwd21CSTtFMEU4T0Y7SWZwUk07RXhFOHltQk47QUFDRjtBYXp3bUJJO0UwRThPRjtJZnBSTTtFeEVtem1CTjtBQUNGOztBd0Y3MG1CQTtFQTZWRTtBeEZvL2xCRjtBd0YvMG1CRTtFQUNFO0F4RmkxbUJKO0F3RjkwbUJFO0VoQm1CTTtFZ0JqQko7QXhGZzFtQko7QWF6eG1CSTtFMkV6REY7SWhCbUJNO0V4RW0wbUJOO0FBQ0Y7QXdGbjFtQkU7RWhCZU07RWdCYkosb0doRm9FcUI7RWdGbkVyQjtBeEZxMW1CSjtBYW55bUJJO0UyRXJERjtJaEJlTTtFeEU2MG1CTjtBQUNGO0F3RngxbUJFO0VBQ0U7RUFDQSxjaEZzQlU7RWdFSUo7QXhFaTBtQlY7QWE3eW1CSTtFMkVoREY7SWhCNEJRO0V4RXEwbUJSO0FBQ0Y7QXdGNTFtQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEY4MW1CSjtBd0Y1MW1CSTtFQUNFO0VBQ0E7QXhGODFtQk47QXdGNTFtQk07RUFDRTtBeEY4MW1CUjtBd0YxMW1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCaEZFRTtFZ0ZERjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEY0MW1CTjtBd0Z6MW1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0JoRmJFO0VnRmNGLGNoRjNCUTtFZ0Y0QlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGMjFtQk47QXdGeDFtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RjAxbUJOO0F3RnYxbUJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGeTFtQk47QXdGdDFtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEZ3MW1CTjtBd0Z0MW1CTTtFQUNFO0VBQ0EsZ0JoRmpCVztBUnkybUJuQjtBd0ZwMW1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RnMxbUJOO0F3RnAxbUJNO0VBQ0U7RUFDQTtBeEZzMW1CUjtBd0ZsMW1CSTtFQUNFO0VBQ0E7QXhGbzFtQk47QXdGbDFtQk07RUFDRTtBeEZvMW1CUjtBd0YvMG1CRTtFQUNFO0F4RmkxbUJKO0F3RjkwbUJFO0VoQjNGUTtBeEU0Nm1CVjtBYXg1bUJJO0UyRXVFRjtJaEIzRlE7RXhFZzdtQlI7QUFDRjtBd0ZsMW1CRTtFQUNFO0F4Rm8xbUJKO0F3RmgxbUJJO0VBQ0U7RUFDQTtFQUNBO0F4RmsxbUJOO0F3RmgxbUJNO0VBQ0U7QXhGazFtQlI7QWEzNW1CSTtFMkV3RUU7SUFJSTtFeEZtMW1CUjtFd0ZqMW1CUTtJQUNFO0lBQ0E7RXhGbTFtQlY7RXdGajFtQlU7SUFDRTtFeEZtMW1CWjtFd0ZoMW1CVTtJQUNFO0lBQ0E7SUFDQTtFeEZrMW1CWjtFd0ZoMW1CWTtJQUNFO0V4RmsxbUJkO0V3Ri8wbUJZO0lBQ0U7SUFDQTtJQUNBO0loQm5JTjtFeEVxOW1CUjtBQUNGO0FhbDhtQkk7RTJFNEdVO0loQmhJSjtFeEUwOW1CUjtBQUNGO0F3RmgxbUJNO0VBQ0U7RWhCOUpBO0F4RWkvbUJSO0F3RmgxbUJRO0VBQ0U7QXhGazFtQlY7QXdGLzBtQlE7RUFDRTtBeEZpMW1CVjtBd0YvMG1CVTtFQUNFLGdCaEYzR087QVI0N21CbkI7QXdGMTBtQkU7RUFDRTtFaEIvSk07RWdCaUtOO0VBQ0E7RUFDQTtFQUNBO0VoQnBLTTtFQUFBO0VBQUE7QXhFbS9tQlY7QWEvOW1CSTtFMkUwSUY7SWhCOUpRO0V4RXUvbUJSO0FBQ0Y7QWFwK21CSTtFMkUwSUY7SWhCOUpRO0V4RTQvbUJSO0FBQ0Y7QWF6K21CSTtFMkUwSUY7SWhCOUpRO0V4RWlnbkJSO0FBQ0Y7QWE5K21CSTtFMkUwSUY7SWhCOUpRO0V4RXNnbkJSO0FBQ0Y7QXdGOTFtQkk7RUFDRTtFQUNBO0VoQjNLSTtFQUFBO0VnQjhLSjtFaEI5S0k7QXhFK2duQlY7QWEzL21CSTtFMkVxSkE7SWhCektNO0V4RW1obkJSO0FBQ0Y7QWFoZ25CSTtFMkVxSkE7SWhCektNO0V4RXdobkJSO0FBQ0Y7QWFyZ25CSTtFMkVxSkE7SWhCektNO0V4RTZobkJSO0FBQ0Y7QXdGNTJtQk07RUFDRTtFQUNBO0VBQ0E7QXhGODJtQlI7QXdGeDJtQk07RWhCM0xJO0VnQjZMRjtFQUNBLGNoRjVMYztFZ0Y2TGQ7RUFDQTtFQUNBO0VBQ0E7RWhCbE1FO0F4RTZpbkJWO0FhemhuQkk7RTJFdUtFO0loQjNMSTtFeEVpam5CUjtBQUNGO0FhOWhuQkk7RTJFdUtFO0loQjNMSTtFeEVzam5CUjtBQUNGO0F3RmgzbUJRO0VBQ0UseUJoRjdNSTtFZ0Y4TUosV2hGak1GO0VnRmtNRTtFaEIxTUE7QXhFNmpuQlY7QXdGLzJtQlE7RWhCOU1FO0VnQmdOQTtFQUNBO0F4RmkzbUJWO0FhOWluQkk7RTJFMExJO0loQjlNRTtFeEVza25CUjtBQUNGO0FhbmpuQkk7RTJFMExJO0loQjlNRTtFeEUya25CUjtBQUNGO0F3RngzbUJROztFQUVFLGNoRmhOSDtFZ0ZpTkcsZ0JoRjlLUztFZ0YrS1Q7QXhGMDNtQlY7QXdGdjNtQlE7RWhCM05FO0VnQjZOQTtBeEZ5M21CVjtBYWxrbkJJO0UyRXVNSTtJaEIzTkU7RXhFMGxuQlI7QUFDRjtBd0YzM21CUTtFQUNFO0F4RjYzbUJWO0F3RnozbUJNO0VBQ0U7QXhGMjNtQlI7QXdGeDNtQk07RUFDRSxrQmhGM0tRO0VnRjRLUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4RjAzbUJSO0F3RngzbUJRO0VBQ0UsY2hGaFBZO0FSMG1uQnRCO0F3RnYzbUJRO0VBQ0U7QXhGeTNtQlY7QXdGbDNtQlU7RUFDRTtFQUNBLGNoRjdQVTtBUmlubkJ0QjtBd0ZoM21CUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4RmszbUJWO0F3RmgzbUJVO0VBQ0U7QXhGazNtQlo7QXdGLzJtQlU7RWhCL1JGO0VnQmlTSTtFQUNBO0VBQ0EsY2hGdFJFO0VnRnVSRjtBeEZpM21CWjtBd0Y5Mm1CVTtFQUNFO0VBQ0E7QXhGZzNtQlo7QXdGOTJtQlk7RUFFRSxrQmhGNU5FO0FSMmtuQmhCO0F3RjEybUJZO0VoQmxUSjtBeEUrcG5CUjtBYXpubkJJO0UyRTRRUTtJaEJsVEo7RXhFbXFuQk47QUFDRjtBd0Z6Mm1CRTs7RUFFRTtFQUNBO0VBQ0E7RUFDQSxzQmhGdFNJO0VnRVJFO0F4RTBwbkJWO0FhdG9uQkk7RTJFcVJGOztJaEJ6U1E7RXhFK3BuQlI7QUFDRjtBd0Y3Mm1CRTtFQUNFO0VBQ0EseUJoRjVSTTtBUjJvbkJWO0F3RjcybUJFO0VBQ0UsZ0JoRmhUSTtFZ0ZpVEo7QXhGKzJtQko7QXdGNTJtQkU7RWZ0VUEsa0JBK0NrQjtFZXlSaEI7RUFDQTtFQUNBO0VBQ0Esa0JoRmxRWTtFZ0ZtUVo7RUFDQSx5SGhGN1JtQjtFZ0Y4Um5CLGdCaEZ6UmM7RWdFN0RWO0VBa0JFO0VnQnVVTixjaEZyVWtCO0FSbXJuQnRCO0FhanFuQkk7RTJFd1NGO0loQjlVTTtFeEUyc25CTjtBQUNGO0FhdHFuQkk7RTJFd1NGO0loQjVUUTtFeEU4cm5CUjtBQUNGO0F3RnQzbUJJO0VoQjNWSTtFZ0I2VkY7RUFDQTtFQUNBO0F4RnczbUJOO0FhanJuQkk7RTJFcVRBO0loQjNWSTtFeEUydG5CTjtBQUNGO0F3RjEzbUJJO0VBR0U7QXhGMDNtQk47QXdFcnJuQkk7RUFDRTtJZ0I4VEE7SUFDQSxxQmhGdFZnQjtJZ0Z1VmhCLGNoRnZWZ0I7RVJpdG5CcEI7QUFDRjtBd0ZuM21CRztFQUNDO0F4RnEzbUJKO0F3RnAzbUJRO0VBQ0Usa0JoRnJTTTtBUjJwbkJoQjtBd0ZqM21CRTtFQUNFO0VoQjFXTTtFQUFBO0F4RSt0bkJWO0FhM3NuQkk7RTJFcVZGO0loQnpXUTtFeEVtdW5CUjtBQUNGO0F3RnQzbUJJO0VBRUU7RUFFQTtFQUdBO0VoQnJYSTtBeEUwdW5CVjtBYXR0bkJJO0UyRTBWQTtJQVdJO0V4RnEzbUJOO0FBQ0Y7QWEzdG5CSTtFMkUwVkE7SUFnQkk7RXhGcTNtQk47QUFDRjtBYW50bkJJO0UyRWtXSTtJQUNFO0V4Rm8zbUJSO0FBQ0Y7QWFydW5CSTtFMkUwVkE7SWhCOVdNO0V4RTZ2bkJSO0FBQ0Y7QXdGNzJtQk07RUFDRTtBeEYrMm1CUjtBd0Y3Mm1CUTtFQUNFO0VBQ0E7RUFDQTtBeEYrMm1CVjtBd0Z4Mm1CTTtFaEI5Wkk7RUFBQTtFQUFBO0VnQmlhRjtFQUNBO0VBQ0E7QXhGMjJtQlI7QWExdm5CSTtFMkUwWUU7SWhCOVpJO0V4RWt4bkJSO0FBQ0Y7QWEvdm5CSTtFMkUwWUU7SWhCOVpJO0lBQUE7RXhFd3huQlI7QUFDRjtBd0ZoM21CTTtFQUNFO0VBQ0Esa0JoRjVXUTtBUjh0bkJoQjtBd0ZoM21CUTtFQUNFO0VBQ0E7RUFDQSxrQmhGalhNO0FSbXVuQmhCO0F3RjcybUJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhGKzJtQlI7QXdGNzJtQlE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEYrMm1CVjtBd0Y1Mm1CUTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCaEYzWU07RWdGNFlOO0F4RjgybUJWO0F3RjEybUJNO0VBQ0U7RUFDQTtBeEY0Mm1CUjtBYXp5bkJJO0UyRTJiRTtJQUtJO0V4RjYybUJSO0FBQ0Y7QXdGejJtQk07RUFDRTtFQUNBLGtCaEY1WlE7RWdGNlpSO0VBR0E7RUFDQTtBeEZ5Mm1CUjtBd0Z2Mm1CUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JoRnhhTTtBUml4bkJoQjtBd0ZsMm1CSTtFQUNFO0F4Rm8ybUJOO0F3RmwybUJNO0VBQ0U7QXhGbzJtQlI7QXdGaDJtQkk7RWhCdGZNO0F4RXkxbkJWO0FhcjBuQkk7RTJFa2VBO0loQnRmTTtFeEU2MW5CUjtBQUNGO0F3RnAybUJRO0VBQ0U7RUFDQTtBeEZzMm1CVjtBd0ZuMm1CWTtFQUNFO0VBQ0E7QXhGcTJtQmQ7QXdGMzFtQk07RUFDRTtFQUNBLHlCaEYzZ0JjO0FSdzJuQnRCO0F3RngxbUJFO0VBQ0U7QXhGMDFtQko7QXdGdDFtQkk7RUFDRSxnQmhGNWVhO0VnRjZlYjtBeEZ3MW1CTjtBd0Z0MW1CSTtFaEIzaEJNO0F4RW8zbkJWO0FhaDJuQkk7RTJFdWdCQTtJaEIzaEJNO0V4RXczbkJSO0FBQ0Y7QXdGMTFtQkk7RUFDRTtFaEJoaUJJO0VBQUE7QXhFODNuQlY7QWExMm5CSTtFMkUyZ0JBO0loQi9oQk07RXhFazRuQlI7QUFDRjtBYS8ybkJJO0UyRTJnQkE7SWhCL2hCTTtFeEV1NG5CUjtBQUNGO0F3RmwybUJNO0VBQ0U7QXhGbzJtQlI7QXdGaDJtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxnQmhGbmdCYTtBUnEybkJuQjtBd0YvMW1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGaTJtQk47QXdGOTFtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjaEZua0JRO0VnRm9rQlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEZnMm1CTjtBd0Y5MW1CTTtFQUNFO0F4RmcybUJSO0F3RjcxbUJNO0VBQ0U7QXhGKzFtQlI7QXdGMzFtQkk7RUFDRTtBeEY2MW1CTjtBd0Z6MW1CTTtFQUNFO0F4RjIxbUJSO0F3RnYxbUJRO0VBQ0U7QXhGeTFtQlY7QXdGdDFtQlE7RUFDRTtBeEZ3MW1CVjtBYXA1bkJJO0UyRWtrQkU7SUFDRTtFeEZxMW1CTjtFd0ZsMW1CSTtJQUNFO0V4Rm8xbUJOO0FBQ0Y7QXdGajFtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxjaEZybkJRO0FSdzhuQmQ7QXdGaDFtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxnQmhGM2tCYTtBUjY1bkJuQjtBd0YvMG1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQmhGcGxCYTtFZ0ZxbEJiLGtCaEZsa0JVO0VnRm1rQlYsc0JoRjFuQkU7QVIyOG5CUjtBd0YvMG1CTTtFQUNFO0VBQ0E7RUFDQSxjaEY1b0JNO0VnRjZvQk4sc0JoRmhvQkE7QVJpOW5CUjtBd0Y3MG1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQmhGdG1CYTtFZ0Z1bUJiLGtCaEZwbEJVO0VnRnFsQlYsc0JoRjVvQkU7QVIyOW5CUjtBd0Y3MG1CTTtFQUNFO0VBQ0E7RUFDQSxjaEY5cEJNO0VnRitwQk4sc0JoRmxwQkE7QVJpK25CUjtBd0YzMG1CSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQmhGeG5CYTtFZ0Z5bkJiLGtCaEZ0bUJVO0VnRnVtQlYsc0JoRjlwQkU7RWdGK3BCRjtFQUNBO0VBQ0E7RUFDQTtBeEY2MG1CTjtBd0YzMG1CTTtFQUNFO0VBQ0E7QXhGNjBtQlI7QXdGMTBtQk07RUFDRTtFQUNBO0VBQ0EsY2hGenJCTTtFZ0YwckJOLHNCaEY3cUJBO0FSeS9uQlI7QXdGeDBtQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JoRm5wQmE7RWdGb3BCYixrQmhGam9CVTtFZ0Zrb0JWLHNCaEZ6ckJFO0VnRjByQkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhGMDBtQk47QXdGeDBtQk07RUFDRTtFQUNBO0VBQ0E7QXhGMDBtQlI7QXdGdjBtQk07RUFDRTtBeEZ5MG1CUjtBd0Z0MG1CTTtFQUNFO0VBQ0E7RUFDQSxjaEY1dEJNO0VnRjZ0Qk4sc0JoRmh0QkE7QVJ3aG9CUjs7QXlGM2tvQkE7RUFtQkU7Ozs7O0tBQUE7RUFnaERBO0F6RmtqbEJGO0F5Rm5sb0JFO0VBQ0ksZ0JqRmdERTtBUnFpb0JSO0F5Rmxsb0JFO0VBQ0k7QXpGb2xvQk47QXlGamxvQkU7RUFDSTtFQUNBLGNqRmlDZ0I7QVJram9CdEI7QXlGaGxvQkU7RUFDSTtBekZrbG9CTjtBeUZ4a29CRTtFakJpQlE7QXhFMGpvQlY7QWF0aW9CSTtFNEVyQ0Y7SWpCaUJRO0V4RThqb0JSO0FBQ0Y7QXlGN2tvQkk7RUFDRTtBekYra29CTjtBeUY1a29CSTtFQUNFO0VBQ0E7QXpGOGtvQk47QXlGemtvQkU7RWpCR1E7QXhFeWtvQlY7QWFyam9CSTtFNEV2QkY7SWpCR1E7RXhFNmtvQlI7QUFDRjtBeUZ4a29CSTtFQUVFO0F6Rnlrb0JOO0F5RnRrb0JJO0VqQlhNO0VpQmFKLFNqRitFa0I7RWlGOUVsQjtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCakZPSTtBUmlrb0JWO0FhdGtvQkk7RTRFVEE7SWpCWE07RXhFOGxvQlI7QUFDRjtBeUZ4a29CRTtFQUNFO0F6RjBrb0JKO0FhamtvQkk7RTRFVkY7SUFJSTtFekYya29CSjtBQUNGO0F5RnZrb0JJO0VqQmhDTTtBeEUwbW9CVjtBYXRsb0JJO0U0RVlBO0lqQmhDTTtFeEU4bW9CUjtBQUNGO0F5Rnhrb0JJO0VBQ0U7RUFDQSxtQmxGaWR3QjtBUHlubkI5QjtBeUZ4a29CTTtFQUNFO0F6RjBrb0JSO0F5Rmprb0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2pGdkRjO0VpRndEZDtFQUNBO0VBQ0EsZ0JqRmZZO0VnRS9EWjtBeEVrcG9CUjtBYTVtb0JJO0U0RWlDRTtJakJ2RUU7RXhFc3BvQk47QUFDRjtBeUZya29CTTtFakJoRUk7RUFsQkY7QXhFMnBvQlI7QWFybm9CSTtFNEU0Q0U7SWpCaEVJO0V4RTZvb0JSO0FBQ0Y7QWExbm9CSTtFNEU0Q0U7SWpCbEZFO0V4RW9xb0JOO0FBQ0Y7QXlGL2tvQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Rmlsb0JWO0F5Ri9rb0JVO0VBQ0U7QXpGaWxvQlo7QXlGOWtvQlU7RUFDRTtBekZnbG9CWjtBeUY5a29CWTtFaEI1RlYsa0JBK0NrQjtFZ0JnRE47RWpCckZKO0VpQndGSTtFQUNBO0VBQ0E7QXpGOGtvQmQ7QWFwcG9CSTtFNEU4RFE7SWpCbEZGO0V4RTRxb0JSO0FBQ0Y7QXlGM2tvQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGNmtvQlo7QXlGM2tvQlk7RUFDRSxjakZoSEE7RWlGaUhBO0VBQ0E7RWpCL0hOO0VpQmlJTSxjakYvRFM7RWlGZ0VUO0VBQ0EsZ0JqRnhFSztBUnFwb0JuQjtBeUYxa29CWTtFakJ0SUo7RWlCd0lNLGNqRjNIQTtFaUY0SEE7RUFDQTtFQUNBLGdCakZoRks7RWlGaUZMO0VBQ0E7RUFDQTtBekY0a29CZDtBeUZwa29CRTtFakJ0Sk07RWlCd0pKLGNqRnBJa0I7QVIwc29CdEI7QXlGbGtvQkk7RUFDRTtBekZva29CTjtBeUYvam9CRTtFaEIxSkEsa0JBK0NrQjtFZ0JpSGhCO0VqQnRKTTtFaUIySk47Ozs7Ozs7Ozs7Ozs7SUFBQTtBekZ1a29CSjtBYTlzb0JJO0U0RTRIRjtJakJoSlE7RXhFc3VvQlI7QUFDRjtBeUY3am9CSTtFQUNFO0F6Ritqb0JOO0F5RjVqb0JJO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7QXpGd2pvQk47QWFsdW9CSTtFNEUwSkE7SWpCOUtNO0V4RTB2b0JSO0FBQ0Y7QXlGcGtvQk07RUFDRTtBekZza29CUjtBeUY5am9CTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQnZNRTtBeEV3d29CVjtBYXB2b0JJO0U0RTRLRTtJakJoTUk7RXhFNHdvQlI7QUFDRjtBeUZua29CUTtFQUNFO0F6RnFrb0JWO0F5Rmxrb0JRO0VBQ0U7RUFDQTtFQUNBLG9HakY1S2U7RWlGNktmO0VBRUE7QXpGbWtvQlY7QXlGamtvQlU7RUFDRTtBekZta29CWjtBeUZoa29CVTtFQUNFO0F6Rmtrb0JaO0F5Ri9qb0JVO0VBQ0U7QXpGaWtvQlo7QXlGN2pvQlE7RUFDRTtFQUNBO0VBQ0EsY2pGM09JO0VpRjRPSjtBekYram9CVjtBeUY3am9CVTtFQUNFLGNqRi9PRTtBUjh5b0JkO0F5RnRqb0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGd2pvQlI7QWEzeG9CSTtFNEUrTkU7SUFPSTtFekZ5am9CUjtBQUNGO0FhcHdvQkk7RTRFbU1FO0lBV0k7RXpGMGpvQlI7QUFDRjtBYXJ5b0JJO0U0RStORTtJQWVJO0V6RjJqb0JSO0FBQ0Y7QXlGempvQlE7RUFDRTtFQUNBO0F6RjJqb0JWO0F5Rm5qb0JJO0VBQ0U7QXpGcWpvQk47QXlGbmpvQk07RUFDRTtBekZxam9CUjtBYXZ5b0JJO0U0RThPQTtJQVFFO3VCQUFBO0V6RnNqb0JKO0FBQ0Y7QXlGbmpvQkk7RUFDRTtBekZxam9CTjtBeUZoam9CSTtFQU9FO0VBQ0E7RUFJQTtBekZ5aW9CTjtBeUZyaW9CTTtFQUNFO0VqQmxURTtFaUJvVEY7RUFDQSxrQmpGdFBRO0FSNnhvQmhCO0FheDBvQkk7RTRFNlJFO0lqQmpUSTtFeEVnMm9CUjtBQUNGO0F5Rnppb0JNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCakZ6VEE7RWlGMFRBLGtCakZuUVE7QVI4eW9CaEI7QXlGeGlvQk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGMGlvQlI7QXlGdmlvQk07RUFDRTtFQUNBO0F6Rnlpb0JSO0F5RnZpb0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGeWlvQlY7QXlGdGlvQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekZ3aW9CVjtBeUZyaW9CUTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGdWlvQlY7QXlGcGlvQlE7RUFDRSx5QmpGclZGO0FSMjNvQlI7QXlGbmlvQlE7RUFDRTtFQUNBO0F6RnFpb0JWO0F5Rmppb0JNO0VBRUU7QXpGa2lvQlI7QWFsNG9CSTtFNEVtV007SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6Rmtpb0JWO0V5Rmhpb0JVO0lBQ0U7RXpGa2lvQlo7QUFDRjtBeUY5aG9CUTs7RUFFRTtBekZnaW9CVjtBeUY5aG9CUTtFQUNFO0F6Rmdpb0JWO0F5Ri9ob0JVO0VBQ0U7RUFDQTtBekZpaW9CWjtBeUY3aG9CUTtFQUNFO0F6Ritob0JWO0F5RjFob0JNO0VBQ0U7RUFDQTtFQUNBLG1CakY5Wk07RWlGK1pOO0VBQ0E7QXpGNGhvQlI7QXlGMWhvQlE7RUFDRTtFQUNBLG1CakY3Wlk7RWlGOFpaO0F6RjRob0JWO0F5Rnhob0JNO0VqQnBhSTtBeEUrN29CVjtBYTM2b0JJO0U0RWdaRTtJakJwYUk7RXhFbThvQlI7QUFDRjtBeUY1aG9CTTtFQUNFO0F6Rjhob0JSO0FhdDZvQkk7RTRFMllNO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLG9CakZqWFk7SWlGa1haO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpGOGhvQlY7RXlGNWhvQlU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxtQmpGOWJRO0lpRitiUjtFekY4aG9CWjtFeUYzaG9CVTtJQUNFO0V6RjZob0JaO0V5RjFob0JVO0lBQ0U7RXpGNGhvQlo7RXlGeGhvQlE7SUFDRTtFekYwaG9CVjtBQUNGO0F5RnRob0JNOztFQUVFO0VBQ0E7QXpGd2hvQlI7QXlGdGhvQlE7O0VBQ0U7QXpGeWhvQlY7QWFqOW9CSTtFNEVnUUE7SUFzTUk7RXpGK2dvQk47QUFDRjtBeUY3Z29CTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6Ritnb0JSO0F5RjVnb0JNO0VBQ0U7RUFDQTtFQUNBO0F6Rjhnb0JSO0F5RjNnb0JNO0VBQ0U7QXpGNmdvQlI7QWFwK29CSTtFNEU0ZFE7SUFDRTtFekYyZ29CWjtBQUNGO0F5RnZnb0JRO0VoQjdnQk4sa0JBdUNrQjtFQWhDWjtFQVFFO0VnQmdnQkE7QXpGMmdvQlY7QXlGeGdvQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RjBnb0JWO0FhdC9vQkk7RTRFdWVJO0lBUUk7SUFDQTtFekYyZ29CVjtBQUNGO0F5Rnpnb0JVO0VBQ0U7RWpCcmhCRjtFQUFBO0F4RWtpcEJWO0FhOWdwQkk7RTRFZ2dCTTtJakJwaEJBO0V4RXNpcEJSO0FBQ0Y7QWFuaHBCSTtFNEVnZ0JNO0lqQnBoQkE7RXhFMmlwQlI7QUFDRjtBYXhocEJJO0U0RWdnQk07SWpCcGhCQTtFeEVnanBCUjtBQUNGO0FhN2hwQkk7RTRFZ2dCTTtJakJwaEJBO0V4RXFqcEJSO0FBQ0Y7QWFyaHBCSTtFNEVtZk07SUFNSTtJQUNBO0lBQ0E7SUFDQTtFekZnaW9CWjtBQUNGO0FhMWlwQkk7RTRFZ2dCTTtJQWFJO0V6Rmlpb0JaO0FBQ0Y7QXlGL2hvQlk7RWhCOWlCVixrQkErQ2tCO0VnQmlnQk47QXpGaWlvQmQ7QXlGcGhvQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekZzaG9CTjtBeUZwaG9CTTtFakJ6akJJO0F4RWdscEJWO0FhNWpwQkk7RTRFcWlCRTtJakJ6akJJO0V4RW9scEJSO0FBQ0Y7QXlGeGhvQk07RUFDRTtFakI5akJFO0VBQUE7QXhFMGxwQlY7QWF0a3BCSTtFNEV5aUJFO0lqQjdqQkk7SUFBQTtFeEUrbHBCUjtBQUNGO0FhNWtwQkk7RTRFeWlCRTtJakI3akJJO0lBQUE7RXhFcW1wQlI7QUFDRjtBeUZyaW9CUTtFQUNFLHFCakZoa0JZO0FSdW1wQnRCO0F5RnBpb0JRO0VqQnJrQkU7QXhFNG1wQlY7QWF4bHBCSTtFNEVpakJJO0lqQnJrQkU7RXhFZ25wQlI7QUFDRjtBYTdscEJJO0U0RWlqQkk7SWpCcmtCRTtFeEVxbnBCUjtBQUNGO0F5Rnppb0JJO0VqQjdrQk07RUFBQTtFaUJnbEJKO0VqQmhsQkk7RUFBQTtBeEU2bnBCVjtBYXptcEJJO0U0RXlqQkE7SWpCN2tCTTtFeEVpb3BCUjtBQUNGO0FhOW1wQkk7RTRFeWpCQTtJakI3a0JNO0V4RXNvcEJSO0FBQ0Y7QWFubnBCSTtFNEV5akJBO0lqQjdrQk07RXhFMm9wQlI7QUFDRjtBeUZ2am9CTTtFQUNFO0VqQnRsQkU7RUFBQTtFQUFBO0VBQUE7RUFBQTtBeEVvcHBCVjtBYWhvcEJJO0U0RWlrQkU7SWpCcmxCSTtJQUFBO0V4RXlwcEJSO0FBQ0Y7QWF0b3BCSTtFNEVpa0JFO0lqQnJsQkk7SUFBQTtFeEUrcHBCUjtBQUNGO0FhNW9wQkk7RTRFaWtCRTtJakJybEJJO0V4RW9xcEJSO0FBQ0Y7QWFqcHBCSTtFNEVpa0JFO0lqQnJsQkk7SUFBQTtFeEUwcXBCUjtBQUNGO0F5Rmpsb0JRO0VBQ0U7RUFDQTtBekZtbG9CVjtBeUZqbG9CUTtFakJobkJBO0VpQm1uQkUsZ0JqRnJqQlM7RWlGc2pCVDtFQUNBO0VBQ0E7RUFDQSxvR2pGaGtCZTtBUmtwcEJ6QjtBYW5xcEJJO0U0RTBrQkk7SWpCaG5CQTtFeEU2c3BCTjtBQUNGO0F5RnJsb0JRO0VBQ0Usa0JqRnppQk07RWlGMGlCTixnQmpGaGtCUztFaUZpa0JUO0VqQjFtQkE7RUFsQkY7QXhFcXRwQlI7QWEvcXBCSTtFNEVtbEJJO0lqQnZtQkU7RXhFdXNwQlI7QUFDRjtBYXBycEJJO0U0RW1sQkk7SWpCem5CQTtFeEU4dHBCTjtBQUNGO0F5Ri9sb0JRO0VqQmhvQkE7RWlCa29CRSxjakZybkJJO0VpRnNuQkosb0dqRjVrQmU7QVI2cXBCekI7QWE5cnBCSTtFNEUwbEJJO0lqQmhvQkE7RXhFd3VwQk47QUFDRjtBeUZubW9CUTtFQUNFLGNqRm5tQkU7RWdFcENKO0F4RTZ1cEJSO0F5Rmxtb0JRO0VqQnpuQkU7RUFsQkY7RWlCK29CRSxvR2pGeGxCZTtBUjJycEJ6QjtBYTVzcEJJO0U0RXFtQkk7SWpCem5CRTtFeEVvdXBCUjtBQUNGO0FhanRwQkk7RTRFcW1CSTtJakIzb0JBO0V4RTJ2cEJOO0FBQ0Y7QXlGM21vQlU7RUFDRTtBekY2bW9CWjtBeUYzbW9CWTtFQUNFLGNqRnhvQkE7RWlGeW9CQSxnQmpGeGxCSztBUnFzcEJuQjtBeUZ0bW9CWTtFQUNFO0F6Rndtb0JkO0F5RnRtb0JjO0VBQ0UsY2pGaG9CSjtFaUZpb0JJO0VBQ0E7RUFDQSxnQmxGakZjO0FQeXJvQjlCO0F5RnJtb0JjO0VBQ0UsY2pGcHBCTTtFaUZxcEJOLGdCakYzbUJHO0FSa3RwQm5CO0F5Rmxtb0JVO0VBQ0U7RUFDQSx5QmpGNXBCVTtFaUY2cEJWO0VqQmpyQko7RWlCbXJCSSxrQmpGbG1CSTtFaUZtbUJKLGdCakZ0bkJPO0VpRnVuQlA7RUFDQTtFQUNBO0F6Rm9tb0JaO0FhcnZwQkk7RTRFd29CTTtJakI5cUJGO0V4RSt4cEJOO0FBQ0Y7QXlGdG1vQlU7RUFDRTtFQUNBO0VBQ0EsV2pGbnFCSjtFaUZvcUJJLHlCakZocUJBO0VpRmlxQkE7RWpCL3JCSjtFaUJpc0JJLGtCakZobkJJO0VpRmluQkosZ0JqRnBvQk87RWlGcW9CUDtFQUNBO0VBQ0E7QXpGd21vQlo7QWF2d3BCSTtFNEVvcEJNO0lqQjFyQkY7RXhFaXpwQk47QUFDRjtBeUZ4bW9CUTtFQUVFLGNqRnZxQkE7RWdFckNGO0F4RXN6cEJSO0F5RnRtb0JRO0VqQjlyQkU7QXhFdXlwQlY7QWFueHBCSTtFNEUwcUJJO0lqQjlyQkU7RXhFMnlwQlI7QUFDRjtBeUYzbW9CVTtFakJudEJGO0F4RWkwcEJSO0FhM3hwQkk7RTRFNnFCTTtJakJudEJGO0V4RXEwcEJOO0FBQ0Y7QXlGL21vQlU7RUFDRTtBekZpbm9CWjtBeUY3bW9CUTtFakIxc0JFO0VBQUE7RUFBQTtFQUFBO0VBQUE7RWlCZ3RCQTtFQUNBO0F6Rittb0JWO0FhNXlwQkk7RTRFc3JCSTtJakIxc0JFO0V4RW8wcEJSO0FBQ0Y7QWFqenBCSTtFNEVzckJJO0lqQjFzQkU7RXhFeTBwQlI7QUFDRjtBYXR6cEJJO0U0RXNyQkk7SWpCMXNCRTtFeEU4MHBCUjtBQUNGO0FhM3pwQkk7RTRFc3JCSTtJakIxc0JFO0V4RW0xcEJSO0FBQ0Y7QWFoMHBCSTtFNEVzckJJO0lqQjFzQkU7RXhFdzFwQlI7QUFDRjtBeUZ0b29CVTtFQUNFO0VBQ0E7RWpCcnRCRjtBeEU4MXBCVjtBYTEwcEJJO0U0RStyQk07SWpCbnRCQTtFeEVrMnBCUjtBQUNGO0F5RjNvb0JZO0VBQ0U7QXpGNm9vQmQ7QXlGMW9vQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekY0b29CZDtBeUZ6b29CWTtFQUNFO0VBQ0E7RWpCdnZCTjtBeEVtNHBCUjtBYTcxcEJJO0U0RStzQlE7SWpCcnZCSjtFeEV1NHBCTjtBQUNGO0F5RjNvb0JRO0VBQ0U7RUFFQTtFQUVBO0F6RjJvb0JWO0F5Rnpvb0JVO0VBQ0U7RUFDQTtFQUNBO0F6RjJvb0JaO0F5Rnhvb0JVO0VBQ0U7QXpGMG9vQlo7QXlGdG9vQlE7RUFDRTtFQUNBO0VBQ0E7QXpGd29vQlY7QXlGdG9vQlU7RUFDRTtBekZ3b29CWjtBeUZwb29CUTtFakJ2d0JFO0VBQUE7RUFBQTtBeEVnNXBCVjtBYTUzcEJJO0U0RW12Qkk7SWpCdndCRTtFeEVvNXBCUjtBQUNGO0FhajRwQkk7RTRFbXZCSTtJakJ2d0JFO0V4RXk1cEJSO0FBQ0Y7QXlGNW9vQlU7RUFDRTtFQUNBLG9HakYzdUJhO0VnRXZEakI7RUFrQkU7RUFBQTtBeEVpNnBCVjtBYTc0cEJJO0U0RTB2Qk07SWpCOXdCQTtFeEVxNnBCUjtBQUNGO0F5Rmhwb0JVO0VBQ0UsZ0JqRjN1Qk87RWdFOURYO0F4RTQ3cEJSO0F5Ri9vb0JVO0VBQ0U7RUFDQTtFQUNBO0VqQjl4QkY7RUFBQTtFaUJpeUJFLG9HakY1dkJhO0VnRXZEakI7QXhFcThwQlI7QWEvNXBCSTtFNEV1d0JNO0lqQjN4QkE7RXhFdTdwQlI7QUFDRjtBYXA2cEJJO0U0RXV3Qk07SWpCM3hCQTtFeEU0N3BCUjtBQUNGO0FhejZwQkk7RTRFdXdCTTtJakI3eUJGO0V4RW05cEJOO0FBQ0Y7QXlGOXBvQlk7RUFDRSxnQmxGcE9nQjtFa0ZxT2hCO0VBQ0EsY2pGeHhCRjtBUnc3cEJaO0F5Rjdwb0JZO0VBRUUsY2pGMXlCUTtFaUYyeUJSLGdCakZqd0JLO0FSKzVwQm5CO0F5RjFwb0JVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQnZ6QkY7RUFBQTtBeEVxOXBCVjtBYWo4cEJJO0U0RTZ4Qk07SUFTSTtFekYrcG9CWjtBQUNGO0FhdDhwQkk7RTRFNnhCTTtJQWFJO0V6Rmdxb0JaO0FBQ0Y7QWEzOHBCSTtFNEU2eEJNO0lqQmp6QkE7RXhFbStwQlI7QUFDRjtBYWg5cEJJO0U0RTZ4Qk07SWpCanpCQTtFeEV3K3BCUjtBQUNGO0F5RnBxb0JZO0VBR0U7RUFDQTtFQUNBO0VBQ0E7QXpGb3FvQmQ7QXlGaHFvQmM7RUFDRTtFQUNBO0VBQ0E7QXpGa3FvQmhCO0F5Rjlwb0JnQjtFQUNFLHlCakZuMUJEO0VpRm8xQkM7RUFDQTtBekZncW9CbEI7QXlGOXBvQmtCO0VBQ0U7QXpGZ3FvQnBCO0F5RjNwb0JjO0VqQm4zQk47RWlCcTNCUSxvR2pGOXpCUztFaUYrekJULGNqRjkxQlQ7RWlGKzFCUztFQUNBO0F6RjZwb0JoQjtBYS8rcEJJO0U0RTYwQlU7SWpCbjNCTjtFeEV5aHFCTjtBQUNGO0F5Ri9wb0JjO0VoQm4zQlosa0JBK0NrQjtFZ0JzMEJKO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JqRmh6QkE7QVJpOXBCaEI7QXlGL3BvQmdCO0VBQ0U7RUFDQSxrQmpGcHpCRjtBUnE5cEJoQjtBd0VwZ3FCTTtFaUJ3MkJZO0F6Ritwb0JsQjtBd0V2Z3FCTTtFaUJ3MkJZO0F6Rmtxb0JsQjtBd0VsZ3FCSTtFQUNFO0lpQisxQlk7RXpGc3FvQmhCO0FBQ0Y7QXlGbnFvQmM7RUFDRSxXakZyM0JSO0VnRTFCQTtFaUJpNUJRLGdCakZuMUJHO0VpRm8xQkg7RUFDQSx5QmpGLzNCTTtFaUZnNEJOLGtCakZuMEJBO0VpRm8wQkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGcXFvQmhCO0F5Rm5xb0JnQjtFQUNFLHlCakZoNEJOO0FScWlxQlo7QXlGN3BvQlE7RWpCdDZCQTtBeEVza3FCUjtBeUY1cG9CUTtFQUNFO0VqQno1QkE7RUFBQTtBeEV5anFCVjtBYXJpcUJJO0U0RW80Qkk7SWpCeDVCRTtFeEU2anFCUjtBQUNGO0F5Rmhxb0JVO0VBQ0U7QXpGa3FvQlo7QXlGaHFvQlk7RUFDRTtFakJsNkJKO0F4RXFrcUJWO0FhampxQkk7RTRFNjRCUTtJakJqNkJGO0V4RXlrcUJSO0FBQ0Y7QXlGcHFvQmM7RUFDRTtFQUNBO0VBQ0E7QXpGc3FvQmhCO0F5Rm5xb0JjO0VBQ0U7QXpGcXFvQmhCO0F5Rmpxb0JZO0VBQ0U7RUFDQTtFakJuN0JKO0F4RXVscUJWO0FhbmtxQkk7RTRFNjVCUTtJakJqN0JGO0V4RTJscUJSO0FBQ0Y7QXlGdHFvQmM7RUFDRTtBekZ3cW9CaEI7QXlGcHFvQlk7RUFDRTtBekZzcW9CZDtBeUZscW9CVTtFQUNFO0VBQ0E7QXpGb3FvQlo7QXlGaHFvQlk7RUFDRTtBekZrcW9CZDtBeUYzcG9CWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGNnBvQmQ7QWE1bHFCSTtFNEUwN0JRO0lBUUk7RXpGOHBvQmQ7QUFDRjtBYWptcUJJO0U0RTA3QlE7SUFZSTtFekYrcG9CZDtBQUNGO0F5Rjdwb0JjO0VqQi8rQk47RWlCaS9CUTtFQUNBO0VBQ0Esa0JqRmw2QkE7RWlGbTZCQTtFQUNBO0VBQ0E7RUFDQSxjakZuK0JNO0VpRm8rQk47RUFDQTtFQUNBO0VBQ0EsZ0JqRjc3Qkc7QVI0bHFCbkI7QWFwbnFCSTtFNEV5OEJVO0lqQi8rQk47RXhFOHBxQk47QUFDRjtBeUYvcG9CZ0I7RUFDRSxxQmpGcC9CSjtBUnFwcUJkO0F5Rjlwb0JnQjtFQUNFO0VBQ0EseUJqRnovQko7RWlGMC9CSSxXakY3K0JWO0FSNm9xQlI7QXlGMXBvQlU7RWpCMy9CQTtBeEV3cHFCVjtBYXBvcUJJO0U0RXUrQk07SWpCMy9CQTtFeEU0cHFCUjtBQUNGO0F5Rjlwb0JZO0VBQ0UsY2pGcmdDQTtFaUZzZ0NBLGdCakZyOUJLO0VnRTlEWDtBeEVvcnFCUjtBeUY5cG9CYztFQUNFO0F6Rmdxb0JoQjtBeUY1cG9CWTtFQUNFO0VBQ0E7RUFDQTtFakI5aENOO0F4RTZycUJSO0F5RjVwb0JjO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmpGcGdDTjtFaUZxZ0NNLGtCakZ6OUJBO0VpRjA5QkE7RUFDQTtBekY4cG9CaEI7QXlGNXBvQmdCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JqRnArQkY7RWlGcStCRSxtQmpGbGlDSTtFaUZtaUNKO0VBQ0E7QXpGOHBvQmxCO0F5RjFwb0JrQjtFQUNFO0F6RjRwb0JwQjtBeUZ2cG9CYztFQUNFLGdCakZyZ0NHO0VpRnNnQ0g7RUFDQTtBekZ5cG9CaEI7QXlGcnBvQlk7RUFDRSxjakZ0akNRO0VpRnVqQ1I7RUFDQSxnQmpGamhDSztFaUZraENMO0VBQ0E7QXpGdXBvQmQ7QXlGbnBvQlU7RUFDRTtFQUNBLGdCakZ6aENPO0VpRjBoQ1A7RWpCcmxDSjtBeEUydXFCUjtBYXJzcUJJO0U0RTRpQ007SWpCbGxDRjtFeEUrdXFCTjtBQUNGO0F5RnZwb0JVO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQmhsQ0Y7QXhFMHVxQlY7QWF0dHFCSTtFNEVtakNNO0lqQnZrQ0E7RXhFOHVxQlI7QUFDRjtBeUY1cG9CWTs7RUFFRTtBekY4cG9CZDtBeUYzcG9CWTs7RUFFRTtFQUNBO0VBQ0E7QXpGNnBvQmQ7QXlGMXBvQlk7RUFDRSxjakY5bENRO0VpRitsQ1I7RUFDQTtBekY0cG9CZDtBeUYxcG9CYztFQUNFO0VBQ0E7QXpGNHBvQmhCO0F5Rnhwb0JZO0VBQ0U7RUFDQTtBekYwcG9CZDtBeUZocG9CWTtFQUNFO0VBQ0E7QXpGa3BvQmQ7QXlGN29vQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekYrb29CWjtBeUY3b29CWTtFQUNFO0F6Ritvb0JkO0F5RjVvb0JZO0VBQ0U7RUFDQTtFQUNBO0F6Rjhvb0JkO0FhN3dxQkk7RTRFb29DUTtJQUNFO0V6RjRvb0JaO0FBQ0Y7QXlGem9vQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGMm9vQlo7QXlGem9vQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekYyb29CZDtBeUZ4b29CWTtFQUNFO0VBQ0E7QXpGMG9vQmQ7QXlGdm9vQlk7RUFDRSxnQmpGNW9DSztFaUY4b0NMO0VBQ0E7RUFDQTtBekZ3b29CZDtBYWh6cUJJO0U0RW1xQ1E7SWpCenNDSjtFeEUwMXFCTjtBQUNGO0FhcnpxQkk7RTRFbXFDUTtJakJ6c0NKO0V4RSsxcUJOO0FBQ0Y7QXlGL29vQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekZpcG9CZDtBeUYvb29CYztFQUNFO0VBQ0E7QXpGaXBvQmhCO0F5Rjdvb0JZO0VBQ0U7RUFDQTtFQUNBO0F6Ritvb0JkO0F5RjVvb0JZO0VBQ0UsZ0JqRnRxQ0s7RWlGd3FDTDtBekY2b29CZDtBYTcwcUJJO0U0RTZyQ1E7SWpCbnVDSjtFeEV1M3FCTjtBQUNGO0FhbDFxQkk7RTRFNnJDUTtJakJudUNKO0V4RTQzcUJOO0FBQ0Y7QXlGcHBvQlk7RUFDRTtFQUNBO0F6RnNwb0JkO0F5Rm5wb0JZO0VBQ0U7RUFDQTtFQUNBO0F6RnFwb0JkO0FhbjFxQkk7RTRFbXNDUTtJQUNFO0V6Rm1wb0JaO0FBQ0Y7QXlGaHBvQlU7O0VqQnp1Q0E7QXhFNjNxQlY7QWF6MnFCSTtFNEVxdENNOztJakJ6dUNBO0V4RWs0cUJSO0FBQ0Y7QXlGdnBvQlk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RWpCaHZDSjtFaUJrdkNJO0VBQ0EsZ0JqRnhzQ0k7RWlGeXNDSjtFQUNBLHFCakYxdkNBO0VpRjJ2Q0EsY2pGcHZDUTtFZ0VwQmQ7QXhFbTZxQlI7QWE3M3FCSTtFNEV3dENROztJakI1dUNGO0V4RXM1cUJSO0FBQ0Y7QWFuNHFCSTtFNEV3dENROztJakI5dkNKO0V4RTg2cUJOO0FBQ0Y7QXlGcHFvQmM7O0VBQ0U7RUFDQSxnQmpGaHRDRTtBUnUzcUJsQjtBeUZwcW9CYzs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFakJsd0NOO0VBQUE7QXhFMjZxQlY7QWF2NXFCSTtFNEUwdUNVOztJakI5dkNKO0lBQUE7RXhFaTdxQlI7QUFDRjtBeUY3cW9CZ0I7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXpGZ3JvQmxCO0F5Rjdxb0JnQjs7RUFDRTtBekZncm9CbEI7QXlGN3FvQmdCOztFQUNFO0VBQ0EsV2pGMXdDVjtFaUYyd0NVO0VBQ0E7QXpGZ3JvQmxCO0F5RjVxb0JjOztFQUNFLHlCakY3eENGO0VpRjh4Q0UscUJqRjl4Q0Y7QVI2OHFCZDtBeUYzcW9CYzs7RUFDRSx5QmpGN3hDTTtFaUY4eENOLHFCakY5eENNO0VpRit4Q047QXpGOHFvQmhCO0F5RjVxb0JnQjs7RUFDRSxXakY1eENWO0FSMjhxQlI7QXlGNXFvQmdCOztFQUNFO0F6Ritxb0JsQjtBeUY1cW9CZ0I7O0VBQ0U7QXpGK3FvQmxCO0F5RjVxb0JnQjs7RUFDRTtFQUNBLHFCakYveUNJO0FSODlxQnRCO0F5Rjlxb0JrQjs7RUFDRTtBekZpcm9CcEI7QXlGdHFvQlE7RWpCOXpDRTtBeEV1K3FCVjtBYW45cUJJO0U0RTB5Q0k7SWpCOXpDRTtFeEUyK3FCUjtBQUNGO0FheDlxQkk7RTRFMHlDSTtJakI5ekNFO0V4RWcvcUJSO0FBQ0Y7QXlGaHJvQlU7RUFDRTtFQUNBO0VqQm4wQ0Y7QXhFcy9xQlY7QWFsK3FCSTtFNEU2eUNNO0lqQmowQ0E7RXhFMC9xQlI7QUFDRjtBeUZycm9CWTtFQUNFO0F6RnVyb0JkO0F5RnJyb0JjO0VBQ0U7QXpGdXJvQmhCO0F5Rm5yb0JZO0VBQ0UsYWpGdHRDZTtBUjI0cUI3QjtBeUZscm9CWTtFQUNFO0F6Rm9yb0JkO0F5Rmpyb0JZO0VBQ0U7QXpGbXJvQmQ7QXlGaHJvQlk7RUFDRTtFQUNBO0VBQ0E7QXpGa3JvQmQ7QXlGL3FvQlk7RUFDRSxhakZ4dUNlO0VnRTNJckI7RUFrQkU7RUFBQTtFaUJxMkNJO0VBQ0E7RUFDQTtFQUNBLGdCakY1ekNLO0VpRjZ6Q0w7RUFDQSxvR2pGcjBDVztFaUZzMENYO0VBQ0E7QXpGaXJvQmQ7QWF6Z3JCSTtFNEU0MENRO0lqQmwzQ0o7RXhFbWpyQk47QUFDRjtBeUZwcm9CYztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpGc3JvQmhCO0F5RnByb0JnQjtFQUNFO0VBQ0E7RUFDQTtBekZzcm9CbEI7QXlGbnJvQmdCO0VBQ0U7QXpGcXJvQmxCO0F5Rmpyb0JjO0VBQ0U7QXpGbXJvQmhCO0F5RjVxb0JjO0VBQ0U7QXpGOHFvQmhCO0F5Rnpxb0JnQjtFQUNFO0F6RjJxb0JsQjtBeUZ4cW9CZ0I7RUFDRTtBekYwcW9CbEI7QXlGcHFvQlk7RUFDRTtBekZzcW9CZDtBeUYvcG9CVTtFQUNFO0VqQnA3Q0o7QXhFc2xyQlI7QWFuaXJCSTtFNEVzNENRO0lBQ0U7RXpGZ3FvQlo7QUFDRjtBeUZwcG9CSTtFQUNFO0VBQ0E7QXpGc3BvQk47QXlGbHBvQkU7RWpCMzdDUTtFQWxCRjtBeEVtbXJCUjtBYTdqckJJO0U0RXU2Q0Y7SWpCMzdDUTtFeEVxbHJCUjtBQUNGO0FhbGtyQkk7RTRFdTZDRjtJakI3OENNO0V4RTRtckJOO0FBQ0Y7QXlGM3BvQkU7O0VBRUU7QXpGNnBvQko7QXlGenBvQkU7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0F6RjJwb0JKO0F5Rnhwb0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekYwcG9CSjtBeUZ2cG9CRTs7RUFHRTtBekZ3cG9CSjtBeUZwcG9CRTtFQUNFO0F6RnNwb0JKO0F5Rm5wb0JFO0VBQ0U7QXpGcXBvQko7QXlGbnBvQkk7RUFDRTtBekZxcG9CTjtBeUZqcG9CRTtFQUNFO0VBQ0E7QXpGbXBvQko7QXlGL29vQkU7RUFDRTtFQUNBO0F6Rmlwb0JKO0F5Rjlvb0JFO0VBQ0U7RUFDQTtBekZncG9CSjtBeUY3b29CRTtFQUNFO0VBQ0E7QXpGK29vQko7QXlGNW9vQkU7RUFDRTtFQUNBO0F6Rjhvb0JKOztBMEZqc3JCRTtFQUNFO0lBQ0U7RTFGb3NyQko7QUFDRjtBMEYvcnJCSTtFQUNFO0VsQmdDSTtFQUFBO0F4RW1xckJWO0FhL29yQkk7RTZFckRBO0lsQmlDTTtFeEV1cXJCUjtBQUNGO0FhcHByQkk7RTZFckRBO0lsQmlDTTtFeEU0cXJCUjtBQUNGO0EwRnpzckJNO0VBQ0UsY2xGNkJjO0VrRjVCZDtFbEIwQkU7RUFsQkY7RWtCTEEsZ0JsRm1FVztBUndvckJuQjtBYWhxckJJO0U2RWhERTtJbEI0Qkk7RXhFd3JyQlI7QUFDRjtBYXJxckJJO0U2RWhERTtJbEJVRTtFeEUrc3JCTjtBQUNGO0EwRm50ckJNO0VsQnFCSTtFa0JqQkYsa0JsRmdGUTtFa0YvRVI7O0lBQUE7QTFGcXRyQlI7QWFqcnJCSTtFNkV6Q0U7SWxCcUJJO0V4RXlzckJSO0FBQ0Y7QTBGdnRyQlE7RUFDRSxzQmxGb0JGO0VrRm5CRSxrQmxGMEVNO0VrRnpFTjtFbEJVQTtBeEVndHJCVjtBYTVyckJJO0U2RWpDSTtJbEJhRTtFeEVvdHJCUjtBQUNGO0EwRjV0ckJRO0VBQ0Usc0JsRmNGO0VrRmJFLGtCbEZvRU07RWdFL0ROO0F4RTB0ckJWO0FhdHNyQkk7RTZFM0JJO0lsQk9FO0V4RTh0ckJSO0FBQ0Y7QTBGanVyQlE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUZtdXJCVjtBMEZodXJCUTtFQUNFO0VBQ0E7QTFGa3VyQlY7QTBGL3RyQlE7RWxCVkU7RUFsQkY7RWtCK0JFLGNsRmxCSTtFa0ZtQkosb0dsRnVCZTtFa0Z0QmY7QTFGaXVyQlY7QWE1dHJCSTtFNkVWSTtJbEJWRTtFeEVvdnJCUjtBQUNGO0FhanVyQkk7RTZFVkk7SWxCNUJBO0V4RTJ3ckJOO0FBQ0Y7QTBGeHVyQlE7O0VBRUUsZ0JsRndCUztFa0Z2QlQ7RUFDQTtFQUNBO0VBQ0EsY2xGN0JJO0VrRjhCSixvR2xGWWU7QVI4dHJCekI7QTBGenVyQlU7O0VBQ0U7QTFGNHVyQlo7QTBGeHVyQlE7RUFDRTtFQUNBO0VBQ0E7QTFGMHVyQlY7QTBGeHVyQlU7RUFDRTtBMUYwdXJCWjtBMEZ0dXJCUTtFQUNFO0VBQ0E7RUFDQTtFbEI1Q0E7RWtCOENBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUZ3dXJCVjtBYXZ3ckJJO0U2RXFCSTtJbEJ6Q0U7RXhFK3hyQlI7QUFDRjtBMEYzdXJCVTtFQUNFO0ExRjZ1ckJaO0EwRjF1ckJVO0VBQ0U7QTFGNHVyQlo7QTBGeHVyQlE7RWxCOURFO0F4RXl5ckJWO0FhcnhyQkk7RTZFMENJO0lsQjlERTtFeEU2eXJCUjtBQUNGO0EwRjV1ckJVO0VBQ0U7RUFDQTtBMUY4dXJCWjtBMEYxdXJCWTtFQUNFLGtCbEZWRTtFa0ZXRjtFQUNBO0VBQ0EsY2xGMUVRO0VnRXBCZDtBeEUyMHJCUjtBYXJ5ckJJO0U2RW9EUTtJbEIxRko7RXhFKzByQk47QUFDRjtBMEYvdXJCWTtFQUNFLGtCbEZqQkU7RWtGa0JGO0ExRml2ckJkO0EwRi91ckJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY2xGckZRO0FSczByQnRCO0EwRi91ckJZO0VBQ0U7RUFDQSxjbEZoR0E7QVJpMXJCZDtBMEY5dXJCWTtFbEI5RkY7RUFsQkY7RWtCbUhNLGtCbEZsQ0U7QVJreHJCaEI7QWE3enJCSTtFNkUwRVE7SWxCOUZGO0V4RXExckJSO0FBQ0Y7QWFsMHJCSTtFNkUwRVE7SWxCaEhKO0V4RTQyckJOO0FBQ0Y7QTBGcHZyQlU7RUFDRTtBMUZzdnJCWjtBMEZwdnJCWTtFQUNFO0ExRnN2ckJkO0EwRi91ckJRO0VsQmxIRTtFa0JvSEE7RUFDQTtFQUNBLGtCbEZ2RE07QVJ3eXJCaEI7QWFuMXJCSTtFNkU4Rkk7SWxCbEhFO0V4RTIyckJSO0FBQ0Y7QTBGcnZyQlU7RUFDRTtBMUZ1dnJCWjtBMEZ0dnJCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGdCbEZqRks7RWtGa0ZMLGNsRm5JQTtFa0ZvSUE7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQmxGcEVFO0VrRnFFRjtFbEJ0Sk47QXhFKzRyQlI7QWF6MnJCSTtFNkVxR1E7SWxCM0lKO0V4RW01ckJOO0FBQ0Y7QTBGNXZyQmM7RUFFRSxtQmxGN0lGO0VrRjhJRSxXbEZqSVI7QVI4M3JCUjtBMEZudnJCRTtFQUdBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBMUZpdnJCRjtBMEZ0dXJCSTtFQUNFLHNCbEZqS0U7QVJ5NHJCUjtBMEZ2dXJCTTtFbEIxS0k7RWtCNEtGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFGeXVyQlI7QWFyNHJCSTtFNkVzSkU7SWxCMUtJO0V4RTY1ckJSO0FBQ0Y7QTBGN3VyQlE7RUFDRSxjbEZoTFk7RWtGaUxaO0ExRit1ckJWO0EwRjd1ckJRO0VsQnJMRTtFQUFBO0VrQjJMQTtBMUY0dXJCVjtBYW41ckJJO0U2RWlLSTtJbEJyTEU7RXhFMjZyQlI7QUFDRjtBYXg1ckJJO0U2RWlLSTtJbEJyTEU7RXhFZzdyQlI7QUFDRjtBMEZudnJCUTtFQUNFO0VBQ0E7RUFDQSxjbEYvTFk7RWtGZ01aO0ExRnF2ckJWOztBMEYvdXJCQTtFQUNFO0lBR0U7RTFGZ3ZyQkY7RTBGOXVyQkE7SUFDRTtFMUZndnJCRjtFMEY5dXJCQTtJQUNFO0UxRmd2ckJGO0UwRjl1ckJBO0lBQ0U7RTFGZ3ZyQkY7RTBGOXVyQkE7SUFDRTtFMUZndnJCRjtFMEY5dXJCQTtJQUNFO0UxRmd2ckJGO0UwRjl1ckJBO0lBQ0U7RTFGZ3ZyQkY7QUFDRjtBMEY3dXJCQTtFQUNFO0lBQ0U7RTFGK3VyQkY7QUFDRjtBMkYxL3JCSTtFQUNFO0EzRjQvckJOO0EyRngvckJFO0VBQ0U7QTNGMC9yQko7QTJGci9yQk07RW5CU0U7RW1CUEE7RUFDQSxnQm5Gb0VXO0VtRm5FWCxjbkZ5QmM7QVI4OXJCdEI7QTJGMStyQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRjQrckJKO0EyRnorckJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJuRk5rQjtFbUZPbEI7QTNGMityQko7QTJGeCtyQkU7RUFDRTtJQUNFO0UzRjArckJKO0FBQ0Y7QTJGdCtyQkk7RUFDQTtFbkJwQk07RW1Cc0JOO0VBQ0E7RUFDQTtFbkIxQ0k7QXhFbWhzQlI7QWE3K3JCSTtFOEVEQTtJbkJuQk07RXhFcWdzQlI7QUFDRjtBYWwvckJJO0U4RURBO0luQnJDSTtFeEU0aHNCTjtBQUNGOztBMkY1K3JCQTtFQUNFO0lBQ0U7RTNGKytyQkY7RTJGNStyQkE7SUFDRTtFM0Y4K3JCRjtBQUNGO0EyRjMrckJBO0VBRUk7SUFDRTtJQUNBO0UzRjQrckJKO0FBQ0Y7QTJGeCtyQkE7RUFDRTtFQUVBOztHQUFBO0EzRjIrckJGO0EyRngrckJFO0VBQ0U7QTNGMCtyQko7QTJGdityQkU7RW5CNURRO0F4RXNpc0JWO0FhbGhzQkk7RThFd0NGO0luQjVEUTtFeEUwaXNCUjtBQUNGO0FhdmhzQkk7RThFd0NGO0luQjVEUTtFeEUraXNCUjtBQUNGO0FhNWhzQkk7RThFd0NGO0luQjVEUTtFeEVvanNCUjtBQUNGO0FhamlzQkk7RThFd0NGO0luQjVEUTtFeEV5anNCUjtBQUNGO0FhdGlzQkk7RThFd0NGO0luQjVEUTtFeEU4anNCUjtBQUNGO0EyRi8vckJFO0VBQ0U7RUFDQTtFQUNBO0VuQm5FTTtBeEVxa3NCVjtBYWpqc0JJO0U4RTRDRjtJbkJoRVE7RXhFeWtzQlI7QUFDRjtBMkZuZ3NCSTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0Esb0duRnhDbUI7RW1GeUNuQixjbkY1RWdCO0FSZ2xzQnRCO0EyRmxnc0JNO0VBS0U7aURBQUE7RUFFQSx5Qm5GckZjO0VtRnNGZCxXbkZoRkE7QVJnbHNCUjtBMkY5L3JCUTtFQUNFLGdCbkYvQ1M7QVIraXNCbkI7QTJGMy9yQlU7RUFDRSxzQkE1SWU7QTNGeW9zQjNCO0EyRngvckJNO0VBQ0U7RUFDQTtFbkIxSEE7RW1CNEhBLGdCcEZ1ZHNCO0VvRnRkdEI7RW5CM0dFO0F4RXNtc0JWO0FhbGxzQkk7RThFa0ZFO0luQnhIRTtFeEU0bnNCTjtBQUNGO0FhdmxzQkk7RThFa0ZFO0luQnRHSTtFeEUrbXNCUjtBQUNGO0EyRmxnc0JRO0VBQ0U7QTNGb2dzQlY7QTJGbGdzQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0ZvZ3NCWjtBMkZyL3JCRTtFQWtIRTs7MERBQUE7QTNGdzRyQko7QTJGdi9yQk07RUFDRTtFQUNBLGdCbkZuR1c7RW1Gb0dYO0EzRnkvckJSO0EyRnQvckJNO0VBQ0U7QTNGdy9yQlI7QTJGcC9yQk07RUFDRTtFQUNBO0EzRnMvckJSO0EyRm4vckJRO0VBQ0U7QTNGcS9yQlY7QTJGai9yQlE7RUFDRTtFQUNBO0VBQ0E7RW5CcktBO0VtQnVLQTtFQUNBO0VBQ0Esa0JuRjFHTTtFbUYyR047RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQm5GdEtGO0FSeXBzQlI7QWE3b3NCSTtFOEU4SUk7SW5CbEtFO0V4RXFxc0JSO0FBQ0Y7QTJGdC9yQlU7RUFDRTtFQUNBO0EzRncvckJaO0EyRnQvckJZOztFQUVFO0VBQ0E7RUFDQSxjbkZ0TFE7RW1GdUxSO0EzRncvckJkO0EyRnAvckJVO0VBQ0U7RUFDQTtFQUNBLGNuRnJNRTtBUjJyc0JkO0EyRm4vckJVO0VBQ0U7RUFDQSxjbkYvTEw7QVJvcnNCUDtBMkZqL3JCVTtFQUNFLHFCbkZ4TVU7QVIycnNCdEI7QTJGOStyQlE7RUFDRSxxQm5GOU1ZO0VtRitNWixzQm5Gek1GO0VtRjBNRTtBM0ZnL3JCVjtBMkZ4K3JCTTtFQUNFO0VBQ0E7RUFDQSxpQm5GMUtXO0FSb3BzQm5CO0EyRnYrckJNO0VBQ0U7QTNGeStyQlI7QTJGdCtyQk07RW5CcE9JO0VtQnNPRixzQm5GOU5BO0VtRitOQTtFQUNBLGtCbkZ6S1E7QVJpcHNCaEI7QWE1cnNCSTtFOEVnTkU7SW5CcE9JO0V4RW90c0JSO0FBQ0Y7QTJGMytyQlE7RUFDRTtFQUNBO0EzRjYrckJWO0EyRjErckJRO0VBQ0U7RUFDQTtFQUNBLGdCbkZ0TVM7QVJrcnNCbkI7QTJGeityQlE7RUFDRTtBM0YyK3JCVjtBMkZsK3JCSTtFbkIvUE07RUFBQTtBeEVxdXNCVjtBYWp0c0JJO0U4RTJPQTtJbkIvUE07RXhFeXVzQlI7QUFDRjtBYXR0c0JJO0U4RTJPQTtJbkIvUE07RXhFOHVzQlI7QUFDRjtBMkY1K3JCTTtFQUNFO0VBQ0E7RW5CclFFO0VBQUE7QXhFcXZzQlY7QWFqdXNCSTtFOEUrT0U7SW5CblFJO0V4RXl2c0JSO0FBQ0Y7QWF0dXNCSTtFOEUrT0U7SW5CblFJO0V4RTh2c0JSO0FBQ0Y7QTJGdC9yQlE7RUFDRSxrQm5GM01NO0VnRWpGUjtFQWtCRTtFbUI2UUEsb0duRnhPZTtFbUZ5T2Ysc0JuRnRRRjtBUjh2c0JSO0FhbHZzQkk7RThFcVBJO0luQjNSQTtFeEU0eHNCTjtBQUNGO0EyRjMvckJVO0VBRUU7RW5CcFNKO0VtQnNTSTtFQUNBO0VBQ0EsY25GcFJVO0VtRnFSVixvR25GbFBhO0VtRm1QYjtBM0Y0L3JCWjtBYWh3c0JJO0U4RTRQTTtJbkJoUkE7RXhFd3hzQlI7QUFDRjtBYXJ3c0JJO0U4RTRQTTtJbkJsU0Y7RXhFK3lzQk47QUFDRjtBMkZuZ3NCVTtFQUNFO0EzRnFnc0JaO0EyRmxnc0JVO0VBQ0UsY25GOVJVO0VnRXBCZDtFbUJvVEksZ0JuRnRQTztBUjB2c0JuQjtBYWx4c0JJO0U4RTJRTTtJbkJqVEY7RXhFNHpzQk47QUFDRjtBMkZsZ3NCVTtFQUNFO0EzRm9nc0JaO0EyRmxnc0JZO0VBQ0U7RUFDQTtFQUNBLHNCbkZ2U047RW1Gd1NNLGtCbkZqUEU7QVJxdnNCaEI7QTJGamdzQlk7RUFDRTtFQUNBO0VBQ0E7QTNGbWdzQmQ7QTJGaGdzQlk7RUFDRSxjbkZwVFA7RW1GcVRPLGdCcEZzUWdCO0VvRnJRaEI7RW5COVVOO0F4RWkxc0JSO0EyRi8vckJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJuRnhVQTtFbUZ5VUEsa0JuRnRRRTtFbUZ1UUY7QTNGaWdzQmQ7QTJGOS9yQlk7RUFDRTtFQUNBLHlCbkZ6VVE7RW1GMFVSLGtCbkY3UUU7RW1GOFFGO0EzRmdnc0JkO0EyRjcvckJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtCbkZ2UkU7RW1Gd1JGLHNCbkYvVU47RW1GZ1ZNO0VBQ0EsY25GOVZBO0VtRitWQTtFQUNBO0VBQ0E7QTNGKy9yQmQ7QTJGNS9yQlk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRjgvckJkO0EyRjEvckJjO0VBQ0U7QTNGNC9yQmhCO0EyRngvckJZO0VBQ0U7RUFDQSxjbkZ2WEE7RW1Gd1hBLGdCcEY4TWdCO0FQNHlyQjlCO0EyRnYvckJZO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z5L3JCZDtBMkZ0L3JCWTtFQUNFO0VBQ0EsY25GOVhRO0FSczNzQnRCO0EyRnAvckJVO0VuQnBZQTtFQUFBO0VtQnNZRTtFQUNBO0EzRnUvckJaO0EyRnIvckJZO0VBRUU7QTNGcy9yQmQ7QTJGbi9yQmM7RUFDRTtFbEJ6WmQsa0JBK0NrQjtFa0I0V0o7RW5CalpOO0VtQm1aTTtFQUNBO0VBQ0E7RUFDQTtBM0ZxL3JCaEI7QWF2M3NCSTtFOEUwWFU7SW5COVlKO0V4RSs0c0JSO0FBQ0Y7QTJGdi9yQmM7RW5CelpKO0VtQjJaTTtFQUNBO0EzRnkvckJoQjtBMkZyL3JCWTtFbkJoYUY7RUFBQTtFbUJtYUksY25GeGFBO0VnRWJOO0VBa0JFO0VtQnNhSTtFQUNBLG9HbkZsWVc7RW1GbVlYLGdCbkYvWEs7QVJzM3NCbkI7QWEzNHNCSTtFOEU0WVE7SW5CaGFGO0V4RW02c0JSO0FBQ0Y7QWFoNXNCSTtFOEU0WVE7SW5CaGFGO0V4RXc2c0JSO0FBQ0Y7QWFyNXNCSTtFOEU0WVE7SW5CaGFGO0V4RTY2c0JSO0FBQ0Y7QWExNXNCSTtFOEU0WVE7SW5CaGFGO0V4RWs3c0JSO0FBQ0Y7QTJGemdzQmM7RUFDRTtFbkIzYU47RW1CNmFNLGNuRjdYTztFbUY4WFA7RUFDQSxjbkZwYkY7QVIrN3NCZDtBYXQ2c0JJO0U4RXNaVTtJbkIxYUo7RXhFODdzQlI7QUFDRjtBMkY3Z3NCYztFbkJwY047RW1Cc2NRLGNuRjlhVDtBUjY3c0JQO0EyRjNnc0JZO0VuQjFjSjtFbUI0Y00sY25GL2JBO0VtRmdjQSxvR25GdFpXO0VtRnVaWCxnQm5GblpLO0VnRXpDVDtFbUI4Ykk7QTNGNmdzQmQ7QWF2N3NCSTtFOEVvYVE7SW5CeGJGO0V4RSs4c0JSO0FBQ0Y7QTJGOWdzQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0ZnaHNCWjtBMkY3Z3NCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGNuRmxkRTtFbUZtZEY7RUFDQSxvR25GMWFhO0VnRXZEakI7QXhFaS9zQlI7QWEzOHNCSTtFOEVxYk07SW5CM2RGO0V4RXEvc0JOO0FBQ0Y7QTJGL2dzQmM7RUFDRSxvR25GamJTO0FSazhzQnpCO0EyRjVnc0JZO0VBQ0UsZ0JuRmhiSztBUjg3c0JuQjtBMkZ4Z3NCYztFQUNFO0EzRjBnc0JoQjtBMkZ0Z3NCWTtFQUtFLGNuRjFlUTtFbUYyZVIsZ0JuRmpjSztBUnE4c0JuQjtBMkZ6Z3NCYztFQUNFLGNuRjllRjtBUnkvc0JkO0EyRm5nc0JVO0VBQ0U7RUFDQTtFbkJyZ0JKO0F4RTJndEJSO0FhcitzQkk7RThFNmRNO0luQm5nQkY7RXhFK2d0Qk47QUFDRjtBMkZ4Z3NCWTtFQUNFO0VBQ0E7RUFDQTtBM0YwZ3NCZDtBMkZ2Z3NCZ0I7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Z5Z3NCbEI7QTJGcGdzQmtCOzs7RUFFRTtBM0Z1Z3NCcEI7QTJGbGdzQmM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQm5GdGRBO0VtRnVkQTtFQUNBO0VBQ0E7RUFDQTtBM0ZvZ3NCaEI7QTJGbGdzQmdCO0VBQ0U7RUFDQTtFQUNBO0EzRm9nc0JsQjtBMkY5L3JCVTtFQUNFO0VBQ0E7QTNGZ2dzQlo7QTJGOS9yQlk7RW5CMWpCSjtBeEUyanRCUjtBMkY3L3JCYztFQUVFO0EzRjgvckJoQjtBMkYxL3JCWTtFQUNFO0EzRjQvckJkO0EyRnQvckJRO0VBQ0U7RW5CMWpCQTtBeEVtanRCVjtBYS9odEJJO0U4RXFpQkk7SW5CempCRTtFeEV1anRCUjtBQUNGOztBMkYvK3JCQTs7d0RBQUE7QUFLRTtFQUNFO0VBS0E7OzBEQUFBO0VBbURBOzswREFBQTtFQTRCQTs7MERBQUE7RUE4TEE7OzBEQUFBO0VBV0E7OzBEQUFBO0VBOEVBOzswREFBQTtBM0Z1cHJCSjtBYTdqdEJJO0U4RTBqQkY7SUFHSTtFM0ZvZ3NCSjtBQUNGO0FhbGt0Qkk7RThFbWtCQTtJQUlJO0UzRisvckJOO0FBQ0Y7QTJGNy9yQk07RW5COWxCSTtBeEU4bHRCVjtBYTFrdEJJO0U4RTBrQkU7SW5COWxCSTtFeEVrbXRCUjtBQUNGO0FhL2t0Qkk7RThFMGtCRTtJbkI5bEJJO0V4RXVtdEJSO0FBQ0Y7QWFwbHRCSTtFOEUwa0JFO0luQjlsQkk7RXhFNG10QlI7QUFDRjtBMkYzZ3NCTTtFQUNFO0VuQm5tQkU7QXhFaW50QlY7QWE3bHRCSTtFOEU4a0JFO0luQmxtQkk7RXhFcW50QlI7QUFDRjtBYWxtdEJJO0U4RThrQkU7SW5CbG1CSTtFeEUwbnRCUjtBQUNGO0Fhdm10Qkk7RThFOGtCRTtJbkJsbUJJO0V4RStudEJSO0FBQ0Y7QTJGMWhzQlE7RW5CdG1CRTtBeEVtb3RCVjtBYS9tdEJJO0U4RWtsQkk7SW5CdG1CRTtFeEV1b3RCUjtBQUNGO0EyRjloc0JRO0VuQjFtQkU7RW1CNG1CQSxjbkZqbkJJO0VtRmtuQkosZ0JuRnBrQlM7RWdFekNUO0F4RThvdEJWO0FhMW50Qkk7RThFc2xCSTtJbkIxbUJFO0V4RWtwdEJSO0FBQ0Y7QWEvbnRCSTtFOEVzbEJJO0luQjFtQkU7RXhFdXB0QlI7QUFDRjtBMkZ2aXNCUTtFbkJqbkJFO0F4RTJwdEJWO0EyRnRpc0JRO0VuQnJuQkU7QXhFOHB0QlY7QTJGcmlzQlE7RW5Cem5CRTtFQUFBO0F4RWtxdEJWO0FhOW90Qkk7RThFcW1CSTtJbkJ6bkJFO0V4RXNxdEJSO0FBQ0Y7QTJGeGlzQk07RUFDRTtBM0YwaXNCUjtBMkZoaXNCSTtFQUNFO0VBQ0E7RW5CNW9CSTtFQUFBO0VBQUE7RUFBQTtBeEVrcnRCVjtBYTlwdEJJO0U4RXNuQkE7SW5CMW9CTTtFeEVzcnRCUjtBQUNGO0FhbnF0Qkk7RThFc25CQTtJbkIxb0JNO0V4RTJydEJSO0FBQ0Y7QWF4cXRCSTtFOEVzbkJBO0luQjFvQk07RXhFZ3N0QlI7QUFDRjtBYTdxdEJJO0U4RXNuQkE7SW5CMW9CTTtFeEVxc3RCUjtBQUNGO0FhbHJ0Qkk7RThFc25CQTtJbkI1cEJJO0V4RTR0dEJOO0FBQ0Y7QWF2cnRCSTtFOEVzbkJBO0lBYUksZ0JuRjNtQlc7RVJtcXRCakI7QUFDRjtBMkZ0anNCTTtFQUNFO0EzRndqc0JSO0EyRnJqc0JNO0VBQ0U7QTNGdWpzQlI7QTJGaGpzQkk7RUFDRTtFbkJ2cUJJO0VBQUE7RW1CNHFCSixvR25Gdm9CbUI7RW1Gd29CbkI7QTNGZ2pzQk47QWF6c3RCSTtFOEVrcEJBO0luQnRxQk07RXhFaXV0QlI7QUFDRjtBYTlzdEJJO0U4RWtwQkE7SW5CeHJCSTtFeEV3dnRCTjtBQUNGO0EyRnBqc0JNO0VBQ0U7QTNGc2pzQlI7QTJGcGpzQlE7RWxCaHNCTixrQkErQ2tCO0VrQm9wQlY7RW5CenJCQTtFbUIyckJBLHNCbkZuckJGO0VtRm9yQkU7RUFDQSxrQm5GOW5CTTtBUm1ydEJoQjtBYTl0dEJJO0U4RWtxQkk7SW5CdHJCRTtFeEVzdnRCUjtBQUNGO0EyRnZqc0JRO0VuQmhzQkU7RW1CbXNCQTtFQUNBLGtCbkZyb0JNO0FSNnJ0QmhCO0FheHV0Qkk7RThFc3JCTTtJQUNFO0UzRnFqc0JWO0FBQ0Y7QTJGbGpzQlE7RUFDRTtFbkJodEJBO0VtQmt0QkEsY25GNXNCSDtFbUY2c0JHO0VBQ0EsZ0JuRjNxQlM7RW1GNHFCVDtBM0ZvanNCVjtBYXJ2dEJJO0U4RTJyQkk7SW5CL3NCRTtFeEU2d3RCUjtBQUNGO0FhMXZ0Qkk7RThFMnJCSTtJbkIvc0JFO0V4RWt4dEJSO0FBQ0Y7QWEvdnRCSTtFOEVvc0JJO0luQnh0QkU7RXhFdXh0QlI7QUFDRjtBYXB3dEJJO0U4RW9zQkk7SW5CeHRCRTtFeEU0eHRCUjtBQUNGO0Fhend0Qkk7RThFb3NCSTtJbkIxdUJBO0V4RW16dEJOO0FBQ0Y7QTJGcmtzQlU7RUFDRSxjbkZudUJFO0VtRm91QkY7RW5CL3RCRjtFbUJrdUJFLGNuRmxyQlc7RW1GbXJCWDtFQUNBLGdCbkZ4ckJPO0FSOHZ0Qm5CO0FhdHh0Qkk7RThFeXNCTTtJbkI3dEJBO0V4RTh5dEJSO0FBQ0Y7QWEzeHRCSTtFOEV5c0JNO0luQi91QkY7RXhFcTB0Qk47QUFDRjtBMkYza3NCVTtFbkJ6dUJBO0F4RXV6dEJWO0EyRnprc0JRO0VuQjl1QkU7RUFBQTtFQUFBO0F4RTR6dEJWO0FheHl0Qkk7RThFMHRCSTtJbkI5dUJFO0lBQUE7RXhFaTB0QlI7QUFDRjtBYTl5dEJJO0U4RTB0Qkk7SW5COXVCRTtFeEVzMHRCUjtBQUNGO0Fhbnp0Qkk7RThFOHRCTTtJbkJsdkJBO0V4RTIwdEJSO0FBQ0Y7QTJGdGxzQlU7RUFDRTtFbkJ2dkJGO0VtQnl2QkU7RUFDQTtFQUNBO0VBQ0EsZ0JwRjNMa0I7RW9GNExsQjtFbkI3dkJGO0VtQit2QkU7RUFDQSxjbkY5dkJVO0VtRit2QlYsa0JuRmxzQkk7QVIweHRCaEI7QWFyMHRCSTtFOEVrdUJNO0luQnR2QkE7RXhFNjF0QlI7QUFDRjtBYTEwdEJJO0U4RWt1Qk07SW5CdHZCQTtFeEVrMnRCUjtBQUNGO0EyRi9sc0JZO0VBQ0U7QTNGaW1zQmQ7QTJGN2xzQlU7RUFDRTtFbkI1eEJKO0VtQjh4Qkk7RUFDQTtFbkI3d0JGO0VtQit3QkU7RUFDQSxjbkY5d0JVO0VtRit3QlY7RUFDQSxrQm5GbnRCSTtFbUZvdEJKO0EzRitsc0JaO0FhOTF0Qkk7RThFcXZCTTtJbkJ6d0JBO0V4RXMzdEJSO0FBQ0Y7QTJGbG1zQlk7Ozs7RUFJRTtBM0ZvbXNCZDtBMkZqbXNCWTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRm1tc0JkO0EyRi9sc0JVOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0EzRmltc0JaO0EyRjVsc0JRO0VBQ0U7RW5CanpCQTtFQUFBO0F4RWk1dEJWO0FhNzN0Qkk7RThFNHhCSTtJbkJoekJFO0V4RXE1dEJSO0FBQ0Y7QWFsNHRCSTtFOEU0eEJJO0luQmh6QkU7RXhFMDV0QlI7QUFDRjtBYXY0dEJJO0U4RTR4Qkk7SW5CaHpCRTtFeEUrNXRCUjtBQUNGO0FhNTR0Qkk7RThFNHhCSTtJQU9JO0lBQ0E7RTNGNm1zQlY7QUFDRjtBYWw1dEJJO0U4RXV5Qk07SW5CM3pCQTtFeEUwNnRCUjtBQUNGO0EyRjNtc0JRO0VuQmgwQkU7RW1CbTBCQTtBM0Y0bXNCVjtBYTM1dEJJO0U4RTR5Qkk7SW5CaDBCRTtFeEVtN3RCUjtBQUNGO0EyRi9tc0JVO0VBQ0U7RUFDQTtFQUNBO0EzRmluc0JaO0EyRjltc0JVO0VBQ0U7RUFDQTtFQUNBLGNuRm4xQkU7RW1GbzFCRjtBM0ZnbnNCWjtBMkY1bXNCVTtFQUNFO0VBQ0E7QTNGOG1zQlo7QTJGL2xzQkk7RW5CcDJCTTtFbUJzMkJKO0VBQ0EsZ0JuRjN6QmE7RW1GNHpCYjtFQUNBO0EzRmltc0JOO0FhdDd0Qkk7RThFZzFCQTtJbkJwMkJNO0V4RTg4dEJSO0FBQ0Y7QTJGaG1zQkk7RW5CLzJCTTtFbUJpM0JKO0EzRmttc0JOO0EyRmhtc0JNO0VuQm4zQkk7QXhFczl0QlY7QWFsOHRCSTtFOEUrMUJFO0luQm4zQkk7RXhFMDl0QlI7QUFDRjtBMkZybXNCUTtFQUNFO0VBQ0E7RUFDQSxjbkZ2M0JZO0VtRnczQlo7RUFDQTtBM0Z1bXNCVjtBMkZsbXNCTTtFQUNFLG9HbkY1MUJpQjtBUmc4dEJ6QjtBMkZsbXNCUTtFQUNFLHFCbkZsNEJZO0VtRm00QloseUJuRm40Qlk7RW1GbzRCWixXbkY5M0JGO0FSayt0QlI7QTJGam1zQlE7RW5CejRCRTtFQUFBO0VtQjQ0QkEsY25GNTFCYTtBUis3dEJ2QjtBYTM5dEJJO0U4RXEzQkk7SW5CejRCRTtFeEVtL3RCUjtBQUNGO0FhaCt0Qkk7RThFcTNCSTtJbkJ6NEJFO0V4RXcvdEJSO0FBQ0Y7QWFyK3RCSTtFOEVxM0JJO0luQjM1QkE7RXhFK2d1Qk47QUFDRjtBMkY5bXNCUTtFbkJoNUJFO0F4RWlndUJWO0FhNyt0Qkk7RThFNDNCSTtJbkJoNUJFO0V4RXFndUJSO0FBQ0Y7QTJGbm5zQlU7RUFDRSxnQnBGblZrQjtFaUVubEJ0QjtFbUJ3NkJJO0VBQ0EsY25GNTVCRTtBUmlodUJkO0EyRm5uc0JZO0VBQ0U7RUFDQTtFQUNBLGdCbkZoM0JLO0FScSt0Qm5CO0EyRmxuc0JZO0VBQ0U7RUFDQTtFQUNBLGdCbkZ0M0JLO0FSMCt0Qm5CO0EyRmhuc0JVO0VBQ0U7RUFDQTtFQUNBLGNuRmg1QkY7RW1GaTVCRSx5Qm5GeDZCVTtFbUZ5NkJWO0VBQ0EsZ0JuRmg0Qk87RW1GaTRCUDtFQUNBO0VBQ0E7RUFDQSxvR25GMzRCYTtBUjYvdEJ6QjtBMkZobnNCWTtFQUNFO0EzRmtuc0JkO0EyRnhtc0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTNGMG1zQk47QTJGeG1zQk07RW5CcjlCRTtFbUJ1OUJBO0VBQ0E7QTNGMG1zQlI7QTJGbG1zQkU7RUFDRTtBM0ZvbXNCSjtBMkZubXNCSTtFQUNFO0EzRnFtc0JOO0EyRm5tc0JNO0VuQnIrQkU7RW1CdStCQSxjbkZuOUJjO0VtRm85QmQ7RUFDQTtBM0ZxbXNCUjtBMkZubXNCUTtFQUNFO0VBQ0E7RUFDQTtBM0ZxbXNCVjtBMkZsbXNCUTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGNuRmorQlk7QVJxa3VCdEI7QTJGam1zQlE7RUFDRTtBM0ZtbXNCVjtBMkYvbHNCTTtFQUNFO0EzRmltc0JSOztBMkZ2bHNCQTs7d0RBQUE7QUFJRTtFbkIxL0JRO0F4RW9sdUJWO0FhaGt1Qkk7RThFcytCRjtJbkIxL0JRO0V4RXdsdUJSO0FBQ0Y7QTJGM2xzQkU7RUFDRTtBM0Y2bHNCSjtBMkYzbHNCSTtFQUNFO0VBQ0E7RUFDQSxnQm5GeDlCYTtFbUZ5OUJiO0EzRjZsc0JOO0EyRnpsc0JFO0VuQnpnQ1E7QXhFcW11QlY7QWFqbHVCSTtFOEVxL0JGO0luQnpnQ1E7RXhFeW11QlI7QUFDRjtBYXRsdUJJO0U4RXEvQkY7SW5CemdDUTtFeEU4bXVCUjtBQUNGO0FhM2x1Qkk7RThFcS9CRjtJbkJ6Z0NRO0V4RW1udUJSO0FBQ0Y7QWFobXVCSTtFOEVxL0JGO0luQnpnQ1E7RXhFd251QlI7QUFDRjtBYXJtdUJJO0U4RXEvQkY7SW5CemdDUTtFeEU2bnVCUjtBQUNGOztBMkY5bXNCQTs7d0RBQUE7QUFJRTtFbkJ0aUNNO0F4RXVwdUJSO0EyRjdtc0JFO0VBQ0U7RUFDQTtBM0YrbXNCSjtBMkYzbXNCTTtFQUNFLGtCbkZoK0JRO0VtRmkrQlI7QTNGNm1zQlI7QTJGeG1zQlE7RUFDRTtBM0YwbXNCVjtBMkZ4bXNCUTs7RUFFRTtFQUNBO0VBQ0EsY25GMWlDWTtFbUYyaUNaO0EzRjBtc0JWO0EyRnBtc0JVO0VBQ0U7RUFDQTtFQUNBLGNuRnBqQ1U7QVIwcHVCdEI7QTJGOWxzQkU7RUFDRTtBM0ZnbXNCSjtBMkY1bHNCSTtFQUNFO0VBQ0EsZ0JuRnpoQ2E7RW1GMGhDYjtFQUNBO0VBQ0EseUJuRnBrQ1c7RWdFdEJUO0F4RXlydUJSO0EyRjFsc0JNO0VuQjdrQ0k7RUFBQTtFQUFBO0F4RTRxdUJWO0FheHB1Qkk7RThFeWpDRTtJbkI3a0NJO0V4RWdydUJSO0FBQ0Y7QWE3cHVCSTtFOEV5akNFO0luQjdrQ0k7RXhFcXJ1QlI7QUFDRjtBYWxxdUJJO0U4RXlqQ0U7SW5CN2tDSTtFeEUwcnVCUjtBQUNGO0EyRnJtc0JJO0VuQnhtQ0k7RW1CMG1DRixjbkY3bENRO0VtRjhsQ1I7RUFDQSxnQm5GOWlDYTtBUnFwdUJuQjtBMkZubXNCRTtFbkJobkNNO0F4RXN0dUJSO0EyRmxtc0JFO0VBQ0U7O0lBQUE7QTNGc21zQko7QTJGam1zQk07RUFDRTtFQUNBLGdCbkY5akNXO0FSaXF1Qm5CO0EyRi9sc0JJOztFbkI5bUNNO0VBQUE7QXhFa3R1QlY7QWE5cnVCSTtFOEUwbENBOztJbkI5bUNNO0V4RXV0dUJSO0FBQ0Y7QTJGcm1zQk07O0VBQ0U7QTNGd21zQlI7QTJGcG1zQkk7RW5CeG5DTTtBeEUrdHVCVjtBYTNzdUJJO0U4RW9tQ0E7SW5CeG5DTTtFeEVtdXVCUjtBQUNGO0EyRnptc0JNO0VuQjdvQ0U7QXhFeXZ1QlI7QTJGdm1zQkk7RW5CaG9DTTtFQUFBO0F4RTJ1dUJWO0EyRnhtc0JNO0VBQ0U7RUFDQTtBM0YwbXNCUjtBMkZwbXNCTTtFQUNFO0VBQ0E7QTNGc21zQlI7QWEvdHVCSTtFOEV1bkNFO0lBS0k7SUFDQTtFM0Z1bXNCUjtBQUNGO0EyRnBtc0JNO0VBQ0U7RUFDQTtBM0ZzbXNCUjtBMkZubXNCTTtFQUNFO0VBQ0E7RUFDQSxjbkYzcENjO0FSZ3d1QnRCO0EyRmhtc0JJO0VBQ0U7QTNGa21zQk47QTJGaG1zQk07RUFDRTtBM0ZrbXNCUjtBMkZobXNCUTtFQUNFO0EzRmttc0JWO0FhdnZ1Qkk7RThFb3BDSTtJQUlJO0lBQ0E7RTNGbW1zQlY7QUFDRjtBMkYvbHNCTTtFQUNFO0VBQ0Esc0JuRjVxQ0E7RWdFUkU7RW1Cc3JDRjtFQUNBO0VBQ0E7RUFDQSxrQm5GMW5DUTtFZ0VqRlI7QXhFNnl1QlI7QTJGL2xzQlE7RUFDRTtBM0ZpbXNCVjtBMkY5bHNCUTtFQUNFLHNCbkZ6ckNGO0VtRjByQ0U7QTNGZ21zQlY7QTJGOWxzQlU7RUFDRTtBM0ZnbXNCWjtBMkY5bHNCWTtFQUNFO0VBQ0EsZ0JuRjdwQ0s7QVI2dnVCbkI7QTJGN2xzQlk7RUFDRTtBM0YrbHNCZDtBMkY1bHNCWTtFQUNFLHlCbkYvc0NRO0VtRmd0Q1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0Y4bHNCZDtBd0VweXVCTTtFbUI0c0NJLHNCQXZ3Q2lCO0EzRmsydUIzQjtBd0V2eXVCTTtFbUI0c0NJLHNCQXZ3Q2lCO0EzRnEydUIzQjtBd0VseXVCSTtFQUNFO0ltQm1zQ0ksc0JBdndDaUI7RTNGeTJ1QnpCO0FBQ0Y7QTJGaG1zQlE7RUFDRTtBM0ZrbXNCVjtBMkYvbHNCUTtFQUNFO0EzRmltc0JWO0EyRjlsc0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RW5CN3ZDRjtBeEU4MXVCUjtBMkY5bHNCVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLGtCbkYxckNJO0VtRjJyQ0o7RUFDQTtBM0YrbHNCWjtBMkY1bHNCVTtFQUNFO0EzRjhsc0JaO0EyRjFsc0JRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0JuRjl0Q1M7RWdFOURYO0F4RXkzdUJSO0EyRjFsc0JVOztFQUVFO0VBQ0E7RUFDQSxjbkYvd0NVO0VtRmd4Q1Y7RUFDQTtBM0Y0bHNCWjtBd0UvMXVCTTtFbUJ1d0NNO0EzRjJsc0JaO0F3RWwydUJNO0VtQnV3Q007QTNGOGxzQlo7QXdFNzF1Qkk7RUFDRTtJbUI4dkNNO0UzRmttc0JWO0FBQ0Y7QTJGN2xzQkk7RW5CN3hDTTtBeEU2M3VCVjtBMkY1bHNCSTtFbkJqeUNNO0F4RWc0dUJWO0FhNTJ1Qkk7RThFNndDQTtJbkJqeUNNO0V4RW80dUJSO0FBQ0Y7QTJGaG1zQlE7RUFDRTtBM0ZrbXNCVjtBMkZobXNCUTtFQUNFO0VBQ0Esa0JuRjN1Q007RW1GNnVDTixzQm5GcHlDRjtBUnE0dUJSO0EyRi9sc0JVO0VuQmgwQ0Y7QXhFazZ1QlI7QWE1M3VCSTtFOEUweENNO0luQmgwQ0Y7RXhFczZ1Qk47QUFDRjtBMkZwbXNCWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VuQnYwQ047RW1CeTBDTSxjbkY1ekNBO0VtRjZ6Q0EseUhuRmx4Q1M7RW1GbXhDVCxnQm5GOXdDSTtFbUYrd0NKO0EzRnNtc0JkO0FhNTR1Qkk7RThFNnhDUTtJbkJuMENKO0V4RXM3dUJOO0FBQ0Y7QTJGMW1zQmM7RUFDRSxrQm5GN3ZDQTtBUnkydUJoQjtBMkZ6bXNCYztFQUNFO0EzRjJtc0JoQjtBMkZ4bXNCYztFQUNFO0VBRUE7QTNGeW1zQmhCO0EyRnRtc0JjO0VBQ0U7RUFDQSxnQm5GaHlDRTtFZ0U3RFY7QXhFczh1QlI7QWFoNnVCSTtFOEVxekNVO0luQjMxQ047RXhFMDh1Qk47QUFDRjtBMkYxbXNCYztFQUNFO0VBQ0E7RUFDQSxjbkZoMUNNO0VtRmkxQ047RUFDQTtBM0Y0bXNCaEI7QTJGem1zQmM7RUFDRTtFQUNBO0EzRjJtc0JoQjtBMkZ4bXNCYztFQUNFO0VBQ0E7QTNGMG1zQmhCO0EyRnRtc0JnQjtFQUNFO0EzRndtc0JsQjtBMkZybXNCZ0I7RUFDRTtBM0Z1bXNCbEI7QTJGbm1zQmM7RUFJRTtBM0ZrbXNCaEI7QTJGL2xzQmM7RUFDRSxxQm5GajNDTTtBUms5dUJ0QjtBMkYzbHNCVTtFQUNFO0EzRjZsc0JaO0EyRjlrc0JRO0VuQno0Q0U7QXhFMDl1QlY7QTJGNWtzQlU7RUFDRTtBM0Y4a3NCWjtBMkYxa3NCUTtFQUNFO0EzRjRrc0JWO0EyRjFrc0JVO0VBRUU7QTNGMmtzQlo7QTJGeGtzQlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNGMGtzQlo7O0EyRjlqc0JBO0VBRUk7O0lBRUU7SUFDQTtFM0Zna3NCSjtBQUNGO0EyRnpqc0JBOzt3REFBQTtBQUlFO0VBQ0U7RUFDQTtFQUNBO0EzRjBqc0JKO0EyRnZqc0JFO0VuQnQ5Q007RW1CdzlDSixjbkYzOENVO0VtRjQ4Q1Y7RUFDQSxnQm5GNTVDZTtBUnE5dUJuQjtBMkZ0anNCRTtFQUNFO0VuQjk5Q0k7RW1CZytDSixnQnBGNzRCMEI7QVBxOHRCOUI7QTJGcmpzQkU7RW5CbitDTTtBeEUyaHZCUjtBMkZyanNCSTtFQUNFO0EzRnVqc0JOOztBMkZqanNCRTtFQUNFLHlIbkZ0N0NtQjtFbUZ1N0NuQixnQm5GbDdDYztBUnMrdUJsQjs7QTRGNWp2QkE7RUE0SkU7OzREQUFBO0VBZUE7OzBEQUFBO0VBK01BOzswREFBQTtFQXVIQTs7MERBQUE7RUFvR0E7OzBEQUFBO0VBdURBOzswREFBQTtBNUZxOHRCRjtBNEYva3ZCRTtFQUNFLGNwRm1DVTtFb0ZsQ1Y7RXBCcUJJO0VvQm5CSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RmlsdkJKO0FhNWh2Qkk7RStFN0RGO0lwQnVCTTtFeEVza3ZCTjtBQUNGO0E0RnBsdkJJO0VBQ0U7RUFDQTtFQUNBLGNwRjhCZ0I7RW9GN0JoQjtFQUNBO0E1RnNsdkJOO0E0RmxsdkJFO0VwQnNCUTtFb0JwQk47RUFDQTtBNUZvbHZCSjtBYTdpdkJJO0UrRTFDRjtJcEJzQlE7RXhFcWt2QlI7QUFDRjtBNEZ2bHZCSTtFQUNFO0E1RnlsdkJOO0Fhcmp2Qkk7RStFMUNGO0lBVUk7SUFDQTtFNUZ5bHZCSjtBQUNGO0FhOWl2Qkk7RStFdkRGO0lBZUk7RTVGMGx2Qko7RTRGdmx2Qk07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVGeWx2QlI7RTRGbGx2QlE7SUFDRTtFNUZvbHZCVjtFNEY5a3ZCUTtJQUNFO0U1RmdsdkJWO0U0RjVrdkJVO0lBQ0U7SUFDQTtFNUY4a3ZCWjtBQUNGO0E0RnhrdkJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVGMGt2Qk47QTRGeGt2Qk07RUFDRTtBNUYwa3ZCUjtBYXZsdkJJO0UrRU1BO0lBV0k7SUFDQSxrQnBGWVE7SW9GWFI7RTVGMGt2Qk47QUFDRjtBYTNtdkJJO0UrRW1CQTtJQWlCSTtFNUYya3ZCTjtBQUNGO0Fhbm12Qkk7RStFNkJFO0lBRUk7RTVGd2t2QlI7RTRGdGt2QlE7SUFDRSxnQnBGdkJPO0VSK2x2QmpCO0FBQ0Y7QWF4bnZCSTtFK0UwQ0U7SUFVSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RndrdkJSO0FBQ0Y7QWFwbnZCSTtFK0UrQ0U7SUFFSTtJQUNBO0lBQ0E7SUFDQTtFNUZ1a3ZCUjtBQUNGO0Fhem92Qkk7RStFNERFO0lBU0k7RTVGd2t2QlI7RXdFanB2Qkk7SW9CNEVNO0lBQ0E7SUFDQTtFNUZ3a3ZCVjtFd0V0cHZCSTtJb0I0RU07SUFDQTtJQUNBO0U1RjZrdkJWO0FBQ0Y7QXdFcHB2Qkk7RUFDRTtJb0JtRU07SUFDQTtJQUNBO0U1Rm9sdkJWO0FBQ0Y7QTRGaGx2Qk07O0VBRUU7RUFDQTtFcEJ4SEE7RW9CMEhBLGdCckZ5ZHNCO0VxRnhkdEI7RXBCekdFO0F4RTRydkJWO0FheHF2Qkk7RStFK0VFOztJcEJySEU7RXhFbXR2Qk47QUFDRjtBYTlxdkJJO0UrRStFRTs7SXBCbkdJO0V4RXVzdkJSO0FBQ0Y7QTRGcGx2QkU7RUFDRTtFQUNBO0E1RnNsdkJKO0E0RnBsdkJJO0VwQjFJSTtFb0I0SUY7RUFDQTtBNUZzbHZCTjtBNEY3a3ZCSTtFQUNFO0VBQ0E7RUFDQTtFcEJ2SUk7QXhFdXR2QlY7QWFuc3ZCSTtFK0VnSEE7SXBCcElNO0V4RTJ0dkJSO0FBQ0Y7QTRGbGx2Qk07RUFDRSxrQnBGNUVRO0VvRjZFUjtFQUNBO0VBQ0E7RUFDQSxjcEZwSk07QVJ3dXZCZDtBNEZubHZCUTtFQUNFO0E1RnFsdkJWO0E0RmpsdkJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VwQjdLQTtFb0IrS0EseUhwRnZIZTtFb0Z3SGYsZ0JwRm5IVTtFb0ZvSFYsY3BGcEtNO0VvRnFLTjtFcEJoS0U7RUFBQTtFQUFBO0VBQUE7QXhFdXZ2QlY7QWFudXZCSTtFK0VpSUU7SXBCdktFO0V4RTZ3dkJOO0FBQ0Y7QWF4dXZCSTtFK0VpSUU7SXBCckpJO0lBQUE7RXhFaXd2QlI7QUFDRjtBYTl1dkJJO0UrRWlJRTtJcEJySkk7SUFBQTtFeEV1d3ZCUjtBQUNGO0E0RnBtdkJRO0VBQ0U7QTVGc212QlY7QTRGbm12QlE7RUFFRTtBNUZvbXZCVjtBNEZqbXZCUTtFQUNFLGNwRjVLWTtFb0Y2S1o7RUFDQTtBNUZtbXZCVjtBNEZsbXZCVTtFQUNFO0E1Rm9tdkJaO0E0RmptdkJVO0VBQ0U7QTVGbW12Qlo7QTRGOWx2Qk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCcEZwSlc7RW9GcUpYO0VBQ0EsY3BGbEplO0VnRWxFZjtBeEVxenZCUjtBYS93dkJJO0UrRXVLRTtJcEI3TUU7RXhFeXp2Qk47QUFDRjtBNEZsbXZCTTtFcEJ4TkU7RW9CME5BLGNwRnRNYztFb0Z1TWQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUZvbXZCUjtBYTd4dkJJO0UrRWtMRTtJcEJ4TkU7RXhFdTB2Qk47QUFDRjtBNEZ0bXZCTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY3BGbk5jO0VnRXBCZDtBeEVnMXZCUjtBYTF5dkJJO0UrRTRMRTtJcEJsT0U7RXhFbzF2Qk47QUFDRjtBNEY1bXZCUTtFQUNFLGNwRjdOSTtBUjIwdkJkO0E0RjFtdkJNO0VBQ0U7QTVGNG12QlI7QTRGcm12Qk07RXBCcE9JO0VBQUE7RUFBQTtFQUFBO0F4RSswdkJWO0FhM3p2Qkk7RStFZ05FO0lwQnBPSTtJQUFBO0V4RW8xdkJSO0FBQ0Y7QWFqMHZCSTtFK0VnTkU7SXBCcE9JO0lBQUE7RXhFMDF2QlI7QUFDRjtBNEZqbnZCSTtFQUNFO0VwQjdQRTtFb0IrUEY7QTVGbW52Qk47QTRGam52Qk07RUFDRTtFQUNBLGNwRi9PYztFZ0VwQmQ7RUFrQkU7QXhFczJ2QlY7QWFsMXZCSTtFK0UyTkU7SXBCalFFO0V4RTQzdkJOO0FBQ0Y7QWF2MXZCSTtFK0UyTkU7SXBCL09JO0V4RSsydkJSO0FBQ0Y7QTRGMW52Qk07RUFDRTtFcEJ6UUE7RW9CMlFBO0VBQ0E7RUFDQTtBNUY0bnZCUjtBYW4ydkJJO0UrRWtPRTtJcEJ4UUU7RXhFNjR2Qk47QUFDRjtBNEY5bnZCTTtFQUNFO0VBQ0E7RXBCbFJBO0VvQm9SQTtBNUZnb3ZCUjtBYTkydkJJO0UrRTBPRTtJcEJoUkU7RXhFdzV2Qk47QUFDRjtBNEZsb3ZCTTtFQUNFO0E1Rm9vdkJSO0E0RmxvdkJRO0VBQ0U7RUFDQTtBNUZvb3ZCVjtBNEZob3ZCVTtFQUNFO0E1RmtvdkJaO0E0RmhvdkJZO0VBQ0U7QTVGa292QmQ7QTRGNW52Qk07RUFDRTtBNUY4bnZCUjtBNEY1bnZCUTtFQUNFO0E1RjhudkJWO0E0RnpudkJRO0VBQ0U7QTVGMm52QlY7QTRGdG52Qkk7OztFQUdFO0E1RndudkJOO0E0RnBudkJNO0VBQ0U7RXBCalVBO0VvQm1VQTtBNUZzbnZCUjtBYW41dkJJO0UrRTBSRTtJcEJoVUU7RXhFNjd2Qk47QUFDRjtBNEZ4bnZCTTtFQUNFO0VBQ0E7QTVGMG52QlI7QTRGeG52QlE7RUFDRTtFQUNBO0E1RjBudkJWO0E0RnZudkJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3BGL1RjO0FSdzd2QnRCO0E0RnRudkJRO0VBQ0U7QTVGd252QlY7QTRGem12Qkk7RUFDRTtFcEJ2V0U7RW9CeVdGO0E1RjJtdkJOO0FhOTZ2Qkk7RStFZ1VBO0lwQnRXSTtFeEV3OXZCTjtBQUNGO0E0RjdtdkJJO0VBQ0U7QTVGK212Qk47QTRGN212Qk07RUFDRTtBNUYrbXZCUjtBNEYzbXZCSTtFcEJwWEk7QXhFayt2QlI7QTRGM212Qk07RUFDRSxnQnBGMVRXO0VvRjJUWDtBNUY2bXZCUjtBNEYxbXZCTTtFQUNFO0VwQjNXRTtFQUFBO0VvQjZXRixzQkR4Wm1CO0EzRnFnd0IzQjtBNEYzbXZCUTtFcEIvV0U7QXhFNjl2QlY7QWF6OHZCSTtFK0UyVkk7SXBCL1dFO0V4RWkrdkJSO0FBQ0Y7QTRGOW12Qk07RUFDRTtFQUNBO0VBQ0E7QTVGZ252QlI7QTRGNW12Qkk7RXBCN1lJO0VvQitZRjtFQUNBO0E1RjhtdkJOO0E0RjVtdkJNO0VBRUU7RUFDQTtBNUY2bXZCUjtBNEYxbXZCTTtFQUNFO0E1RjRtdkJSO0FhbDl2Qkk7RStFcVdFO0lBR0k7RTVGOG12QlI7QUFDRjtBNEY1bXZCUTtFQUNFO0E1RjhtdkJWO0E0RjFtdkJNO0VBQ0U7QTVGNG12QlI7QTRGMW12QlE7RUFDRTtFQUNBLGdCcEYxV1M7QVJzOXZCbkI7QTRGMW12QlU7RUFDRTtFQUNBLGdCckZ1S2tCO0VpRW5sQnRCO0F4RXlod0JSO0E0RnhtdkJRO0VwQmpiQTtFb0JtYkU7RUFDQTtFQUNBLGdCcEZ2WFM7RW9Gd1hULGNwRnBYYTtBUjg5dkJ2QjtBNEZ2bXZCUTtFQUNFLGNwRnphQTtBUmtod0JWO0E0RnRtdkJRO0VwQjdiQTtBeEVzaXdCUjtBd0VwZ3dCTTtFb0I4Wk07QTVGeW12Qlo7QXdFdmd3Qk07RW9COFpNO0E1RjRtdkJaO0F3RWxnd0JJO0VBQ0U7SW9CcVpNO0U1RmdudkJWO0FBQ0Y7QTRGM212Qk07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUY2bXZCUjtBNEYzbXZCUTtFQUNFO0E1RjZtdkJWO0E0RjNtdkJVO0VBQ0UsZ0JwRmxaTztFb0ZtWlA7QTVGNm12Qlo7QTRGam12Qkk7RUFDRTtFcEI5ZEU7RW9CZ2VGO0E1Rm1tdkJOO0FhN2h3Qkk7RStFdWJBO0lwQjdkSTtFeEV1a3dCTjtBQUNGO0E0RnJtdkJJO0VBQ0U7QTVGdW12Qk47QTRGdG12Qk07RUFDRTtBNUZ3bXZCUjtBNEZwbXZCSTtFcEIxZUk7QXhFaWx3QlI7QTRGcG12Qk07RUFDRSxnQnBGaGJXO0VvRmliWDtBNUZzbXZCUjtBNEZubXZCTTtFQUNFO0VwQmplRTtFQUFBO0VvQm1lRixzQkQ5Z0JtQjtBM0ZvbndCM0I7QTRGcG12QlE7RXBCcmVFO0F4RTRrd0JWO0FheGp3Qkk7RStFaWRJO0lwQnJlRTtFeEVnbHdCUjtBQUNGO0E0RnJtdkJJO0VwQjlmSTtFb0JnZ0JGO0VBQ0E7QTVGdW12Qk47QTRGcm12Qk07RUFFRTtFQUNBO0E1RnNtdkJSO0E0Rm5tdkJNO0VBQ0U7QTVGcW12QlI7QWE1andCSTtFK0VzZEU7SUFHSTtFNUZ1bXZCUjtBQUNGO0E0RnJtdkJRO0VBQ0U7QTVGdW12QlY7QTRGbm12Qk07RUFDRTtBNUZxbXZCUjtBNEZubXZCUTtFQUNFO0VBQ0EsZ0JwRjNkUztBUmdrd0JuQjtBNEZubXZCVTtFQUNFO0VBQ0EsZ0JyRnNEa0I7RWlFbmxCdEI7QXhFbW93QlI7QTRGaG12Qk07RUFDRTtFQUNBO0E1RmttdkJSO0E0Ri9sdkJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVGaW12QlI7QTRGL2x2QlE7RUFDRTtBNUZpbXZCVjtBNEYvbHZCVTtFQUNFLGdCcEZwZk87RW9GcWZQO0E1RmltdkJaO0E0Rm5sdkJJO0VBQ0U7RXBCbGtCRTtFQWtCRTtBeEV1b3dCVjtBYW5ud0JJO0UrRTJoQkE7SXBCamtCSTtFeEU2cHdCTjtBQUNGO0FheG53Qkk7RStFMmhCQTtJcEIvaUJNO0V4RWdwd0JSO0FBQ0Y7QTRGNWx2Qkk7RUFDRTtBNUY4bHZCTjtBNEYzbHZCSTtFcEJ6akJNO0F4RXVwd0JWO0Fhbm93Qkk7RStFcWlCQTtJcEJ6akJNO0V4RTJwd0JSO0FBQ0Y7QWF4b3dCSTtFK0VxaUJBO0lwQnpqQk07RXhFZ3F3QlI7QUFDRjtBYTdvd0JJO0UrRXFpQkE7SXBCempCTTtFeEVxcXdCUjtBQUNGO0FhbHB3Qkk7RStFcWlCQTtJcEJ6akJNO0V4RTBxd0JSO0FBQ0Y7QTRGL212Qk07RUFDRTtBNUZpbnZCUjtBNEY5bXZCTTtFQUNFO0E1RmdudkJSO0E0RjVtdkJJO0VBQ0U7QTVGOG12Qk47QTRGM212Qkk7RUFDRTtBNUY2bXZCTjtBYW5xd0JJO0UrRXdqQkU7SUFFSTtFNUY2bXZCUjtBQUNGO0E0RjFtdkJNO0VBQ0U7RUFDQTtFQUNBO0E1RjRtdkJSO0E0RjFtdkJRO0VBQ0U7RUFDQTtBNUY0bXZCVjtBNEYvbHZCSTtFQUNFO0VwQnpuQkU7RW9CMm5CRjtBNUZpbXZCTjtBYXRyd0JJO0UrRWtsQkE7SXBCeG5CSTtFeEVndXdCTjtBQUNGO0E0Rm5tdkJJO0VBQ0U7RUFDQTtFcEJob0JFO0F4RXN1d0JSO0FhaHN3Qkk7RStFd2xCQTtJcEI5bkJJO0V4RTB1d0JOO0FBQ0Y7QTRGdm12Qkk7RUFDRTtBNUZ5bXZCTjs7QTRGam12QkE7RUEyQkU7OzBEQUFBO0E1RjRrdkJGO0E0RnJtdkJFO0VBQ0U7QTVGdW12Qko7QWFqdHdCSTtFK0U0bUJBO0lBRUk7SUFDQTtFNUZ1bXZCTjtFNEZwbXZCUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0Esd0NyRmdONEI7SXFGL001QjtFNUZzbXZCVjtBQUNGO0E0RjNsdkJJO0VBQ0U7RXBCOXFCRTtFb0JnckJGO0E1RjZsdkJOO0FhdnV3Qkk7RStFdW9CQTtJcEI3cUJJO0V4RWl4d0JOO0FBQ0Y7QTRGOWx2Qk07RUFDRTtBNUZnbXZCUjtBNEY1bHZCSTtFcEJ6ckJJO0F4RXd4d0JSO0E0RjVsdkJNO0VBQ0UsZ0JwRi9uQlc7RW9GZ29CWDtBNUY4bHZCUjtBNEYzbHZCTTtFQUNFO0VwQmhyQkU7RUFBQTtFb0JrckJGLHNCRDd0Qm1CO0EzRjJ6d0IzQjtBNEY1bHZCUTtFcEJwckJFO0F4RW14d0JWO0FhL3Z3Qkk7RStFZ3FCSTtJcEJwckJFO0V4RXV4d0JSO0FBQ0Y7QTRGL2x2Qk07RUFDRTtFQUNBO0VBQ0E7QTVGaW12QlI7QTRGN2x2Qkk7RXBCbHRCSTtFb0JvdEJGO0VBQ0E7QTVGK2x2Qk47QTRGN2x2Qk07RUFDRTtFQUNBO0VBQ0E7QTVGK2x2QlI7QTRGNWx2Qk07RUFDRTtBNUY4bHZCUjtBYXp3d0JJO0UrRTBxQkU7SUFHSTtFNUZnbXZCUjtBQUNGO0E0RjlsdkJRO0VBQ0U7QTVGZ212QlY7QTRGNWx2Qk07RUFDRTtBNUY4bHZCUjtBNEY1bHZCUTtFQUNFO0VBQ0EsZ0JwRi9xQlM7QVI2d3dCbkI7QTRGNWx2QlU7RUFDRTtFQUNBLGdCckY5SmtCO0VpRW5sQnRCO0F4RWcxd0JSO0E0RjFsdkJRO0VwQnR2QkE7RW9Cd3ZCRTtFQUNBO0VBQ0EsZ0JwRjVyQlM7RW9GNnJCVCxjcEZ6ckJhO0FScXh3QnZCO0E0RnpsdkJRO0VwQjl2QkE7QXhFMDF3QlI7QXdFeHp3Qk07RW9CK3RCTTtBNUY0bHZCWjtBd0UzendCTTtFb0IrdEJNO0E1RitsdkJaO0F3RXR6d0JJO0VBQ0U7SW9Cc3RCTTtFNUZtbXZCVjtBQUNGO0E0RjlsdkJNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVGZ212QlI7QTRGOWx2QlE7RUFDRTtBNUZnbXZCVjtBNEY5bHZCVTtFQUNFLGdCcEZudEJPO0VvRm90QlA7QTVGZ212Qlo7O0E0RnRsdkJBO0VBQ0U7QTVGeWx2QkY7O0E0RnRsdkJBO0VBQ0U7QTVGeWx2QkY7QTRGeGx2QkU7RXBCbHlCTTtBeEU2M3dCUjtBYXYxd0JJO0UrRTR2QkY7SXBCbHlCTTtFeEVpNHdCTjtBQUNGO0E0RjVsdkJFO0VBQ0U7QTVGOGx2Qko7QTRGM2x2QkU7RUFDRTtBNUY2bHZCSjtBNEYzbHZCSTtFQUNFO0VBQ0E7RUFDQSxjcEY1eEJnQjtBUnkzd0J0QjtBNEZ6bHZCRTtFQUNFO0VBQ0E7RUFDQSx5QnBGbnlCa0I7QVI4M3dCdEI7QTRGMWx2Qkk7RUFDRTtBNUY0bHZCTjtBNEYxbHZCSTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGNwRjN5QmdCO0FSdTR3QnRCO0E0RjFsdkJJO0VBQ0U7QTVGNGx2Qk47QTRGMWx2Qkk7Ozs7O0VBS0Usc0JwRi95QkU7QVIyNHdCUjs7QTRGdmx2QkE7RUFDRSxnQnBGanhCaUI7RW9Ga3hCakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUYwbHZCRjtBNEZ4bHZCRTtFQUNFO0E1RjBsdkJKO0E0RnpsdkJJO0VBQW1CO0E1RjRsdkJ2QjtBNEYzbHZCSTtFQUF3QjtBNUY4bHZCNUI7QTRGMWx2Qkk7RUFBbUI7QTVGNmx2QnZCO0E0RjVsdkJJO0VBQXdCO0E1RitsdkI1Qjs7QTRGMWx2QkU7OztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBOzs7Ozs7R0FBQTtBNUZtbXZCSjs7QTRGemx2QkE7Ozs7O0NBQUE7QUNsNUJBOzt3REFBQTtBQU9NO0VBQ0U7QTdGZy93QlI7QTZGMyt3QkU7RUFDRTtBN0Y2K3dCSjtBNkYzK3dCSTtFQUNFO0E3RjYrd0JOO0E2RjMrd0JNO0VBQ0U7RUFDQTtFQUNBLGNyRnVCYztFZ0VGWjtBeEV5OXdCVjtBYXI4d0JJO0VnRjVDRTtJckJ3Qkk7RXhFNjl3QlI7QUFDRjtBNkY5K3dCSTtFckJnQk07QXhFaSt3QlY7QWE3OHdCSTtFZ0ZwQ0E7SXJCZ0JNO0V4RXErd0JSO0FBQ0Y7QWFsOXdCSTtFZ0ZwQ0E7SXJCZ0JNO0V4RTArd0JSO0FBQ0Y7QTZGdi93Qkk7RXJCTkk7RXFCUUY7RUFDQSxjckZJUTtFcUZIUixnQnJGb0RhO0VxRm5EYjtFQUNBO0VBQ0E7QTdGeS93Qk47QTZGdC93Qkk7RXJCRU07RUFBQTtFQUFBO0VBQUE7RXFCR0o7RUFDQTtFQUNBO0E3Rncvd0JOO0Fheit3Qkk7RWdGdEJBO0lyQkVNO0lBQUE7RXhFa2d4QlI7QUFDRjtBYS8rd0JJO0VnRnRCQTtJckJFTTtJQUFBO0V4RXdneEJSO0FBQ0Y7QWFyL3dCSTtFZ0Z0QkE7SXJCRU07SUFBQTtFeEU4Z3hCUjtBQUNGO0FhMy93Qkk7RWdGdEJBO0lyQkVNO0lBQUE7RXhFb2h4QlI7QUFDRjtBYWpneEJJO0VnRnRCQTtJckJFTTtJQUFBO0V4RTBoeEJSO0FBQ0Y7QWF2Z3hCSTtFZ0Z0QkE7SXJCRU07SUFBQTtFeEVnaXhCUjtBQUNGO0FhN2d4Qkk7RWdGdEJBO0lyQkVNO0lBQUE7RXhFc2l4QlI7QUFDRjtBYW5oeEJJO0VnRnRCQTtJckJFTTtJQUFBO0V4RTRpeEJSO0FBQ0Y7QTZGdGl4Qk07RUFDRTtBN0Z3aXhCUjtBNkZyaXhCTTtFQUNFO0VBQ0E7QTdGdWl4QlI7QTZGcml4QlE7RUFDRTtFQUNBO0E3RnVpeEJWO0E2Rm5peEJNOztFQUVFO0E3RnFpeEJSO0E2RmxpeEJNO0VBNUJGO0lBNkJJO0lBQ3dDO0U3RnFpeEI5QztFNkZyaXhCTTtJQUFxQjtFN0Z3aXhCM0I7QUFDRjtBYXBpeEJJO0VnRkRBO0lBRUk7RTdGdWl4Qk47QUFDRjtBNkY1aHhCTTtFQUNFO0E3RjhoeEJSO0Fhemp4Qkk7RWdGOEJFO0lBRUk7SUFDQTtFN0Y2aHhCUjtBQUNGO0E2RjFoeEJNO0VyQjNFRTtFcUI2RUEsY3JGekRjO0VxRjBEZDtBN0Y0aHhCUjtBNkZ6aHhCTTtFckJqRkU7QXhFNm14QlI7QTZGemd4QkE7O3dEQUFBO0FBS0U7RUFDRTtFckIxR0k7RXFCNEdKO0E3RnlneEJKO0E2RnRneEJFO0VBQ0U7QTdGd2d4Qko7QTZGcGd4Qkk7RUFDRTtBN0ZzZ3hCTjs7QTZGaGd4QkE7O3dEQUFBO0FBS0U7O0VyQjlHUTtBeEVpbnhCVjtBYTdseEJJO0VnRjBGRjs7SXJCOUdRO0V4RXNueEJSO0FBQ0Y7QTZGdmd4Qkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0EsY3JGbEhnQjtBUjRueEJ0QjtBNkZyZ3hCSTs7RUFDRTtFQUNBO0VBQ0EsZ0JyRmhGYTtFcUZpRmIsY3JGM0hnQjtBUm1veEJ0QjtBNkZyZ3hCSTs7RUFDRTtBN0Z3Z3hCTjtBNkZwZ3hCTTs7RXJCdkpFO0F4RStweEJSOztBNkY3L3dCQTs7d0RBQUE7QUFNTTtFQUNFO0VBQ0EsZ0JyRjVHVztBUnlteEJuQjtBNkZyL3dCSTs7O0VBQ0U7RUFDQTtFQUNBO0E3Rnkvd0JOO0E2RnYvd0JNOzs7RXJCdkxFO0VxQnlMQTtFQUNBLGNyRjdLTTtFcUY4S04sZ0JyRjdIVztFcUY4SFg7RUFDQTtFQUNBO0E3RjIvd0JSO0FhbnB4Qkk7RWdGaUpFOzs7SXJCdkxFO0V4RStyeEJOO0FBQ0Y7QTZGLy93Qk07OztFQUNFO0VBQ0E7RUFDQSxjckZoTGM7RWdFRlo7QXhFc3J4QlY7QWFscXhCSTtFZ0YySkU7OztJckIvS0k7RXhFNHJ4QlI7QUFDRjtBNkZ2Z3hCTTs7O0VBQ0k7QTdGMmd4QlY7QTZGdmd4Qkk7OztFQUNFLGNyRjFMZ0I7RXFGMkxoQjtBN0YyZ3hCTjtBNkZ0Z3hCSTtFQUNFO0E3RndneEJOO0E2RnBneEJFO0VBQ0U7QTdGc2d4Qko7QTZGcGd4QkU7RUFDRTtBN0ZzZ3hCSjtBNkZyZ3hCSTtFQUNFO0VBQ0E7RUFDQSxnQnJGbkthO0VxRm9LYjtBN0Z1Z3hCTjtBNkZwZ3hCRTtFckJuTlE7QXhFMHR4QlY7QWF0c3hCSTtFZ0YrTEY7SXJCbk5RO0V4RTh0eEJSO0FBQ0Y7QWEzc3hCSTtFZ0YrTEY7SXJCbk5RO0V4RW11eEJSO0FBQ0Y7QWFodHhCSTtFZ0YrTEY7SXJCbk5RO0V4RXd1eEJSO0FBQ0Y7QWFydHhCSTtFZ0YrTEY7SXJCbk5RO0V4RTZ1eEJSO0FBQ0Y7QWExdHhCSTtFZ0YrTEY7SXJCbk5RO0V4RWt2eEJSO0FBQ0Y7O0E4Rjd4eEJFO0VBQ0Usa0J0RnVJc0I7RXNGdEl0QixjdEYwQ2tCO0VzRnpDbEIseUJ0RmdFTTtBUmd1eEJWO0E4Rjl4eEJJO0VBTEY7SUFNSSxrQnRGaUlnQjtFUmdxeEJwQjtBQUNGO0E4Rjl4eEJFOztFQUVFO0E5Rmd5eEJKO0E4Rjl4eEJJOztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlGaXl4Qk47QThGN3h4QkU7RUFDRTtFQUNBO0E5Rit4eEJKO0E4Rjd4eEJJO0VBQ0U7QTlGK3h4Qk47QThGM3h4QkU7RUFDRTtFQUNBO0E5RjZ4eEJKO0E4RjF4eEJFO0VBQ0U7QTlGNHh4Qko7QThGenh4QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RjJ4eEJKO0E4Rnp4eEJJOztFQUVFO0VBQ0EsV3RGSkU7RXNGS0Y7RUFDQTtFQUNBO0VBQ0EsZ0J0RitCaUI7RWdFakVmO0F4RTh6eEJSO0FheHh4Qkk7RWlGWEE7O0l0QjNCSTtFeEVtMHhCTjtBQUNGO0E4Rjd4eEJFO0VBQ0U7RUFDQTtFQUNBLHlCdEZDTTtBUjh4eEJWO0E4Rjd4eEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnRGZ0JpQjtFZ0VqRWY7QXhFaTF4QlI7QWEzeXhCSTtFaUZNQTtJdEI1Q0k7RXhFcTF4Qk47QUFDRjtBOEZqeXhCSTtFQUNFO0VBQ0E7RXRCdkRFO0F4RTIxeEJSO0Fhcnp4Qkk7RWlGZUE7SXRCckRJO0V4RSsxeEJOO0FBQ0Y7QThGcHl4QkU7RUFDRSx5QnRGbEJNO0FSd3p4QlY7QThGbnl4QkU7RUFDRTtBOUZxeXhCSjtBOEZseXhCRTtFQUNFO0VBQ0E7QTlGb3l4Qko7QThGanl4QkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCdEZoQmU7QVJtenhCbkI7QThGaHl4QkU7RUFDRTtFQUNBO0VBQ0E7QTlGa3l4Qko7QThGL3h4QkU7RUFDRTtBOUZpeXhCSjtBOEYveHhCSTtFQUNFO0E5Rml5eEJOO0E4Rjl4eEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Rmd5eEJOO0E4RjV4eEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlGOHh4Qko7QThGNXh4Qkk7RUFDRSxXdEZ4RkU7RXNGeUZGO0VBQ0E7RXRCcEhFO0VzQnNIRix5SHRGOURpQjtFc0YrRGpCLGdCdEZ6RGE7QVJ1MXhCbkI7QWEvMnhCSTtFaUYyRUE7SXRCakhJO0V4RXk1eEJOO0FBQ0Y7QThGL3h4QkU7RUFDRTtBOUZpeXhCSjtBOEY5eHhCRTtFQUNFO0E5Rmd5eEJKO0E4Rjd4eEJFO0VBQ0U7QTlGK3h4Qko7QThGNXh4QkU7RUFDRTtBOUY4eHhCSjtBOEY1eHhCSTtFQUNFO0E5Rjh4eEJOO0E4RjF4eEJFO0VBQ0U7RUFDQTtBOUY0eHhCSjtBOEZ6eHhCRTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0U5RjJ4eEJKO0U4Rnh4eEJFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTlGMHh4Qko7RThGdnh4QkU7SUFDRTtFOUZ5eHhCSjtFOEZ0eHhCRTtJQUNFO0U5Rnd4eEJKO0U4RnJ4eEJFO0lBQ0U7RTlGdXh4Qko7RThGcHh4QkU7SUFDRTtFOUZzeHhCSjtFOEZueHhCRTtJQUNFO0U5RnF4eEJKO0U4Rmp4eEJJO0lBQ0U7RTlGbXh4Qk47RThGaHh4Qkk7SUFDRTtFOUZreHhCTjtFOEY5d3hCRTtJQUNFO0lBQ0E7SUFDQTtFOUZneHhCSjtFOEY3d3hCRTtJQUNFO0U5Rit3eEJKO0U4Rjd3eEJJO0lBQ0U7RTlGK3d4Qk47RThGNXd4Qkk7SUFDRTtFOUY4d3hCTjtFOEYxd3hCRTtJQUNFO0U5RjR3eEJKO0U4RjF3eEJJO0lBQ0U7RTlGNHd4Qk47RThGeHd4QkU7SUFDRTtFOUYwd3hCSjtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FwcC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2Fzcy9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2Fzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tkcm9wLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3ItYmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19mb2N1cy1yaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ljb24tbGluay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvc3dlZXRhbGVydDIvc3JjL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zd2VldGFsZXJ0Mi9zcmMvdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3N3ZWV0YWxlcnQyL3NyYy9zY3NzL19jb3JlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3N3ZWV0YWxlcnQyL3NyYy9zY3NzL19pY29ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zd2VldGFsZXJ0Mi9zcmMvc2Nzcy9fdG9hc3RzLWFuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvc3dlZXRhbGVydDIvc3JjL3Njc3MvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvc3dlZXRhbGVydDIvc3JjL3Njc3MvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zd2VldGFsZXJ0Mi9zcmMvc2Nzcy9fYm9keS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zd2VldGFsZXJ0Mi9zcmMvc2Nzcy9fdG9hc3RzLWJvZHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3Nhc3MvX21peGluLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zYXNzL19hYnNvbHV0ZS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fZG9vZmluZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19oZWFkZXItYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19wcm9kdWN0LWJveC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fc2VjdGlvbi1kaXZpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19wcm9kdWN0cy1oaWdobGlnaHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2Z1bGwtd2lkdGgtaW1hZ2UtYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19kaXNjb3Zlcl9jb2xsZWN0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fbmwtYm94LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19jb21tb24taGVhZGluZy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fcG9wdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX3NlYXJjaC1vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2NvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9faG9tZXBhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19wcm9kdWN0cy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3Byb2R1Y3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19zdGF0aWNfcGFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19jYXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9fYWNjb3VudC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvX3VzZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3BhZ2VzL19hYm91dHVzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcInNhc3MvZm9udHNcIjtcbkBpbXBvcnQgXCJzYXNzL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9ib290c3RyYXAtcmVib290XCI7XG5AaW1wb3J0IFwic2Fzcy9ib290c3RyYXBfdXRpbGl0aWVzXCI7IC8vIG5lZWQgdG8gYmUgaW1wb3J0ZWQgYmVmb3JlIGJvb3RzdHJhcC1ncmlkIGFuZCBhZnRlciBib290c3RyYXAtcmVib290XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC1ncmlkXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZm9ybXNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvbW9kYWxcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3Mvb2ZmY2FudmFzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9kcm9wZG93blwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9hY2NvcmRpb25cIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvdHJhbnNpdGlvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvYWxlcnRcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvbmF2XCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL3RhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9ib290c3RyYXAtdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwifnNsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrXCI7XG5AaW1wb3J0IFwic2Fzcy9taXhpblwiO1xuQGltcG9ydCBcInNhc3MvYmV0dGVyLWVhc2luZ1wiO1xuQGltcG9ydCBcInNhc3MvYWJzb2x1dGVcIjtcbkBpbXBvcnQgXCJ+aGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnNcIjtcbkBpbXBvcnQgXCJ+cGhvdG9zd2lwZS9kaXN0L3Bob3Rvc3dpcGUuY3NzXCI7XG4vLyBAaW1wb3J0IFwifnBob3Rvc3dpcGUvc3JjL2Nzcy9kZWZhdWx0LXNraW4vZGVmYXVsdC1za2luXCI7XG5AaW1wb3J0IFwifnN3ZWV0YWxlcnQyL3NyYy9zd2VldGFsZXJ0MlwiO1xuQGltcG9ydCBcIn5qcXVlcnktdWkvdGhlbWVzL2Jhc2UvYWxsLmNzc1wiO1xuQGltcG9ydCBcIn5AYWR5ZW4vYWR5ZW4td2ViL2Rpc3QvYWR5ZW4uY3NzXCI7XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbW1vbiBzdHlsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4qIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG4uc2YtdG9vbGJhciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmx1Y2lkZSxcbltkYXRhLWx1Y2lkZV0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjJlbTtcbiAgaGVpZ2h0OiAxLjJlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjEyNWVtO1xuICBzdHJva2Utd2lkdGg6IDFweDtcbn1cblxuLyogaU9TLW9ubHktaXNoICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIHRleHRhcmVhLFxuICBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICBtaW4td2lkdGg6IDM1MHB4O1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbm1haW5bcm9sZT1cIm1haW5cIl0ge1xuICBAaW5jbHVkZSBycG1xKG92ZXJmbG93LXgsICh4czogaGlkZGVuLCBtZDogdmlzaWJsZSkpO1xufVxuXG4vKiBPdmVybGF5IGdsb2JhbGUgcGVyIGxvYWRpbmcgQUpBWC9GZXRjaCAqL1xuI2dsb2JhbC1sb2FkaW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbiAgei1pbmRleDogOTk5OTk7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG5cbiNnbG9iYWwtbG9hZGluZy5vbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIExvYWRlciBjaXJjb2xhcmUgKi9cbiNnbG9iYWwtbG9hZGluZyAuZ2wtc3Bpbm5lciB7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IDUycHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgkcHJpbWFyeSwgMC4yMik7XG4gIGJvcmRlci10b3AtY29sb3I6ICRwcmltYXJ5O1xuICBhbmltYXRpb246IGdsb2JhbC1sb2FkZXItc3BpbiAwLjhzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBnbG9iYWwtbG9hZGVyLXNwaW4ge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAjZ2xvYmFsLWxvYWRpbmcgLmdsLXNwaW5uZXIge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS44cztcbiAgfVxufVxuXG4vKiAob3B6aW9uYWxlKSBvc2N1cmEgbG8gc2Nyb2xsL2ludGVyYXppb25pIGRlbCBib2R5ICovXG5ib2R5LmlzLWxvYWRpbmcge1xuICAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5zd2FsMi1iYWNrZHJvcC1zaG93IHtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG59XG5cbi8qIFN0aWxpIHBlcnNvbmFsaXp6YXRpIHBlciBsYSB0b29sdGlwIGRpIGpRdWVyeSBVSSAqL1xuLmN1c3RvbS10b29sdGlwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJyb3duOyAvLyBDb2xvcmUgZGkgc2ZvbmRvIHNjdXJvXG4gIGJvcmRlci1jb2xvcjogJGJyYW5kLWJyb3duO1xuICBjb2xvcjogJHByaW1hcnk7IC8vIENvbG9yZSBkZWwgdGVzdG8gY2hpYXJvXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzOyAvLyBBbmdvbGkgYXJyb3RvbmRhdGlcbiAgcGFkZGluZzogOHB4IDEycHg7IC8vIFNwYXppYXR1cmEgaW50ZXJuYVxuICBmb250LXNpemU6IDE0cHg7IC8vIERpbWVuc2lvbmUgZGVsIHRlc3RvXG4gIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKCRzaGFkb3ctY29sb3IsIDAuMik7IC8vIEFnZ2l1bmdlIHVuJ29tYnJhXG5cbiAgLyogU3RpbGkgcGVyIGxhIGZyZWNjaWEgZGVsbGEgdG9vbHRpcCAqL1xuICAudWktdG9vbHRpcC1jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgLyogUG9zaXppb25hIHNvcHJhIGxhIHRvb2x0aXAgKi9cbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1icm93biB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgLy8gRnJlY2NpYSB0cmlhbmdvbGFyZVxuICB9XG59XG5cbmEge1xuICBjb2xvcjogJHByaW1hcnk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcihcIjpob3ZlclwiIFwiOmZvY3VzXCIpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xufVxuXG4ucGFzc3dvcmQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhc3N3b3JkLXRvZ2dsZS1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogLjc1cmVtO1xuICAvKiByZWdvbGEgc2Ugc2VydmUgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucGFzc3dvcmQtdG9nZ2xlLWJ0biBpIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICAvKiBkaW1lbnNpb25lIGljb25hIEJvb3RzdHJhcCAqL1xufVxuXG4udGV4dC1wcmltYXJ5IHtcbiAgY29sb3I6ICRwcmltYXJ5O1xufVxuXG4uYnRuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMG1zIGVhc2luZygpO1xuICBwYWRkaW5nOiAkaW5wdXQtYnRuLXBhZGRpbmc7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJjpob3ZlcixcbiAgJjpmb2N1czphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAjMDAwO1xuICB9XG5cbiAgJi5idG4tbGcge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1idG4tcGFkZGluZy1sYXJnZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodCAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuLmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xufVxuXG4uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5O1xuICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuXG4uYnRuOmRpc2FibGVkLFxuLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIC5idG4ge1xuICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmRhc2hlZGxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ibGFja1N0cmlwZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ib3hFcnJvciB7XG4gIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAyNHB4LCBtZDogNTBweCkpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJGJyYW5kLWJyb3duO1xuXG4gIC5lcnJvckdlbiB7XG4gICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgcGFkZGluZzogMzBweDtcbiAgfVxufVxuXG4uZXJyb3ItZ2VuLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMTZweDtcbiAgY29sb3I6ICRwcmltYXJ5O1xuICBzdHJva2Utd2lkdGg6IDFweDtcbn1cblxuLmlzLW1vYmlsZS1tZW51LW9wZW4ge1xuICAuZGFzaGVkbGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJyb3duO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgfVxuICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gaW1nIHV0aWxpdHkgY2xhc3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmltZy5iYWNrZ3JvdW5kLWNvdmVyLFxuaW1nLmJhY2tncm91bmQtY29udGFpbiB7XG4gIG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgQGluY2x1ZGUgYWJzb2x1dGUodG9wIHJpZ2h0IGJvdHRvbSBsZWZ0KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDk0JSwgc206IDEwMCUpKTtcbiAgLy8gQGluY2x1ZGUgcnBtcShtYXJnaW4sICh4czogNiUsIHNtOiAwKSk7XG59XG5cbmltZy5iYWNrZ3JvdW5kLWNvdmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIC8vIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbn1cblxuaW1nLmJhY2tncm91bmQtY29udGFpbiB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gbWFpbiBjb250YWluZXIgYW5kIHBhZGRpbmcgY2xhc3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmlzLW1vYmlsZS1tZW51LW9wZW4ge1xuICBtYWluW3JvbGU9XCJtYWluXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5tYWluLXBhZGRpbmcge1xuICBAaW5jbHVkZSBtYWluLXBhZGRpbmcoKTtcblxuICAmLm90aGVyLXBhZ2VzIHtcbiAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogJGhlYWRlci1oZWlnaHQtdG90YWwtbWJsLCBzbTogJGhlYWRlci1oZWlnaHQtdG90YWwpKTtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAoeHM6IDMwcHgsIHNtOiA3MHB4KSk7XG4gIH1cblxuICAmLmFjY291bnQtcGFnZSB7XG4gICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDMwcHggMTVweCwgc206IDcwcHgpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6ICRoZWFkZXItaGVpZ2h0LXRvdGFsLW1ibCwgc206ICRoZWFkZXItaGVpZ2h0LXRvdGFsKSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAqIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICB9XG4gIH1cblxufVxuXG4uYXBwLW1heC13aWR0aCB7XG4gIEBpbmNsdWRlIGFwcC1tYXgtd2lkdGgoKTtcbn1cblxuLmZ1bGwtd2lkdGgge1xuICBAaW5jbHVkZSBycG1xKG1hcmdpbi1sZWZ0IG1hcmdpbi1yaWdodCwgbmVnYXRpdmlmeS1tYXAtc2FtZS1rZXkoJG1haW4tcGFkZGluZykpO1xufVxuXG4uc3ViLW1haW4tcGFkZGluZyB7XG4gIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctbGVmdCBwYWRkaW5nLXJpZ2h0KSwgKHhzOiAxMHB4LCBzbTogMThweCwgbWQ6IDIwcHgsIGxnOiAzMHB4LCB4bDogNTBweCwgeHhsOiA4MHB4KSk7XG59XG5cbi5tYWluLW1hcmdpbiB7XG4gIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tLCBsaW5lYXItaW50ZXJwb2xhdGlvbig1MHB4LCA2MHB4LCB4cywgeHhsKSk7XG59XG5cbi5zdWItbWFpbi1tYXJnaW4ge1xuICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AgbWFyZ2luLWJvdHRvbSwgbGluZWFyLWludGVycG9sYXRpb24oMzBweCwgNDBweCwgeHMsIHh4bCkpO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIHNjcm9sbGJhcnMgc3R5bGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnRoaW4tc2Nyb2xsLFxuLm1lZGl1bS1zY3JvbGwge1xuICBAaW5jbHVkZSBzY3JvbGwtY29sb3JzKCk7XG59XG5cbiR0aGluLXNjcm9sbDogM3B4O1xuJG1lZGl1bS1zY3JvbGw6IDdweDtcblxuLnRoaW4tc2Nyb2xsIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogJHRoaW4tc2Nyb2xsO1xuICAgIGhlaWdodDogJHRoaW4tc2Nyb2xsO1xuICB9XG59XG5cbi50aGluLXNjcm9sbC1oIHtcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogJHRoaW4tc2Nyb2xsO1xuICB9XG59XG5cbi50aGluLXNjcm9sbC12IHtcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAkdGhpbi1zY3JvbGw7XG4gIH1cbn1cblxuLm1lZGl1bS1zY3JvbGwge1xuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6ICRtZWRpdW0tc2Nyb2xsO1xuICAgIGhlaWdodDogJG1lZGl1bS1zY3JvbGw7XG4gIH1cbn1cblxuLm1lZGl1bS1zY3JvbGwtdiB7XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogJG1lZGl1bS1zY3JvbGw7XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBib290c3RyYXAgb3ZlcnJpZGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5idG4ge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbi5hY2NvcmRpb24tYm9keSB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSByZWxhdGl2ZSgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNpbmcoKSwgYm9yZGVyLWNvbG9yIDUwMG1zIGVhc2luZygpLCBib3gtc2hhZG93IDUwMG1zIGVhc2luZygpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBib3JkZXI6IHNvbGlkIDFweCAkcHJpbWFyeTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1czphY3RpdmUge1xuICAgIGNvbG9yOiAkYm9keS1iZyAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmVjb2xvciAhaW1wb3J0YW50O1xuICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAjMDAwO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXIoXCI6aG92ZXJcIikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgLy8gJjo6YWZ0ZXIge1xuICAgIC8vICAgaGVpZ2h0OiAycHg7XG4gICAgLy8gfVxuICB9XG59XG5cbi5idG4tc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgcmVsYXRpdmUoKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNpbmcoKSwgYm9yZGVyLWNvbG9yIDUwMG1zIGVhc2luZygpLCBib3gtc2hhZG93IDUwMG1zIGVhc2luZygpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBib3JkZXI6IHNvbGlkIDFweCAkc2Vjb25kYXJ5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1czphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmVjb2xvciAhaW1wb3J0YW50O1xuICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAjMDAwO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXIoXCI6aG92ZXJcIikge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG5cbiAgICAvLyAmOjphZnRlciB7XG4gICAgLy8gICBoZWlnaHQ6IDJweDtcbiAgICAvLyB9XG4gIH1cbn1cblxuLmJ0bi1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1czphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAjZmZmO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXIoXCI6aG92ZXJcIikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnksXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLmJ0bi1vdXRsaW5lLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cyxcbi5idG4tb3V0bGluZS1kYXJrOmZvY3VzLFxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlLFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmUsXG4uYnRuLW91dGxpbmUtZGFyazphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIsXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyLFxuLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuICB0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzaW5nKCk7XG59XG5cbi5mb3JtLWNvbnRyb2wsXG4uZm9ybS1zZWxlY3QsXG5pbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cInJhbmdlXCJdKTpub3QoW3R5cGU9XCJjb2xvclwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSk6bm90KFt0eXBlPVwiaGlkZGVuXCJdKSxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiAkcHJpbWFyeTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuLmZvcm0tc2VsZWN0IHtcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRwcmltYXJ5LCAwLjI1KTtcbiAgICBjb2xvcjogJHByaW1hcnk7XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbCB7XG4gIHBhZGRpbmc6ICRpbnB1dC1idG4tcGFkZGluZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaW5jbHVkZSBycG1xKG1hcmdpbiwgKHhzOiAwLCBtZDogMCkpO1xuICAvLyBAaW5jbHVkZSBycG1xKGhlaWdodCwgKHhzOiAzNnB4LCBtZDogMzZweCkpO1xuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgkcHJpbWFyeSwgMC4yNSk7XG4gICAgY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzO1xuXG4gICAgLy8gJjpjaGVja2VkW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgLy8gICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuICAgIC8vIH1cblxuICAgICY6Y2hlY2tlZFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJHByaW1hcnksIDAuMjUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tZ3JvdXAge1xuICBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICB9XG59XG5cbi5jb29raWUtYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAtMXB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAkcHJpbWFyeTtcbn1cblxuLmJ0bi1hY2NlcHQtY29va2llcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbjp0YXJnZXQge1xuICBzY3JvbGwtbWFyZ2luLXRvcDogMTIwcHg7XG4gIC8qIE1vZGlmaWNhIGlsIHZhbG9yZSBpbiBiYXNlIGFsbCdhbHRlenphIGRlbGxhIHR1YSBoZWFkZXIgKi9cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTd2FsIG1vZGFsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLnN3YWwtd2lkdGgtMTAwIHtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuXG4uc3dhbC13aWRlIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi5zd2FsLXdpZGVzdCB7XG4gIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zd2FsMi1wb3B1cCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQgIWltcG9ydGFudDtcblxuICAjYmFza2V0LXNoaXBwaW5nLXdhcm5pbmcge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5zaGlwcGluZy1wcm9ncmVzcyB7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHggOHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgLnNoaXBwaW5nLXByb2dyZXNzX19yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgfVxuXG4gICAgLnNoaXBwaW5nLXByb2dyZXNzX19sYWJlbCB7XG4gICAgICBjb2xvcjogJGdyZXk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICB9XG5cbiAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3RyYWNrIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGdyZXk7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5zaGlwcGluZy1wcm9ncmVzc19fZmlsbCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgd2lkdGg6IHZhcigtLXByb2dyZXNzKTtcbiAgICB9XG5cbiAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3BpbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0yNnB4O1xuICAgICAgbGVmdDogY2xhbXAoMTRweCwgdmFyKC0tcHJvZ3Jlc3MpLCBjYWxjKDEwMCUgLSAxNHB4KSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBwYWRkaW5nOiAycHggOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkbWVkZ3JleTtcbiAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3Bpbjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGJvdHRvbTogLTVweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6ICRtZWRncmV5IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5zaGlwcGluZy1wcm9ncmVzc19fdGV4dCB7XG4gICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3N1Y2Nlc3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiA2cHg7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIC5zaGlwcGluZy1wcm9ncmVzc19faWNvbiB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgfVxuICB9XG59XG5cbi5zd2FsMi1jb250YWluZXIge1xuICAmLnN3YWwyLWNlbnRlciB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuXG4gIC5zd2FsMi1tb2RhbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogNDVlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAuc3dhbDItaHRtbC1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBzbTogMTZweCwgKSk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zd2FsMi1lcnJvciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnN3YWwyLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJHByaW1hcnk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIHBhZGRpbmc6IDRweDtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5zd2FsMi10aXRsZSB7XG4gICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMjBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgsIHNtOiAyMHB4LCApKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICB9XG5cbiAgICAuc3dhbDItYWN0aW9ucyB7XG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMHB4IDEwJSwgbWQ6IDBweCAyMCUpKTtcbiAgICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcblxuICAgICAgICAmLnN3YWwyLWNhbmNlbDpob3ZlciB7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vICYuc3dhbDItY29uZmlybTpob3ZlciB7XG4gICAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIC8vICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgLy8gICBvcGFjaXR5OiAwLjg7XG4gICAgICAgIC8vIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzaGlwcGluZy1wcm9ncmVzcy1maWxsIHtcbiAgZnJvbSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICB0byB7XG4gICAgd2lkdGg6IHZhcigtLXByb2dyZXNzKTtcbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1vYmlsZSBtZW51IG1vZGFsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uc3dhbC1tb2JpbGUtbWVudSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcblxuICAuc3dhbDItY29udGVudCB7XG4gICAgLy9wYWRkaW5nOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMHB4IDBweCAwcHggNDVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAtNDNweDtcblxuICAgIC5zd2FsLW1vZGFsLWxvZ28ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjY2NjY2M7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgIGEge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcC5tZW51LWNvbC10aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIHAubW9kYWwtY2F0LWxldmVsMiB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICB9XG5cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cblxuICAgICAgJi50aXRDYXQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IGxhcmdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1jYXQtbGV2ZWwzLXJvd01lbnUtbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAubW9kYWwtY2F0LWxldmVsMy1jb2x1bW4tY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjY2NjY2NjO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgIC5tb2RhbC1jYXQtbGV2ZWwzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICYubW9kYWwtY2F0LWxldmVsMy1pbmRlbnRlZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuXG4gICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN3YWwyLWNhbmNlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICBsZWZ0OiAxNHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHNvbGlkIDBweCAjY2NjO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9jbG9zZS5naWZcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTbGljayBzdHlsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2xpY2stZG90cyB7XG4gIEBpbmNsdWRlIGFic29sdXRlKGxlZnQgMCByaWdodCAwKTtcbiAgQGluY2x1ZGUgcnBtcShib3R0b20sICh4czogLTE4cHgsIG1kOiAzMHB4LCApKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgQGluY2x1ZGUgcnBtcShtYXJnaW4sICh4czogMCA1cHgsIHNtOiAwIDEwcHgsICkpO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAzMHB4LCBzbTogMzBweCwgbWQ6IDQwcHgsICkpO1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUoYm90dG9tIDEwcHggbGVmdCByaWdodCk7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZDRkNDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGhlaWdodDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNpbmcoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLWFycm93IHtcbiAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IG5vbmUgIWltcG9ydGFudCwgc206IGJsb2NrICFpbXBvcnRhbnQpKTtcbn1cblxuLmlzLW1vYmlsZS1tZW51LW9wZW4ge1xuICAuYnJlYWRjcnVtYi1uYXYge1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5uYXYuYnJlYWRjcnVtYi1uYXYge1xuICB3aWR0aDogYXV0bztcbiAgQGluY2x1ZGUgcnBtcSgobWFyZ2luLWJvdHRvbSksIChtYmw6IDAsIGRzazogMCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi10b3ApLCAobWJsOiAwLCBkc2s6IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuXG4gIC5icmVhZGNydW1iIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxM3B4LCBtZDogMTRweCkpO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXG4gICAgICArLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICBwYWRkaW5nOiAzcHggMHB4IDNweCA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmc6IDNweCA1cHggM3B4IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTNweCwgbWQ6IDEzcHgpKTtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkOjpiZWZvcmUge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC8vICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLy8gICAmOjpiZWZvcmUge1xuICAgICAgLy8gICAgIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgICAgIC8vICAgfVxuICAgICAgLy8gfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxM3B4LCBtZDogMTNweCkpO1xuICAgICAgfVxuXG4gICAgICAub2staWNvbiB7XG4gICAgICAgIGZpbGw6ICRicmFuZC1icm93bjtcbiAgICAgICAgc3Ryb2tlOiAkYnJhbmQtYnJvd247XG4gICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGNvbW1vbiBjb21wb25lbnRzIHN0eWxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL2Rvb2ZpbmRlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaGVhZGVyLWJhbm5lclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcHJvZHVjdC1ib3hcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlY3Rpb24tZGl2aWRlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcHJvZHVjdHMtaGlnaGxpZ2h0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mdWxsLXdpZHRoLWltYWdlLWJhbm5lclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZGlzY292ZXJfY29sbGVjdGlvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL25sLWJveFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2NvbW1vbi1oZWFkaW5nXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcG9wdXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlYXJjaC1vZmZjYW52YXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2hlYWRlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZm9vdGVyXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gcGFnZSBzcGVjaWZpYyBzdHlsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwicGFnZXMvaG9tZXBhZ2VcIjtcbkBpbXBvcnQgXCJwYWdlcy9wcm9kdWN0c1wiO1xuQGltcG9ydCBcInBhZ2VzL3Byb2R1Y3RcIjtcbkBpbXBvcnQgXCJwYWdlcy9zdGF0aWNfcGFnZXNcIjtcbkBpbXBvcnQgXCJwYWdlcy9jYXJ0XCI7XG5AaW1wb3J0IFwicGFnZXMvYWNjb3VudFwiO1xuQGltcG9ydCBcInBhZ2VzL3VzZXJcIjtcbkBpbXBvcnQgXCJwYWdlcy9hYm91dHVzXCI7XG4iLCIvKiA9PT0gRm9udHMgKEFkb2JlICsgR29vZ2xlKSA9PT0gKi9cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvYXpxMHJmZy5jc3NcIik7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TW9udHNlcnJhdDp3Z2h0QDMwMDs0MDA7NTAwOzYwMDs3MDAmZGlzcGxheT1zd2FwXCIpO1xuXG4vKiBTZSBwcmVmZXJpc2NpIHNlbGYtaG9zdGVkLCBzb3N0aXR1aXNjaSBsJ2ltcG9ydCBjb24gQGZvbnQtZmFjZSBsb2NhbGkuXG4gICBQZXJjb3JzbzogcmVnb2xhIGB1cmwoKWAgc2UgaWwgdHVvIFNDU1MgY29tcGlsYSBhbHRyb3ZlLlxuICAgRXNlbXBpIGNvbXVuaTpcbiAgIC0gU2UgcXVlc3RvIFNDU1Mgc3RhIGluIGFzc2V0cy9zY3NzLywgdXNhIHVybCgnLi4vZm9udHMvLi4uJylcbiAgIC0gU2Ugc2VydmkgL2Fzc2V0cy8gc3RhdGljbywgdXNhIHVybCgnL2Fzc2V0cy9mb250cy8uLi4nKSAqL1xuIiwiQG1peGluIGJzQmFubmVyKCRmaWxlKSB7XG4gIC8qIVxuICAgKiBCb290c3RyYXAgI3skZmlsZX0gdjUuMy4zIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICAgKiBDb3B5cmlnaHQgMjAxMS0yMDI0IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICAgKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAgICovXG59XG4iLCI6cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyRwcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dCB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9keS12YXJpYWJsZXNcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZTogI3skZm9udC1zaXplLXJvb3R9O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHk6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktYmFzZSl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZS1iYXNlLCAtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yKX07XG5cbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvcn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1saW5rLWRlY29yYXRpb246ICN7JGxpbmstZGVjb3JhdGlvbn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvcil9O1xuXG4gIEBpZiAkbGluay1ob3Zlci1kZWNvcmF0aW9uICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItZGVjb3JhdGlvbjogI3skbGluay1ob3Zlci1kZWNvcmF0aW9ufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvcmRlci12YXJcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoOiAjeyRib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItc3R5bGU6ICN7JGJvcmRlci1zdHlsZX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnR9O1xuXG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtOiAjeyRib3JkZXItcmFkaXVzLXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZzogI3skYm9yZGVyLXJhZGl1cy1sZ307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGw6ICN7JGJvcmRlci1yYWRpdXMteGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bDogI3skYm9yZGVyLXJhZGl1cy14eGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKTsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjAgZm9yIGNvbnNpc3RlbmN5XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbDogI3skYm9yZGVyLXJhZGl1cy1waWxsfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvcmRlci12YXJcblxuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93OiAjeyRib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbTogI3skYm94LXNoYWRvdy1zbX07XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGc6ICN7JGJveC1zaGFkb3ctbGd9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0OiAjeyRib3gtc2hhZG93LWluc2V0fTtcblxuICAvLyBGb2N1cyBzdHlsZXNcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9jdXMtdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGg6ICN7JGZvY3VzLXJpbmctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLW9wYWNpdHk6ICN7JGZvY3VzLXJpbmctb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3I6ICN7JGZvY3VzLXJpbmctY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9jdXMtdmFyaWFibGVzXG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgY29sb3Itc2NoZW1lOiBkYXJrO1xuXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZy1kYXJrKX07XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZyk7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6IHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBvbmx5IGZyb20gdGV4dCB0eXBlIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cyBpbiBDaHJvbWUuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTpub3QoW3R5cGU9XCJkYXRlXCJdKTpub3QoW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSk6bm90KFt0eXBlPVwibW9udGhcIl0pOm5vdChbdHlwZT1cIndlZWtcIl0pOm5vdChbdHlwZT1cInRpbWVcIl0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyAvLyAxXG59XG5cbi8vIDEuIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDJcbiAgYm9yZGVyOiAwOyAvLyAyXG59XG5cbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBUaGlzIHdheSB0aGUgYm9yZGVyIG9mIGEgZmllbGRzZXQgd3JhcHMgYXJvdW5kIHRoZSBsZWdlbmQgaWYgcHJlc2VudC5cbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDsgLy8gMVxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlZ2VuZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgKyAqIHtcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxuICB9XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gMS4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAvI3Zpc3VhbC1hdWRpby1jb250cmFzdC1jb250cmFzdFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuJGJsdWUtMjAwOiB0aW50LWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNTAwOiAkYmx1ZSAhZGVmYXVsdDtcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtODAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRpbmRpZ28tMTAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNDAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby03MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMzAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XG4kcHVycGxlLTYwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTkwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcblxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuJHBpbmstMjAwOiB0aW50LWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNTAwOiAkcGluayAhZGVmYXVsdDtcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstODAwOiBzaGFkZS1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG5cbiRyZWQtMTAwOiB0aW50LWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtNDAwOiB0aW50LWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC03MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcblxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAkeWVsbG93ICFkZWZhdWx0O1xuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG5cbiRncmVlbi0xMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi00MDA6IHRpbnQtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6IHRpbnQtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xuJHRlYWwtNjAwOiBzaGFkZS1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtOTAwOiBzaGFkZS1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcblxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuJGN5YW4tMjAwOiB0aW50LWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAkY3lhbiAhZGVmYXVsdDtcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tODAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiRibHVlczogKFxuICBcImJsdWUtMTAwXCI6ICRibHVlLTEwMCxcbiAgXCJibHVlLTIwMFwiOiAkYmx1ZS0yMDAsXG4gIFwiYmx1ZS0zMDBcIjogJGJsdWUtMzAwLFxuICBcImJsdWUtNDAwXCI6ICRibHVlLTQwMCxcbiAgXCJibHVlLTUwMFwiOiAkYmx1ZS01MDAsXG4gIFwiYmx1ZS02MDBcIjogJGJsdWUtNjAwLFxuICBcImJsdWUtNzAwXCI6ICRibHVlLTcwMCxcbiAgXCJibHVlLTgwMFwiOiAkYmx1ZS04MDAsXG4gIFwiYmx1ZS05MDBcIjogJGJsdWUtOTAwXG4pICFkZWZhdWx0O1xuXG4kaW5kaWdvczogKFxuICBcImluZGlnby0xMDBcIjogJGluZGlnby0xMDAsXG4gIFwiaW5kaWdvLTIwMFwiOiAkaW5kaWdvLTIwMCxcbiAgXCJpbmRpZ28tMzAwXCI6ICRpbmRpZ28tMzAwLFxuICBcImluZGlnby00MDBcIjogJGluZGlnby00MDAsXG4gIFwiaW5kaWdvLTUwMFwiOiAkaW5kaWdvLTUwMCxcbiAgXCJpbmRpZ28tNjAwXCI6ICRpbmRpZ28tNjAwLFxuICBcImluZGlnby03MDBcIjogJGluZGlnby03MDAsXG4gIFwiaW5kaWdvLTgwMFwiOiAkaW5kaWdvLTgwMCxcbiAgXCJpbmRpZ28tOTAwXCI6ICRpbmRpZ28tOTAwXG4pICFkZWZhdWx0O1xuXG4kcHVycGxlczogKFxuICBcInB1cnBsZS0xMDBcIjogJHB1cnBsZS0xMDAsXG4gIFwicHVycGxlLTIwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMzAwXCI6ICRwdXJwbGUtMzAwLFxuICBcInB1cnBsZS00MDBcIjogJHB1cnBsZS00MDAsXG4gIFwicHVycGxlLTUwMFwiOiAkcHVycGxlLTUwMCxcbiAgXCJwdXJwbGUtNjAwXCI6ICRwdXJwbGUtNjAwLFxuICBcInB1cnBsZS03MDBcIjogJHB1cnBsZS03MDAsXG4gIFwicHVycGxlLTgwMFwiOiAkcHVycGxlLTgwMCxcbiAgXCJwdXJwbGUtOTAwXCI6ICRwdXJwbGUtOTAwXG4pICFkZWZhdWx0O1xuXG4kcGlua3M6IChcbiAgXCJwaW5rLTEwMFwiOiAkcGluay0xMDAsXG4gIFwicGluay0yMDBcIjogJHBpbmstMjAwLFxuICBcInBpbmstMzAwXCI6ICRwaW5rLTMwMCxcbiAgXCJwaW5rLTQwMFwiOiAkcGluay00MDAsXG4gIFwicGluay01MDBcIjogJHBpbmstNTAwLFxuICBcInBpbmstNjAwXCI6ICRwaW5rLTYwMCxcbiAgXCJwaW5rLTcwMFwiOiAkcGluay03MDAsXG4gIFwicGluay04MDBcIjogJHBpbmstODAwLFxuICBcInBpbmstOTAwXCI6ICRwaW5rLTkwMFxuKSAhZGVmYXVsdDtcblxuJHJlZHM6IChcbiAgXCJyZWQtMTAwXCI6ICRyZWQtMTAwLFxuICBcInJlZC0yMDBcIjogJHJlZC0yMDAsXG4gIFwicmVkLTMwMFwiOiAkcmVkLTMwMCxcbiAgXCJyZWQtNDAwXCI6ICRyZWQtNDAwLFxuICBcInJlZC01MDBcIjogJHJlZC01MDAsXG4gIFwicmVkLTYwMFwiOiAkcmVkLTYwMCxcbiAgXCJyZWQtNzAwXCI6ICRyZWQtNzAwLFxuICBcInJlZC04MDBcIjogJHJlZC04MDAsXG4gIFwicmVkLTkwMFwiOiAkcmVkLTkwMFxuKSAhZGVmYXVsdDtcblxuJG9yYW5nZXM6IChcbiAgXCJvcmFuZ2UtMTAwXCI6ICRvcmFuZ2UtMTAwLFxuICBcIm9yYW5nZS0yMDBcIjogJG9yYW5nZS0yMDAsXG4gIFwib3JhbmdlLTMwMFwiOiAkb3JhbmdlLTMwMCxcbiAgXCJvcmFuZ2UtNDAwXCI6ICRvcmFuZ2UtNDAwLFxuICBcIm9yYW5nZS01MDBcIjogJG9yYW5nZS01MDAsXG4gIFwib3JhbmdlLTYwMFwiOiAkb3JhbmdlLTYwMCxcbiAgXCJvcmFuZ2UtNzAwXCI6ICRvcmFuZ2UtNzAwLFxuICBcIm9yYW5nZS04MDBcIjogJG9yYW5nZS04MDAsXG4gIFwib3JhbmdlLTkwMFwiOiAkb3JhbmdlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHllbGxvd3M6IChcbiAgXCJ5ZWxsb3ctMTAwXCI6ICR5ZWxsb3ctMTAwLFxuICBcInllbGxvdy0yMDBcIjogJHllbGxvdy0yMDAsXG4gIFwieWVsbG93LTMwMFwiOiAkeWVsbG93LTMwMCxcbiAgXCJ5ZWxsb3ctNDAwXCI6ICR5ZWxsb3ctNDAwLFxuICBcInllbGxvdy01MDBcIjogJHllbGxvdy01MDAsXG4gIFwieWVsbG93LTYwMFwiOiAkeWVsbG93LTYwMCxcbiAgXCJ5ZWxsb3ctNzAwXCI6ICR5ZWxsb3ctNzAwLFxuICBcInllbGxvdy04MDBcIjogJHllbGxvdy04MDAsXG4gIFwieWVsbG93LTkwMFwiOiAkeWVsbG93LTkwMFxuKSAhZGVmYXVsdDtcblxuJGdyZWVuczogKFxuICBcImdyZWVuLTEwMFwiOiAkZ3JlZW4tMTAwLFxuICBcImdyZWVuLTIwMFwiOiAkZ3JlZW4tMjAwLFxuICBcImdyZWVuLTMwMFwiOiAkZ3JlZW4tMzAwLFxuICBcImdyZWVuLTQwMFwiOiAkZ3JlZW4tNDAwLFxuICBcImdyZWVuLTUwMFwiOiAkZ3JlZW4tNTAwLFxuICBcImdyZWVuLTYwMFwiOiAkZ3JlZW4tNjAwLFxuICBcImdyZWVuLTcwMFwiOiAkZ3JlZW4tNzAwLFxuICBcImdyZWVuLTgwMFwiOiAkZ3JlZW4tODAwLFxuICBcImdyZWVuLTkwMFwiOiAkZ3JlZW4tOTAwXG4pICFkZWZhdWx0O1xuXG4kdGVhbHM6IChcbiAgXCJ0ZWFsLTEwMFwiOiAkdGVhbC0xMDAsXG4gIFwidGVhbC0yMDBcIjogJHRlYWwtMjAwLFxuICBcInRlYWwtMzAwXCI6ICR0ZWFsLTMwMCxcbiAgXCJ0ZWFsLTQwMFwiOiAkdGVhbC00MDAsXG4gIFwidGVhbC01MDBcIjogJHRlYWwtNTAwLFxuICBcInRlYWwtNjAwXCI6ICR0ZWFsLTYwMCxcbiAgXCJ0ZWFsLTcwMFwiOiAkdGVhbC03MDAsXG4gIFwidGVhbC04MDBcIjogJHRlYWwtODAwLFxuICBcInRlYWwtOTAwXCI6ICR0ZWFsLTkwMFxuKSAhZGVmYXVsdDtcblxuJGN5YW5zOiAoXG4gIFwiY3lhbi0xMDBcIjogJGN5YW4tMTAwLFxuICBcImN5YW4tMjAwXCI6ICRjeWFuLTIwMCxcbiAgXCJjeWFuLTMwMFwiOiAkY3lhbi0zMDAsXG4gIFwiY3lhbi00MDBcIjogJGN5YW4tNDAwLFxuICBcImN5YW4tNTAwXCI6ICRjeWFuLTUwMCxcbiAgXCJjeWFuLTYwMFwiOiAkY3lhbi02MDAsXG4gIFwiY3lhbi03MDBcIjogJGN5YW4tNzAwLFxuICBcImN5YW4tODAwXCI6ICRjeWFuLTgwMCxcbiAgXCJjeWFuLTkwMFwiOiAkY3lhbi05MDBcbikgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXM6ICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzOiAgICBzaGFkZS1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXM6ICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzOiAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkcHJpbWFyeSwgODAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYmctc3VidGxlOiAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlOiAgICAgICAgICB0aW50LWNvbG9yKCRpbmZvLCA4MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGU6ICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlOiAgICAgICAgIG1peCgkZ3JheS0xMDAsICR3aGl0ZSkgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGU6ICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZTogdGludC1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZTogICAgICB0aW50LWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlOiAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZTogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGU6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jb250YWluZXItY2xhc3NlczogICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY3NzZ3JpZDogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuJGVuYWJsZS1kYXJrLW1vZGU6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRjb2xvci1tb2RlLXR5cGU6ICAgICAgICAgICAgIGRhdGEgIWRlZmF1bHQ7IC8vIGBkYXRhYCBvciBgbWVkaWEtcXVlcnlgXG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wIGZvciB0aGUgc2hvcnRlciBgJHByZWZpeGBcbiRwcmVmaXg6ICAgICAgICAgICAgICAgICAgICAgICR2YXJpYWJsZS1wcmVmaXggIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktdGV4dC1hbGlnbjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGJvZHktc2Vjb25kYXJ5LWNvbG9yOiAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kYm9keS10ZXJ0aWFyeS1jb2xvcjogICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjUpICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktYmc6ICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGJvZHktZW1waGFzaXMtY29sb3I6ICAgICAgICRibGFjayAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogICAgICAgICAgICAgICAgICAgMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4vLyBJY29uIGxpbmtzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaWNvbi1saW5rLXZhcmlhYmxlc1xuJGljb24tbGluay1nYXA6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDogIC4yNWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXNpemU6ICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zaXRpb246ICAgLjJzIGVhc2UtaW4tb3V0IHRyYW5zZm9ybSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZTNkKC4yNWVtLCAwLCAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaWNvbi1saW5rLXZhcmlhYmxlc1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweCxcbiAgeHhsOiAxNDAwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci12YXJpYWJsZXNcbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGhzOiAoXG4gIDE6IDFweCxcbiAgMjogMnB4LFxuICAzOiAzcHgsXG4gIDQ6IDRweCxcbiAgNTogNXB4XG4pICFkZWZhdWx0O1xuJGJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgc29saWQgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAgICByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteHhsOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuLy8gZnVzdi1kaXNhYmxlXG4kYm9yZGVyLXJhZGl1cy0yeGw6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy14eGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuJGZvY3VzLXJpbmctd2lkdGg6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctb3BhY2l0eTogICAgLjI1ICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctY29sb3I6ICAgICAgcmdiYSgkcHJpbWFyeSwgJGZvY3VzLXJpbmctb3BhY2l0eSkgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ibHVyOiAgICAgICAwICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYm94LXNoYWRvdzogMCAwICRmb2N1cy1yaW5nLWJsdXIgJGZvY3VzLXJpbmctd2lkdGggJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvY3VzLXJpbmctdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1tZWRpdW06ICAgICAgICAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogICAgICAgIDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXN0eWxlOiAgbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiA1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kaHItYmctY29sb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuJGhyLWhlaWdodDogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIEFsbG93cyBmb3IgaW5oZXJpdGVkIGNvbG9yc1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kaHItb3BhY2l0eTogICAgICAgICAgICAgICAgICAuMjUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCB2ci12YXJpYWJsZXNcbiR2ci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2ci12YXJpYWJsZXNcblxuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4xODc1ZW0gIWRlZmF1bHQ7XG4kbWFyay1jb2xvcjogICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmctZmFjdG9yOiAgICAgICAuMDc1ICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItZmFjdG9yOiAgICAgICAgIC4yICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcjogZXZlbiAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudGNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgJGZvY3VzLXJpbmctd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6ICRmb2N1cy1yaW5nLW9wYWNpdHkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ibHVyOiAgICAgICAgICAkZm9jdXMtcmluZy1ibHVyICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1idG4tdmFyaWFibGVzXG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhYmxlc1xuJGJ0bi1jb2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJ0bi1saW5rLWZvY3VzLXNoYWRvdy1yZ2I6ICAgdG8tcmdiKG1peChjb2xvci1jb250cmFzdCgkbGluay1jb2xvciksICRsaW5rLWNvbG9yLCAxNSUpKSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRidG4taG92ZXItYmctc2hhZGUtYW1vdW50OiAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50OiAgICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50OiAgIDIwJSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50OiAgICAxMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQ6ICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQ6ICAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAyNSUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQ6ICAgMTAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFibGVzXG5cblxuLy8gRm9ybXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdGV4dC12YXJpYWJsZXNcbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tbGFiZWwtdmFyaWFibGVzXG4kZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1sYWJlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0taW5wdXQtdmFyaWFibGVzXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAyKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogICAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdtNiAxMCAzIDMgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMicgZmlsbD0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTogICAgJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDogICAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1jaGVjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgIDJlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlOiAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzOiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbjogICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3I6ICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZTogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlOiAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1ncm91cC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgICAgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgZm9yIGJhY2tncm91bmQtaW1hZ2VcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbjogICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1yYW5nZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmlsZS12YXJpYWJsZXNcbiRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWhlaWdodDogICAgICAgICAgICAgICAgICBhZGQoMy41cmVtLCAkaW5wdXQtaGVpZ2h0LWJvcmRlcikgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDogICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy15OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgICAgICAgMS42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDogICAgICAgICAgICAxLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6ICAgICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgICAgICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG4kZm9ybS12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2VzcyksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3IpLFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlciksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fWRhbmdlci1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wOiAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDQ1ICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTUgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9hc3Q6ICAgICAgICAgICAgICAgICAgICAgIDEwOTAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LWxldmVscy1tYXBcbiR6aW5kZXgtbGV2ZWxzOiAoXG4gIG4xOiAtMSxcbiAgMDogMCxcbiAgMTogMSxcbiAgMjogMixcbiAgMzogM1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LWxldmVscy1tYXBcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi11bmRlcmxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdmFyaWFibGVzXG5cblxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdmFyaWFibGVzXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC42NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjE1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWljb24tY29sb3I6ICAgICAgICAgICAgJG5hdmJhci1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBjYWxjKCN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9IC0gI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4zXG4vLyBmdXN2LWVuYWJsZVxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nTTIgNUw4IDExTDE0IDUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nTTIgNUw4IDExTDE0IDUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yOiAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtdmFyaWFibGVzXG5cblxuLy8gTGlzdCBncm91cFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMCAxIDEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDEgMSAxLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAgMSAwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjE4NzVyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHJlbW92aW5nIGluIHY2XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMtZGFya1wiOyAvLyBUT0RPOiBjYW4gYmUgcmVtb3ZlZCBzYWZlbHkgaW4gdjYsIG9ubHkgaGVyZSB0byBhdm9pZCBicmVha2luZyBjaGFuZ2VzIGluIHY1LjNcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVmFyaWFibGVzIChJbHNlIEphY29ic2VuKSDigJQgZm9udDogTW9udHNlcnJhdCwgaGVhZGluZ3MvYnV0dG9uczogZW5nbGlzaC1ncm90ZXNxdWVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyAtLS0gU3BhY2luZyAvIGxheW91dFxuJHNwYWNlcjogMjBweDsgLy8gKHByaW1hIGVyYSBkZWZpbml0byBkdWUgdm9sdGU6IDE2cHggZSAyMHB4KVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6IDE2cHg7XG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAyMHB4O1xuXG4kc3VibWVudS1iYXItaGVpZ2h0OiBhdXRvO1xuJGFwcC1tYXgtd2lkdGg6IDE0MDBweDtcbiRtb2JpbGUtbWVudS1icmVha3BvaW50czogKG1ibDogMCwgZHNrOiA5OTJweCk7XG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTQwMHB4LFxuICB4eGw6IDE2MDBweFxuKTtcblxuJGhlYWRlci1wYWRkaW5nOiAoeHM6IDEwcHgsIHNtOiAyNHB4LCBtZDogMzBweCk7XG4kbWFpbi1wYWRkaW5nOiAoeHM6IDEwcHgsIHNtOiAyNHB4LCBtZDogMzBweCwgbGc6IDQwcHgsIHhsOiA4MHB4LCB4eGw6IDEwMHB4KTtcblxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAyMHB4O1xuJGd1dHRlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMyxcbiAgNTogJHNwYWNlciAqIDRcbik7XG5cbiRncmlkLWd1dHRlci13aWR0aC1yZXNwb25zaXZlOiAoeHM6MzBweCwgc206IDUwcHgsIG1kOjMwcHgsIGxnOiA1MHB4LCB4bDogNTBweCk7XG4kZ3JpZC1ndXR0ZXItaGFsZi13aWR0aC1yZXNwb25zaXZlOiAoeHM6MTVweCwgc206IDI1cHgsIG1kOjE1cHgsIGxnOiAyNXB4LCB4bDogMjVweCk7XG5cbiRicmFuZC1icm93bjogIzdENEIzNztcbiRsaWdodC1icm93bjogI0REQ0ZDNztcbiRtZWQtYnJvd246ICAjYjlhMDkxO1xuJGFjdGl2ZWNvbG9yOiAjYjZkMWNiO1xuJHdhcm5pbmc6ICM5ODMwMzA7XG5cbi8vIC0tLSBQYWxldHRlXG4kY29sb3JlYmFzZXZhcmlhYmlsZTogIzdENEIzNzsgLy8gU0VUIE1BSU4gQ09MT1JcbiRibGFjazogIzAwMDAwMDtcbiRleHRyYWxpZ2h0Z3JleTogI0ZBRkFGQTtcbiRsaWdodGdyZXk6ICNGNUY1RjU7XG4kZ3JleTogIzcwNzA3MDtcbiRkYXJrZ3JleTogIzMzMzMzMztcbiR3aGl0ZTogI0ZGRjtcbiRzaGFkb3ctY29sb3I6ICMwMDAwMDA7XG4kaW1hZ2UtcGxhY2Vob2xkZXItYmc6IHJnYmEoJGJyYW5kLWJyb3duLCAuMDUpO1xuJGFjaWRncmVlbjogI0FCRkY0MjtcbiRrZWxwZ3JlZW46ICMwQzMzMTc7XG4kYXRoZW5zR3JheTogI0VFRjJGNDtcbiRtYWduZXQ6ICM1MzUzNTM7XG4kZmxpbnRSb2NrOiAjOTM5MzkzO1xuJGJlbGdlOiAjRjdGNUU2O1xuJG94Zm9yZEJsdWU6ICM1MjUyNTI7XG4kdXJiYW5NaXN0OiAjQUNBRUFGO1xuJG1lZGdyZXk6ICNkY2RjZGM7XG4kcGVhY2U6ICNFMERBQzg7XG4kYnVybmlzaGVkQnJvbnplOiAkY29sb3JlYmFzZXZhcmlhYmlsZTtcbiR0dXJjaGVzZTogIzNkODk4MTtcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMTU1LDEzMiw2MywwKSAwJSwgcmdiYSgxNTUsMTMyLDYzLC44KSA4MCUpO1xuJGJhY2tncm91bmQtZ3JheTogIzMzMWYxZjtcbiRib2R5LWJnOiAjRjVGMEVCO1xuXG4vLyBTZWNvbmRhcmlcbiRzZWNvbmRhcnktMTogI0Y2REZCNztcbiRzZWNvbmRhcnktMjogI0I2REFDMjtcbiRzZWNvbmRhcnktMzogI0IzQ0ZFMztcbiRzZWNvbmRhcnktNDogI0Y4RDdEMztcbiRzZWNvbmRhcnktNTogI0M2QzVFMDtcbiRzZWNvbmRhcnktNjogI0U2QjdCOTtcblxuLy8gLS0tIFR5cG9ncmFwaHlcbi8vIEZvbnQgc3RhY2sgYWdnaW9ybmF0bzogTW9udHNlcnJhdCBwZXIgYm9keSwgZW5nbGlzaC1ncm90ZXNxdWUgcGVyIGhlYWRpbmdzL2J1dHRvbnNcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIk1vbnRzZXJyYXRcIiwgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6IFwiZW5nbGlzaC1ncm90ZXNxdWVcIiwgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFBlc2kgZGlzcG9uaWJpbGk6IDMwMOKAkzcwMFxuJGJhc2UtZm9udC13ZWlnaHQ6IDQwMDtcbiRsaWdodC1mb250LXdlaWdodDogMzAwO1xuJGJ0bi1mb250LXdlaWdodDogMzAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ibGFjazogNzAwO1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6IGluaGVyaXQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDMwMDsgLy8gZW5nbGlzaC1ncm90ZXNxdWU6IHVzYSBzb2xvIDMwMCBwZXIgdGl0b2xpXG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6IDE7XG4kaGVhZGluZ3MtY29sb3I6IGluaGVyaXQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAxLjQyO1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICgxNCAvIDE2KXJlbTtcblxuJGJvZHktY29sb3I6ICRicmFuZC1icm93bjtcbiR0ZXh0LWNvbG9yOiAkYnJhbmQtYnJvd247XG4kdGV4dC1jb2xvci1saWdodDogJGJvZHktYmc7XG5cbi8vIC0tLSBCcmFuZCAmIFVJIHRva2Vuc1xuJHByaW1hcnk6ICRjb2xvcmViYXNldmFyaWFiaWxlOyAvLyBTRVQgTUFJTiBDT0xPUlxuJHNlY29uZGFyeTogI0REQ0ZDNztcbiRwcmltYXJ5LTUwOiBtaXgod2hpdGUsICRwcmltYXJ5LCA4MCUpO1xuXG4kYm9yZGVyLXJhZGl1czogM3B4O1xuJGJvcmRlci1yYWRpdXMtbGc6IDZweDtcbiRib3JkZXItcmFkaXVzLXJvdW5kZWQ6IDEwMHB4O1xuXG4kYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcblxuJGJ0bi1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuJGlucHV0LWJ0bi1wYWRkaW5nOiAxMHB4IDIwcHg7XG4kaW5wdXQtYnRuLXBhZGRpbmcteTogMTBweDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAyMHB4O1xuJGlucHV0LWJ0bi1wYWRkaW5nLWxhcmdlOiAxNXB4IDI1cHg7XG5cbiRpbnB1dC1wYWRkaW5nLXg6IDFyZW07XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAxLjQyZW07XG5cbiRmb290ZXItYm9yZGVyLWNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiRmb290ZXItYmctbGlnaHQ6ICR0ZXh0LWNvbG9yLWxpZ2h0O1xuJGZvb3Rlci1iZy1kYXJrOiAkYnJhbmQtYnJvd247XG4kZm9vdGVyLWNvbG9yLWxpZ2h0OiAkcHJpbWFyeTtcbiRmb290ZXItY29sb3ItZGFyazogJHRleHQtY29sb3ItbGlnaHQ7XG4kZm9vdGVyLW1heC13aWR0aDogMTQwMHB4O1xuXG4kYmctbWVnYW1lbnUtbGlnaHQ6ICRicmFuZC1icm93bjtcblxuJGhlYWRlci1oZWlnaHQ6IDgwcHg7XG4kaGVhZGVyLWhlaWdodC1tYmw6IDgwcHg7XG4kcHJvbW90aW9ucy1iYXItaGVpZ2h0OiAzMHB4O1xuJGhlYWRlci1oZWlnaHQtdG90YWw6ICRoZWFkZXItaGVpZ2h0ICsgJHByb21vdGlvbnMtYmFyLWhlaWdodDtcbiRoZWFkZXItaGVpZ2h0LXRvdGFsLW1ibDogJGhlYWRlci1oZWlnaHQtbWJsICsgJHByb21vdGlvbnMtYmFyLWhlaWdodDtcblxuLy8gLS0tIFBhZ2luYXRpb25cbiRwYWdpbmF0aW9uLWNvbG9yOiAkYm9keS1jb2xvcjtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogI0UwRTBFMDtcbiRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAkYm9keS1jb2xvcjtcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAxcHggJGJyYW5kLWJyb3duO1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICRib2R5LWNvbG9yO1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogJGJyYW5kLWJyb3duO1xuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcjtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogJHdoaXRlO1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNFMEUwRTA7XG5cbi8vIC0tLSBCcmVhZGNydW1iXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAwO1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAjNjA2MDYwO1xuXG4vLyAtLS0gQWNjb3JkaW9uXG4kYWNjb3JkaW9uLWJvcmRlci13aWR0aDogMXB4O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICNFMEUwRTA7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6IDA7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6IDA7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAyMHB4O1xuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogMDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteTogMTBweDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogMTBweDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogJHdoaXRlO1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAkYnJhbmQtYnJvd247XG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICRicmFuZC1icm93bjtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIDFweCAkYnJhbmQtYnJvd247XG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICRncmV5O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogJGdyZXk7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSGFtYnVyZ2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICA6IDEwcHg7XG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgOiAxMHB4O1xuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgIDogMjdweDtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICAgICAgICA6IDJweDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICA6IDVweDtcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICA6ICRicmFuZC1icm93bjtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDBweDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNztcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG5cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgY29sbGFwc2Vcbik7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU3dhbCB3b3JrYXJvdW5kXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRpY29uLXpvb206IDE7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGF5b3V0IG1peGluc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gbWFpbi1wYWRkaW5nKCkge1xuICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLWxlZnQgcGFkZGluZy1yaWdodCksICRtYWluLXBhZGRpbmcpO1xufVxuXG5AbWl4aW4gYXBwLW1heC13aWR0aCgpIHtcbiAgbWF4LXdpZHRoOiAkYXBwLW1heC13aWR0aDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb2xvcnMgaGVscGVyc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AbWl4aW4gc2Nyb2xsLWNvbG9ycyhcbiAgJHRyYWNrLWNvbG9yOiByZ2JhKHZhcigtLXRoZW1lLWNvbG9yKSwgLjQpLFxuICAkdGh1bWItY29sb3I6IHJnYmEodmFyKC0tdGhlbWUtY29sb3IpLCAuOCksXG4gICR0aHVtYi1jb2xvci1ob3ZlcjogcmdiYSh2YXIoLS10aGVtZS1jb2xvciksIDEpXG4pIHtcbiAgc2Nyb2xsYmFyLWNvbG9yOiAkdGh1bWItY29sb3ItaG92ZXIgJHRyYWNrLWNvbG9yOyAvLyBGaXJlZm94XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2ssXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsgYmFja2dyb3VuZC1jb2xvcjogJHRyYWNrLWNvbG9yOyB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2Utb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYi1jb2xvcjtcblxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWItY29sb3ItaG92ZXI7IH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7IGJhY2tncm91bmQ6ICR0cmFjay1jb2xvcjsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXIgb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkY291bnQpKTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbiBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMb29wIG92ZXIgZWFjaCBicmVha3BvaW50XG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuXG4gIC8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGlmIG5lZWRlZFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBidG4tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteDogI3skYnRuLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JGJ0bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHk6ICN7JGJ0bi1mb250LWZhbWlseX07XG4gIEBpbmNsdWRlIHJmcygkYnRuLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skYnRuLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0OiAjeyRidG4tbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGg6ICN7JGJ0bi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJ0bi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAjeyRidG4tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAjeyRidG4tZm9jdXMtd2lkdGh9IHJnYmEodmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiKSwgLjUpO1xuICAvLyBzY3NzLWRvY3MtZW5kIGJ0bi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy14KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtYnV0dG9uLXBvaW50ZXJzLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1iZykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdykpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmJ0bi1jaGVjayArICY6aG92ZXIge1xuICAgIC8vIG92ZXJyaWRlIGZvciB0aGUgY2hlY2tib3gvcmFkaW8gYnV0dG9uc1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgOm5vdCguYnRuLWNoZWNrKSArICY6YWN0aXZlLFxuICAmOmZpcnN0LWNoaWxkOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuc2hvdyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZyk7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdykpO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwOyAvLyBDYW4ndCB1c2UgYG5vbmVgIGFzIGtleXdvcmQgbmVnYXRlcyBhbGwgdmFsdWVzIHdoZW4gdXNlZCB3aXRoIG11bHRpcGxlIHNoYWRvd3NcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7JGJ0bi1saW5rLWZvY3VzLXNoYWRvdy1yZ2J9O1xuXG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gT24gQW5kcm9pZCBDaHJvbWUsIGZvcm0tY29udHJvbCdzIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIC8vXG4gICAgLy8gT24gaU9TIFNhZmFyaSwgZm9ybS1jb250cm9sJ3MgXCJhcHBlYXJhbmNlOiBub25lXCIgKyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBpT1MgMTYuMiAvIFNhZmFyaSAxNi4yXG4gICAgbWluLXdpZHRoOiA4NXB4OyAvLyBTZWVtcyB0byBiZSBhIGdvb2QgbWluaW11bSBzYWZlIHdpZHRoXG5cbiAgICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAgIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcblxuICAgIC8vIEFuZHJvaWQgQ2hyb21lIHR5cGU9XCJkYXRlXCIgaXMgdGFsbGVyIHRoYW4gdGhlIG90aGVyIGlucHV0c1xuICAgIC8vIGJlY2F1c2Ugb2YgXCJtYXJnaW46IDFweCAyNHB4IDFweCA0cHhcIiBpbnNpZGUgdGhlIHNoYWRvdyBET01cbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gUHJldmVudCBleGNlc3NpdmUgZGF0ZSBpbnB1dCBoZWlnaHQgaW4gV2Via2l0XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzQ0MzNcbiAgJjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cblxuLmZvcm0tc2VsZWN0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvcil9O1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZyksIHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uLCBub25lKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvci1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZzogI3skZm9ybS1jaGVjay1pbnB1dC1iZ307XG5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpICogLjU7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX07XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcbn1cblxuLy9cbi8vIFN3aXRjaFxuLy9cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpfTtcblxuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpfTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0Om5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uZm9ybS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQsICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsLFxuICA+IC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgfiBsYWJlbCB7IC8vIFJlcXVpcmVkIGZvciBgLmZvcm0tY29udHJvbGBzIGJlY2F1c2Ugb2Ygc3BlY2lmaWNpdHlcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0LFxuICA+IC5mb3JtLWZsb2F0aW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLFxuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKVtzaXplPVwiMVwiXSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbjogI3tlc2NhcGUtc3ZnKCRpY29uKX07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfSBAZWxzZSBpZiAkc3RhdGUgPT0gXCJpbnZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW1vZGFsLXppbmRleDogI3skemluZGV4LW1vZGFsfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLW1kfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZzogI3skbW9kYWwtaW5uZXItcGFkZGluZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYmc6ICN7JG1vZGFsLWNvbnRlbnQtYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmc6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nfTsgLy8gVG9kbyBpbiB2NjogU3BsaXQgdGhpcyBwYWRkaW5nIGludG8geCBhbmQgeVxuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRtb2RhbC10aXRsZS1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXA6ICN7JG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZzogI3skbW9kYWwtZm9vdGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGh9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3cpKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleDogI3skemluZGV4LW1vZGFsLWJhY2tkcm9wfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmc6ICN7JG1vZGFsLWJhY2tkcm9wLWJnfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eTogI3skbW9kYWwtYmFja2Ryb3Atb3BhY2l0eX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcblxuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXgpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmcpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eSkpO1xufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKTtcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZykgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7IC8vIFRvZG8gaW4gdjY6IHJlcGxhY2Ugd2l0aCBnYXAgb24gcGFyZW50IGNsYXNzXG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXB9O1xuICAgIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cH07XG4gIH1cblxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1zbX07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLWxnfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXhsfTtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyLFxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIuYnJlYWRjcnVtYiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogI3skYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tfTtcbiAgQGluY2x1ZGUgcmZzKCRicmVhZGNydW1iLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnOiAjeyRicmVhZGNydW1iLWJnfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAjeyRicmVhZGNydW1iLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAjeyRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSkpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xuICB9XG59XG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLWJvcmRlci1yYWRpdXMsIDApKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnKSk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmcpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWRhcmstYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tZGFyay1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLmFjY29yZGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcblxuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCk7XG59XG5cblxuLy8gRmx1c2ggYWNjb3JkaW9uIGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBhY2NvcmRpb24gaXRlbXMgZWRnZS10by1lZGdlLlxuXG4uYWNjb3JkaW9uLWZsdXNoIHtcbiAgPiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LWNsYXNzXG5cbiAgICA+IC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyayl9O1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXg6ICN7JGFsZXJ0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteTogI3skYWxlcnQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbTogI3skYWxlcnQtbWFyZ2luLWJvdHRvbX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiBpbmhlcml0O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXI6ICN7JGFsZXJ0LWJvcmRlci13aWR0aH0gc29saWQgdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXM6ICN7JGFsZXJ0LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yOiBpbmhlcml0O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcik7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnRcbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtbW9kaWZpZXJzXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdGFicy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGg6ICN7JG5hdi10YWJzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1czogI3skbmF2LXRhYnMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdGFicy1jc3MtdmFyc1xuXG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3IpO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtcGlsbHMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi1waWxscy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXBpbGxzLWNzcy12YXJzXG5cbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cykpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAjeyRuYXYtdW5kZXJsaW5lLWdhcH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcblxuICBnYXA6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcCk7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIC8vIFJlc2V0IG5lZWRlZCBmb3IgbmVzdGluZyB0YWJsZXNcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiBpbml0aWFsO1xuICAvLyBFbmQgb2YgcmVzZXRcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JHRhYmxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmc6ICN7JHRhYmxlLWFjY2VudC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAjeyR0YWJsZS1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyR0YWJsZS1ob3Zlci1iZ307XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIHZlcnRpY2FsLWFsaWduOiAkdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yKTtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIC8vIEZvbGxvd2luZyB0aGUgcHJlY2VwdCBvZiBjYXNjYWRlczogaHR0cHM6Ly9jb2RlcGVuLmlvL21pcmlhbXN1emFubmUvZnVsbC92WU5nb2RiXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvcikpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmcpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmcpKSk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbn1cblxuLnRhYmxlLWdyb3VwLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiBjYWxjKCN7JHRhYmxlLWJvcmRlci13aWR0aH0gKiAyKSBzb2xpZCAkdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vL1xuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3Ncbi8vXG5cbi5jYXB0aW9uLXRvcCB7XG4gIGNhcHRpb24tc2lkZTogdG9wO1xufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG4vL1xuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXG4vLyBUaGVyZWZvcmUgd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLnRleHQtYmctI3skY29sb3J9IHtcbiAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJHZhbHVlKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICRob3Zlci1jb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICAgIGNvbG9yOiBSR0JBKCN7dG8tcmdiKCRob3Zlci1jb2xvcil9LCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHRvLXJnYigkaG92ZXItY29sb3IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9uZS1vZmYgc3BlY2lhbCBsaW5rIGhlbHBlciBhcyBhIGJyaWRnZSB1bnRpbCB2NlxuLmxpbmstYm9keS1lbXBoYXNpcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb2N1cy1yaW5nOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgLy8gQnkgZGVmYXVsdCwgdGhlcmUgaXMgbm8gYC0tYnMtZm9jdXMtcmluZy14YCwgYC0tYnMtZm9jdXMtcmluZy15YCwgb3IgYC0tYnMtZm9jdXMtcmluZy1ibHVyYCwgYnV0IHdlIHByb3ZpZGUgQ1NTIHZhcmlhYmxlcyB3aXRoIGZhbGxiYWNrcyB0byBpbml0aWFsIGAwYCB2YWx1ZXNcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteSwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctYmx1ciwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yKTtcbn1cbiIsIi5pY29uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiAkaWNvbi1saW5rLWdhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgPiAuYmkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6ICR2ci1ib3JkZXItd2lkdGg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3IgIDogJGhhbWJ1cmdlci1sYXllci1jb2xvciAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAhZGVmYXVsdDtcblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIEhhbWJ1cmdlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgICBmaWx0ZXI6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIC0yKTtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGNvbGxhcHNlKSB7XG4gIC8qXG4gICAqIENvbGxhcHNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnN3YWwyLXBvcHVwIHtcbiAgJi5zd2FsMi10b2FzdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBncmlkLWNvbHVtbjogMS80ICFpbXBvcnRhbnQ7XG4gICAgZ3JpZC1yb3c6IDEvNCAhaW1wb3J0YW50O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluLWNvbnRlbnQgYXV0byBtaW4tY29udGVudDtcbiAgICBwYWRkaW5nOiAkc3dhbDItdG9hc3QtcGFkZGluZztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogJHN3YWwyLXRvYXN0LWJhY2tncm91bmQ7XG4gICAgYm94LXNoYWRvdzogJHN3YWwyLXRvYXN0LWJveC1zaGFkb3c7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcblxuICAgID4gKiB7XG4gICAgICBncmlkLWNvbHVtbjogMjtcbiAgICB9XG5cbiAgICAuc3dhbDItdGl0bGUge1xuICAgICAgbWFyZ2luOiAkc3dhbDItdG9hc3QtdGl0bGUtbWFyZ2luO1xuICAgICAgcGFkZGluZzogJHN3YWwyLXRvYXN0LXRpdGxlLXBhZGRpbmc7XG4gICAgICBmb250LXNpemU6ICRzd2FsMi10b2FzdC10aXRsZS1mb250LXNpemU7XG4gICAgICB0ZXh0LWFsaWduOiBpbml0aWFsO1xuICAgIH1cblxuICAgIC5zd2FsMi1sb2FkaW5nIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5zd2FsMi1pbnB1dCB7XG4gICAgICBoZWlnaHQ6ICRzd2FsMi10b2FzdC1pbnB1dC1oZWlnaHQ7XG4gICAgICBtYXJnaW46ICRzd2FsMi10b2FzdC1pbnB1dC1tYXJnaW47XG4gICAgICBmb250LXNpemU6ICRzd2FsMi10b2FzdC1pbnB1dC1mb250LXNpemU7XG4gICAgfVxuXG4gICAgLnN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICBmb250LXNpemU6ICRzd2FsMi10b2FzdC12YWxpZGF0aW9uLWZvbnQtc2l6ZTtcbiAgICB9XG5cbiAgICAuc3dhbDItZm9vdGVyIHtcbiAgICAgIG1hcmdpbjogJHN3YWwyLXRvYXN0LWZvb3Rlci1tYXJnaW47XG4gICAgICBwYWRkaW5nOiAkc3dhbDItdG9hc3QtZm9vdGVyLW1hcmdpbjtcbiAgICAgIGZvbnQtc2l6ZTogJHN3YWwyLXRvYXN0LWZvb3Rlci1mb250LXNpemU7XG4gICAgfVxuXG4gICAgLnN3YWwyLWNsb3NlIHtcbiAgICAgIGdyaWQtY29sdW1uOiAzLzM7XG4gICAgICBncmlkLXJvdzogMS85OTtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAkc3dhbDItdG9hc3QtY2xvc2UtYnV0dG9uLXdpZHRoO1xuICAgICAgaGVpZ2h0OiAkc3dhbDItdG9hc3QtY2xvc2UtYnV0dG9uLWhlaWdodDtcbiAgICAgIG1hcmdpbjogJHN3YWwyLXRvYXN0LWNsb3NlLWJ1dHRvbi1tYXJnaW47XG4gICAgICBmb250LXNpemU6ICRzd2FsMi10b2FzdC1jbG9zZS1idXR0b24tZm9udC1zaXplO1xuICAgIH1cblxuICAgIC5zd2FsMi1odG1sLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46ICRzd2FsMi10b2FzdC1odG1sLWNvbnRhaW5lci1tYXJnaW47XG4gICAgICBwYWRkaW5nOiAkc3dhbDItdG9hc3QtaHRtbC1jb250YWluZXItcGFkZGluZztcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgICAgZm9udC1zaXplOiAkc3dhbDItdG9hc3QtaHRtbC1jb250YWluZXItZm9udC1zaXplO1xuICAgICAgdGV4dC1hbGlnbjogaW5pdGlhbDtcblxuICAgICAgJjplbXB0eSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN3YWwyLWxvYWRlciB7XG4gICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgIGdyaWQtcm93OiAxLzk5O1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgd2lkdGg6IDJlbTtcbiAgICAgIGhlaWdodDogMmVtO1xuICAgICAgbWFyZ2luOiAwLjI1ZW07XG4gICAgfVxuXG4gICAgLnN3YWwyLWljb24ge1xuICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICBncmlkLXJvdzogMS85OTtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAyZW07XG4gICAgICBtaW4td2lkdGg6IDJlbTtcbiAgICAgIGhlaWdodDogMmVtO1xuICAgICAgbWFyZ2luOiAwIDAuNWVtIDAgMDtcblxuICAgICAgLnN3YWwyLWljb24tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogJHN3YWwyLXRvYXN0LWljb24tZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cblxuICAgICAgJi5zd2FsMi1zdWNjZXNzIHtcbiAgICAgICAgLnN3YWwyLXN1Y2Nlc3MtcmluZyB7XG4gICAgICAgICAgd2lkdGg6IDJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnN3YWwyLWVycm9yIHtcbiAgICAgICAgW2NsYXNzXj0nc3dhbDIteC1tYXJrLWxpbmUnXSB7XG4gICAgICAgICAgdG9wOiAwLjg3NWVtO1xuICAgICAgICAgIHdpZHRoOiAxLjM3NWVtO1xuXG4gICAgICAgICAgJltjbGFzcyQ9J2xlZnQnXSB7XG4gICAgICAgICAgICBsZWZ0OiAwLjMxMjVlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmW2NsYXNzJD0ncmlnaHQnXSB7XG4gICAgICAgICAgICByaWdodDogMC4zMTI1ZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN3YWwyLWFjdGlvbnMge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICBwYWRkaW5nOiAwIDAuNWVtO1xuICAgIH1cblxuICAgIC5zd2FsMi1zdHlsZWQge1xuICAgICAgbWFyZ2luOiAwLjI1ZW0gMC41ZW07XG4gICAgICBwYWRkaW5nOiAwLjRlbSAwLjZlbTtcbiAgICAgIGZvbnQtc2l6ZTogJHN3YWwyLXRvYXN0LWJ1dHRvbnMtZm9udC1zaXplO1xuICAgIH1cblxuICAgIC5zd2FsMi1zdWNjZXNzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHN3YWwyLXN1Y2Nlc3M7XG5cbiAgICAgIFtjbGFzc149J3N3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZSddIHtcbiAgICAgICAgLy8gRW11bGF0ZSBtb3ZpbmcgY2lyY3VsYXIgbGluZVxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxLjZlbTtcbiAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAmW2NsYXNzJD0nbGVmdCddIHtcbiAgICAgICAgICB0b3A6IC0wLjhlbTtcbiAgICAgICAgICBsZWZ0OiAtMC41ZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAyZW0gMmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRlbSAwIDAgNGVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJltjbGFzcyQ9J3JpZ2h0J10ge1xuICAgICAgICAgIHRvcDogLTAuMjVlbTtcbiAgICAgICAgICBsZWZ0OiAwLjkzNzVlbTtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEuNWVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNGVtIDRlbSAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zd2FsMi1zdWNjZXNzLXJpbmcge1xuICAgICAgICB3aWR0aDogMmVtO1xuICAgICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgIH1cblxuICAgICAgLnN3YWwyLXN1Y2Nlc3MtZml4IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwLjQzNzVlbTtcbiAgICAgICAgd2lkdGg6IDAuNDM3NWVtO1xuICAgICAgICBoZWlnaHQ6IDIuNjg3NWVtO1xuICAgICAgfVxuXG4gICAgICBbY2xhc3NePSdzd2FsMi1zdWNjZXNzLWxpbmUnXSB7XG4gICAgICAgIGhlaWdodDogMC4zMTI1ZW07XG5cbiAgICAgICAgJltjbGFzcyQ9J3RpcCddIHtcbiAgICAgICAgICB0b3A6IDEuMTI1ZW07XG4gICAgICAgICAgbGVmdDogMC4xODc1ZW07XG4gICAgICAgICAgd2lkdGg6IDAuNzVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbY2xhc3MkPSdsb25nJ10ge1xuICAgICAgICAgIHRvcDogMC45Mzc1ZW07XG4gICAgICAgICAgcmlnaHQ6IDAuMTg3NWVtO1xuICAgICAgICAgIHdpZHRoOiAxLjM3NWVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItaWNvbi1zaG93IHtcbiAgICAgICAgQGlmICRzd2FsMi1pY29uLWFuaW1hdGlvbnMge1xuICAgICAgICAgIC5zd2FsMi1zdWNjZXNzLWxpbmUtdGlwIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3dhbDItdG9hc3QtYW5pbWF0ZS1zdWNjZXNzLWxpbmUtdGlwIDAuNzVzO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zd2FsMi1zdWNjZXNzLWxpbmUtbG9uZyB7XG4gICAgICAgICAgICBhbmltYXRpb246IHN3YWwyLXRvYXN0LWFuaW1hdGUtc3VjY2Vzcy1saW5lLWxvbmcgMC43NXM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zd2FsMi1zaG93IHtcbiAgICAgIGFuaW1hdGlvbjogJHN3YWwyLXRvYXN0LXNob3ctYW5pbWF0aW9uO1xuICAgIH1cblxuICAgICYuc3dhbDItaGlkZSB7XG4gICAgICBhbmltYXRpb246ICRzd2FsMi10b2FzdC1oaWRlLWFuaW1hdGlvbjtcbiAgICB9XG4gIH1cbn1cbiIsIiRzd2FsMi13aGl0ZTogI2ZmZiAhZGVmYXVsdDtcbiRzd2FsMi1ibGFjazogIzAwMCAhZGVmYXVsdDtcbiRzd2FsMi1vdXRsaW5lLWNvbG9yOiByZ2JhKDEwMCwgMTUwLCAyMDAsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vIENPTlRBSU5FUlxuJHN3YWwyLWNvbnRhaW5lci1wYWRkaW5nOiAwLjYyNWVtICFkZWZhdWx0O1xuXG4vLyBQT1BVUFxuJHN3YWwyLXdpZHRoOiAzMmVtICFkZWZhdWx0O1xuJHN3YWwyLXBhZGRpbmc6IDAgMCAxLjI1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItYm9yZGVyOiBub25lICFkZWZhdWx0O1xuJHN3YWwyLWNvbG9yOiBsaWdodGVuKCRzd2FsMi1ibGFjaywgMzMpICFkZWZhdWx0O1xuJHN3YWwyLWJvcmRlci1yYWRpdXM6IDVweCAhZGVmYXVsdDtcbiRzd2FsMi1ib3gtc2hhZG93OiAjZDlkOWQ5ICFkZWZhdWx0O1xuXG4vLyBBTklNQVRJT05TXG4kc3dhbDItc2hvdy1hbmltYXRpb246IHN3YWwyLXNob3cgMC4zcyAhZGVmYXVsdDtcbiRzd2FsMi1oaWRlLWFuaW1hdGlvbjogc3dhbDItaGlkZSAwLjE1cyBmb3J3YXJkcyAhZGVmYXVsdDtcblxuLy8gQkFDS0dST1VORFxuJHN3YWwyLWJhY2tncm91bmQ6ICRzd2FsMi13aGl0ZSAhZGVmYXVsdDtcblxuLy8gVFlQT0dSQVBIWVxuJHN3YWwyLWZvbnQ6IGluaGVyaXQgIWRlZmF1bHQ7XG4kc3dhbDItZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLyBCQUNLRFJPUFxuJHN3YWwyLWJhY2tkcm9wOiByZ2JhKCRzd2FsMi1ibGFjaywgMC40KSAhZGVmYXVsdDtcbiRzd2FsMi1iYWNrZHJvcC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgIWRlZmF1bHQ7XG5cbi8vIElDT05TXG4kc3dhbDItaWNvbi1zaXplOiA1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItaWNvbi1hbmltYXRpb25zOiB0cnVlICFkZWZhdWx0O1xuJHN3YWwyLWljb24tbWFyZ2luOiAyLjVlbSBhdXRvIDAuNmVtICFkZWZhdWx0O1xuJHN3YWwyLWljb24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG4kc3dhbDItaWNvbi1mb250LXNpemU6IDMuNzVlbSAhZGVmYXVsdDtcbiRzd2FsMi1pY29uLWJvcmRlci1jb2xvcjogIzAwMCAhZGVmYXVsdDtcbiRzd2FsMi1pY29uLXpvb206IG51bGwgIWRlZmF1bHQ7XG4kc3dhbDItc3VjY2VzczogI2E1ZGM4NiAhZGVmYXVsdDtcbiRzd2FsMi1zdWNjZXNzLWJvcmRlcjogcmdiYSgkc3dhbDItc3VjY2VzcywgMC4zKSAhZGVmYXVsdDtcbiRzd2FsMi1lcnJvcjogI2YyNzQ3NCAhZGVmYXVsdDtcbiRzd2FsMi13YXJuaW5nOiAjZjhiYjg2ICFkZWZhdWx0O1xuJHN3YWwyLWluZm86ICMzZmMzZWUgIWRlZmF1bHQ7XG4kc3dhbDItcXVlc3Rpb246ICM4N2FkYmQgIWRlZmF1bHQ7XG5cbi8vIElNQUdFXG4kc3dhbDItaW1hZ2UtbWFyZ2luOiAyZW0gYXV0byAxZW0gIWRlZmF1bHQ7XG5cbi8vIFRJVExFXG4kc3dhbDItdGl0bGUtcG9zaXRpb246IHJlbGF0aXZlICFkZWZhdWx0O1xuJHN3YWwyLXRpdGxlLW1heC13aWR0aDogMTAwJSAhZGVmYXVsdDtcbiRzd2FsMi10aXRsZS1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kc3dhbDItdGl0bGUtcGFkZGluZzogMC44ZW0gMWVtIDAgIWRlZmF1bHQ7XG4kc3dhbDItdGl0bGUtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG4kc3dhbDItdGl0bGUtZm9udC1zaXplOiAxLjg3NWVtICFkZWZhdWx0O1xuJHN3YWwyLXRpdGxlLWZvbnQtd2VpZ2h0OiA2MDAgIWRlZmF1bHQ7XG4kc3dhbDItdGl0bGUtdGV4dC1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuXG4vLyBIVE1MIENPTlRBSU5FUlxuJHN3YWwyLWh0bWwtY29udGFpbmVyLWp1c3RpZnktY29udGVudDogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLWh0bWwtY29udGFpbmVyLW1hcmdpbjogMCAhZGVmYXVsdDtcbiRzd2FsMi1odG1sLWNvbnRhaW5lci1wYWRkaW5nOiAxZW0gMS42ZW0gMC4zZW0gIWRlZmF1bHQ7XG4kc3dhbDItaHRtbC1jb250YWluZXItb3ZlcmZsb3c6IGF1dG8gIWRlZmF1bHQ7XG4kc3dhbDItaHRtbC1jb250YWluZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG4kc3dhbDItaHRtbC1jb250YWluZXItZm9udC1zaXplOiAxLjEyNWVtICFkZWZhdWx0O1xuJHN3YWwyLWh0bWwtY29udGFpbmVyLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kc3dhbDItaHRtbC1jb250YWluZXItbGluZS1oZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRzd2FsMi1odG1sLWNvbnRhaW5lci10ZXh0LWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG4kc3dhbDItaHRtbC1jb250YWluZXItd29yZC13cmFwOiBicmVhay13b3JkICFkZWZhdWx0O1xuJHN3YWwyLWh0bWwtY29udGFpbmVyLXdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWRlZmF1bHQ7XG5cbi8vIElOUFVUXG4kc3dhbDItaW5wdXQtbWFyZ2luOiAxZW0gMmVtIDNweCAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC13aWR0aDogYXV0byAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC1oZWlnaHQ6IDIuNjI1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItaW5wdXQtcGFkZGluZzogMCAwLjc1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItaW5wdXQtYm9yZGVyOiAxcHggc29saWQgbGlnaHRlbigkc3dhbDItYmxhY2ssIDg1KSAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC1ib3JkZXItcmFkaXVzOiAwLjE4NzVlbSAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC1ib3gtc2hhZG93OlxuICBpbnNldCAwIDFweCAxcHggcmdiYSgkc3dhbDItYmxhY2ssIDAuMDYpLFxuICAwIDAgMCAzcHggdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc3dhbDItaW5wdXQtZm9udC1zaXplOiAxLjEyNWVtICFkZWZhdWx0O1xuJHN3YWwyLWlucHV0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHN3YWwyLWlucHV0LWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuJHN3YWwyLWlucHV0LXRyYW5zaXRpb246XG4gIGJvcmRlci1jb2xvciAwLjFzLFxuICBib3gtc2hhZG93IDAuMXMgIWRlZmF1bHQ7XG5cbi8vIElOUFVUOkZPQ1VTXG4kc3dhbDItaW5wdXQtZm9jdXMtYm9yZGVyOiAxcHggc29saWQgI2I0ZGJlZCAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC1mb2N1cy1vdXRsaW5lOiBub25lICFkZWZhdWx0O1xuJHN3YWwyLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6XG4gIGluc2V0IDAgMXB4IDFweCByZ2JhKCRzd2FsMi1ibGFjaywgMC4wNiksXG4gIDAgMCAwIDNweCAkc3dhbDItb3V0bGluZS1jb2xvciAhZGVmYXVsdDtcblxuLy8gVEVYVEFSRUEgU1BFQ0lGSUMgVkFSSUFCTEVTXG4kc3dhbDItdGV4dGFyZWEtaGVpZ2h0OiA2Ljc1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItdGV4dGFyZWEtcGFkZGluZzogMC43NWVtICFkZWZhdWx0O1xuXG4vLyBJTlBVVCBMQUJFTFxuJHN3YWwyLWlucHV0LWxhYmVsLW1hcmdpbjogMWVtIGF1dG8gMCAhZGVmYXVsdDtcbiRzd2FsMi1pbnB1dC1sYWJlbC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhZGVmYXVsdDtcblxuLy8gVkFMSURBVElPTiBNRVNTQUdFXG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWFsaWduLWl0ZW1zOiBjZW50ZXIgIWRlZmF1bHQ7XG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWp1c3RpZnktY29udGVudDogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZS1tYXJnaW46IDFlbSAwIDAgIWRlZmF1bHQ7XG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLXBhZGRpbmc6IDAuNjI1ZW0gIWRlZmF1bHQ7XG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWJhY2tncm91bmQ6IGxpZ2h0ZW4oJHN3YWwyLWJsYWNrLCA5NCkgIWRlZmF1bHQ7XG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWNvbG9yOiBsaWdodGVuKCRzd2FsMi1ibGFjaywgNDApICFkZWZhdWx0O1xuJHN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZS1mb250LXNpemU6IDFlbSAhZGVmYXVsdDtcbiRzd2FsMi12YWxpZGF0aW9uLW1lc3NhZ2UtZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRzd2FsMi12YWxpZGF0aW9uLW1lc3NhZ2UtaWNvbi1iYWNrZ3JvdW5kOiAkc3dhbDItZXJyb3IgIWRlZmF1bHQ7XG4kc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWljb24tY29sb3I6ICRzd2FsMi13aGl0ZSAhZGVmYXVsdDtcbiRzd2FsMi12YWxpZGF0aW9uLW1lc3NhZ2UtaWNvbi16b29tOiBudWxsICFkZWZhdWx0O1xuXG4vLyBQUk9HUkVTUyBTVEVQU1xuJHN3YWwyLXByb2dyZXNzLXN0ZXBzLWZsZXgtd3JhcDogd3JhcCAhZGVmYXVsdDtcbiRzd2FsMi1wcm9ncmVzcy1zdGVwcy1hbGlnbi1pdGVtczogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLXByb2dyZXNzLXN0ZXBzLW1heC13aWR0aDogMTAwJSAhZGVmYXVsdDtcbiRzd2FsMi1wcm9ncmVzcy1zdGVwcy1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzd2FsMi1wcm9ncmVzcy1zdGVwcy1tYXJnaW46IDEuMjVlbSBhdXRvICFkZWZhdWx0O1xuJHN3YWwyLXByb2dyZXNzLXN0ZXBzLXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtZm9udC13ZWlnaHQ6IDYwMCAhZGVmYXVsdDtcbiRzd2FsMi1wcm9ncmVzcy1zdGVwcy1kaXN0YW5jZTogMi41ZW0gIWRlZmF1bHQ7XG4kc3dhbDItcHJvZ3Jlc3Mtc3RlcC13aWR0aDogMmVtO1xuJHN3YWwyLXByb2dyZXNzLXN0ZXAtaGVpZ2h0OiAyZW07XG4kc3dhbDItcHJvZ3Jlc3Mtc3RlcC1ib3JkZXItcmFkaXVzOiAyZW07XG4kc3dhbDItcHJvZ3Jlc3Mtc3RlcC1iYWNrZ3JvdW5kOiAjYWRkOGU2ICFkZWZhdWx0O1xuJHN3YWwyLXByb2dyZXNzLXN0ZXAtY29sb3I6ICRzd2FsMi13aGl0ZSAhZGVmYXVsdDtcbiRzd2FsMi1hY3RpdmUtc3RlcC1iYWNrZ3JvdW5kOiAjMjc3OGM0ICFkZWZhdWx0O1xuJHN3YWwyLWFjdGl2ZS1zdGVwLWNvbG9yOiAkc3dhbDItd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIEZPT1RFUlxuJHN3YWwyLWZvb3Rlci1tYXJnaW46IDFlbSAwIDAgIWRlZmF1bHQ7XG4kc3dhbDItZm9vdGVyLXBhZGRpbmc6IDFlbSAxZW0gMCAhZGVmYXVsdDtcbiRzd2FsMi1mb290ZXItYm9yZGVyLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJHN3YWwyLWZvb3Rlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcbiRzd2FsMi1mb290ZXItZm9udC1zaXplOiAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItZm9vdGVyLXRleHQtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcblxuLy8gVElNRVIgUFJPR1JFU1MgQkFSXG4kc3dhbDItdGltZXItcHJvZ3Jlc3MtYmFyLWhlaWdodDogMC4yNWVtO1xuJHN3YWwyLXRpbWVyLXByb2dyZXNzLWJhci1iYWNrZ3JvdW5kOiByZ2JhKCRzd2FsMi1ibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8gQ0xPU0UgQlVUVE9OXG4kc3dhbDItY2xvc2UtYnV0dG9uLWp1c3RpZnktc2VsZjogZW5kICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1hbGlnbi1pdGVtczogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24td2lkdGg6IDEuMmVtICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1oZWlnaHQ6IDEuMmVtICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1wb3NpdGlvbjogbnVsbCAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24tZ2FwOiAwICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1wYWRkaW5nOiAwICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi10cmFuc2l0aW9uOlxuICBjb2xvciAwLjFzLFxuICBib3gtc2hhZG93IDAuMXMgIWRlZmF1bHQ7XG4kc3dhbDItY2xvc2UtYnV0dG9uLWJvcmRlcjogbm9uZSAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24tYm9yZGVyLXJhZGl1czogJHN3YWwyLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kc3dhbDItY2xvc2UtYnV0dG9uLW91dGxpbmU6IG51bGwgIWRlZmF1bHQ7XG4kc3dhbDItY2xvc2UtYnV0dG9uLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1jb2xvcjogI2NjYyAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24tZm9udC1mYW1pbHk6IG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24tZm9udC1zaXplOiAyLjVlbSAhZGVmYXVsdDtcbiRzd2FsMi1jbG9zZS1idXR0b24tYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBDTE9TRSBCVVRUT046SE9WRVJcbiRzd2FsMi1jbG9zZS1idXR0b24taG92ZXItdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1ob3Zlci1jb2xvcjogJHN3YWwyLWVycm9yICFkZWZhdWx0O1xuJHN3YWwyLWNsb3NlLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gQ0xPU0UgQlVUVE9OOkZPQ1VTXG4kc3dhbDItY2xvc2UtYnV0dG9uLWZvY3VzLW91dGxpbmU6IG5vbmUgIWRlZmF1bHQ7XG4kc3dhbDItY2xvc2UtYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCAkc3dhbDItb3V0bGluZS1jb2xvciAhZGVmYXVsdDtcblxuLy8gQUNUSU9OU1xuJHN3YWwyLWFjdGlvbnMtZmxleC13cmFwOiB3cmFwICFkZWZhdWx0O1xuJHN3YWwyLWFjdGlvbnMtYWxpZ24taXRlbXM6IGNlbnRlciAhZGVmYXVsdDtcbiRzd2FsMi1hY3Rpb25zLWp1c3RpZnktY29udGVudDogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLWFjdGlvbnMtd2lkdGg6IGF1dG8gIWRlZmF1bHQ7XG4kc3dhbDItYWN0aW9ucy1tYXJnaW46IDEuMjVlbSBhdXRvIDAgIWRlZmF1bHQ7XG4kc3dhbDItYWN0aW9ucy1wYWRkaW5nOiAwICFkZWZhdWx0O1xuXG4vLyBDT01NT04gVkFSSUFCTEVTIEZPUiBBTEwgQUNUSU9OIEJVVFRPTlNcbiRzd2FsMi1idXR0b24tbWFyZ2luOiAwLjMxMjVlbSAhZGVmYXVsdDtcbiRzd2FsMi1idXR0b24tcGFkZGluZzogMC42MjVlbSAxLjFlbSAhZGVmYXVsdDtcbiRzd2FsMi1idXR0b24tdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzICFkZWZhdWx0O1xuJHN3YWwyLWJ1dHRvbi1ib3gtc2hhZG93OiAwIDAgMCAzcHggdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc3dhbDItYnV0dG9uLWZvbnQtd2VpZ2h0OiA1MDAgIWRlZmF1bHQ7XG4kc3dhbDItYnV0dG9uLWRhcmtlbi1ob3ZlcjogcmdiYSgkc3dhbDItYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG4kc3dhbDItYnV0dG9uLWRhcmtlbi1hY3RpdmU6IHJnYmEoJHN3YWwyLWJsYWNrLCAwLjIpICFkZWZhdWx0O1xuJHN3YWwyLWJ1dHRvbi1mb2N1cy1vdXRsaW5lOiBub25lICFkZWZhdWx0O1xuJHN3YWwyLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAzcHggJHN3YWwyLW91dGxpbmUtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIENPTkZJUk0gQlVUVE9OXG4kc3dhbDItY29uZmlybS1idXR0b24tb3JkZXI6IG51bGwgIWRlZmF1bHQ7XG4kc3dhbDItY29uZmlybS1idXR0b24tYm9yZGVyOiAwICFkZWZhdWx0O1xuJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWJvcmRlci1yYWRpdXM6IDAuMjVlbSAhZGVmYXVsdDtcbiRzd2FsMi1jb25maXJtLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjNzA2NmUwICFkZWZhdWx0O1xuJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWNvbG9yOiAkc3dhbDItd2hpdGUgIWRlZmF1bHQ7XG4kc3dhbDItY29uZmlybS1idXR0b24tZm9udC1zaXplOiAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItY29uZmlybS1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWJhY2tncm91bmQtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vIERFTlkgQlVUVE9OXG4kc3dhbDItZGVueS1idXR0b24tb3JkZXI6IG51bGwgIWRlZmF1bHQ7XG4kc3dhbDItZGVueS1idXR0b24tYm9yZGVyOiAwICFkZWZhdWx0O1xuJHN3YWwyLWRlbnktYnV0dG9uLWJvcmRlci1yYWRpdXM6IDAuMjVlbSAhZGVmYXVsdDtcbiRzd2FsMi1kZW55LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNzQxICFkZWZhdWx0O1xuJHN3YWwyLWRlbnktYnV0dG9uLWNvbG9yOiAkc3dhbDItd2hpdGUgIWRlZmF1bHQ7XG4kc3dhbDItZGVueS1idXR0b24tZm9udC1zaXplOiAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItZGVueS1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoJHN3YWwyLWRlbnktYnV0dG9uLWJhY2tncm91bmQtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vIENBTkNFTCBCVVRUT05cbiRzd2FsMi1jYW5jZWwtYnV0dG9uLW9yZGVyOiBudWxsICFkZWZhdWx0O1xuJHN3YWwyLWNhbmNlbC1idXR0b24tYm9yZGVyOiAwICFkZWZhdWx0O1xuJHN3YWwyLWNhbmNlbC1idXR0b24tYm9yZGVyLXJhZGl1czogMC4yNWVtICFkZWZhdWx0O1xuJHN3YWwyLWNhbmNlbC1idXR0b24tYmFja2dyb3VuZC1jb2xvcjogIzZlNzg4MSAhZGVmYXVsdDtcbiRzd2FsMi1jYW5jZWwtYnV0dG9uLWNvbG9yOiAkc3dhbDItd2hpdGUgIWRlZmF1bHQ7XG4kc3dhbDItY2FuY2VsLWJ1dHRvbi1mb250LXNpemU6IDFlbSAhZGVmYXVsdDtcbiRzd2FsMi1jYW5jZWwtYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKCRzd2FsMi1jYW5jZWwtYnV0dG9uLWJhY2tncm91bmQtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vIExPQURFUlxuJHN3YWwyLWxvYWRlci1hbGlnbi1pdGVtczogY2VudGVyICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhZGVmYXVsdDtcbiRzd2FsMi1sb2FkZXItd2lkdGg6IDIuMmVtICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1oZWlnaHQ6IDIuMmVtICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1tYXJnaW46IDAgMS44NzVlbSAhZGVmYXVsdDtcbiRzd2FsMi1sb2FkZXItYW5pbWF0aW9uOiBzd2FsMi1yb3RhdGUtbG9hZGluZyAxLjVzIGxpbmVhciAwcyBpbmZpbml0ZSBub3JtYWwgIWRlZmF1bHQ7XG4kc3dhbDItbG9hZGVyLWJvcmRlci13aWR0aDogMC4yNWVtICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1ib3JkZXItcmFkaXVzOiAxMDAlICFkZWZhdWx0O1xuJHN3YWwyLWxvYWRlci1ib3JkZXItY29sb3I6ICMyNzc4YzQgdHJhbnNwYXJlbnQgIzI3NzhjNCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gVE9BU1RTXG4kc3dhbDItdG9hc3Qtc2hvdy1hbmltYXRpb246IHN3YWwyLXRvYXN0LXNob3cgMC41cyAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1oaWRlLWFuaW1hdGlvbjogc3dhbDItdG9hc3QtaGlkZSAwLjFzIGZvcndhcmRzICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LWJvcmRlcjogbm9uZSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1ib3gtc2hhZG93OlxuICAwIDAgMXB4IGhzbCgwZGVnIDAlIDAlIC8gMC4wNzUpLFxuICAwIDFweCAycHggaHNsKDBkZWcgMCUgMCUgLyAwLjA3NSksXG4gIDFweCAycHggNHB4IGhzbCgwZGVnIDAlIDAlIC8gMC4wNzUpLFxuICAxcHggM3B4IDhweCBoc2woMGRlZyAwJSAwJSAvIDAuMDc1KSxcbiAgMnB4IDRweCAxNnB4IGhzbCgwZGVnIDAlIDAlIC8gMC4wNzUpICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LWJhY2tncm91bmQ6ICRzd2FsMi13aGl0ZSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1jbG9zZS1idXR0b24td2lkdGg6IDAuOGVtICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LWNsb3NlLWJ1dHRvbi1oZWlnaHQ6IDAuOGVtICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LWNsb3NlLWJ1dHRvbi1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtY2xvc2UtYnV0dG9uLWZvbnQtc2l6ZTogMmVtICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LXdpZHRoOiAzNjBweCAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1wYWRkaW5nOiAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtdGl0bGUtbWFyZ2luOiAwLjVlbSAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtdGl0bGUtcGFkZGluZzogMCAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC10aXRsZS1mb250LXNpemU6IDFlbSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1pY29uLWZvbnQtc2l6ZTogMS44ZW0gIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtaHRtbC1jb250YWluZXItbWFyZ2luOiAwLjVlbSAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtaHRtbC1jb250YWluZXItcGFkZGluZzogMCAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1odG1sLWNvbnRhaW5lci1mb250LXNpemU6IDFlbSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1pbnB1dC1oZWlnaHQ6IDJlbSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1pbnB1dC1tYXJnaW46IDAuNWVtICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LWlucHV0LWZvbnQtc2l6ZTogMWVtICFkZWZhdWx0O1xuJHN3YWwyLXRvYXN0LXZhbGlkYXRpb24tZm9udC1zaXplOiAxZW0gIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtYnV0dG9ucy1mb250LXNpemU6IDFlbSAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1mb290ZXItbWFyZ2luOiAwLjVlbSAwIDAgIWRlZmF1bHQ7XG4kc3dhbDItdG9hc3QtZm9vdGVyLXBhZGRpbmc6IDAuNWVtIDAgMCAhZGVmYXVsdDtcbiRzd2FsMi10b2FzdC1mb290ZXItZm9udC1zaXplOiAwLjhlbSAhZGVmYXVsdDtcbiIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG5cbmRpdjp3aGVyZSguc3dhbDItY29udGFpbmVyKSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTA2MDtcbiAgaW5zZXQ6IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgJ3RvcC1zdGFydCAgICAgdG9wICAgICAgICAgICAgdG9wLWVuZCdcbiAgICAnY2VudGVyLXN0YXJ0ICBjZW50ZXIgICAgICAgICBjZW50ZXItZW5kJ1xuICAgICdib3R0b20tc3RhcnQgIGJvdHRvbS1jZW50ZXIgIGJvdHRvbS1lbmQnO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbm1heChtaW4tY29udGVudCwgYXV0bykgbWlubWF4KG1pbi1jb250ZW50LCBhdXRvKSBtaW5tYXgobWluLWNvbnRlbnQsIGF1dG8pO1xuICBoZWlnaHQ6IDEwMCU7IC8vIFNhZmFyaVxuICBwYWRkaW5nOiAkc3dhbDItY29udGFpbmVyLXBhZGRpbmc7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogJHN3YWwyLWJhY2tkcm9wLXRyYW5zaXRpb247XG5cbiAgLy8gc3dlZXRhbGVydDIvaXNzdWVzLzkwNVxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgJi5zd2FsMi1iYWNrZHJvcC1zaG93LFxuICAmLnN3YWwyLW5vYW5pbWF0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dhbDItYmFja2Ryb3A7XG4gIH1cblxuICAmLnN3YWwyLWJhY2tkcm9wLWhpZGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnN3YWwyLXRvcC1zdGFydCxcbiAgJi5zd2FsMi1jZW50ZXItc3RhcnQsXG4gICYuc3dhbDItYm90dG9tLXN0YXJ0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG8gYXV0bztcbiAgfVxuXG4gICYuc3dhbDItdG9wLFxuICAmLnN3YWwyLWNlbnRlcixcbiAgJi5zd2FsMi1ib3R0b20ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICB9XG5cbiAgJi5zd2FsMi10b3AtZW5kLFxuICAmLnN3YWwyLWNlbnRlci1lbmQsXG4gICYuc3dhbDItYm90dG9tLWVuZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gbWlubWF4KDAsIDFmcik7XG4gIH1cblxuICAmLnN3YWwyLXRvcC1zdGFydCA+IC5zd2FsMi1wb3B1cCB7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gIH1cblxuICAmLnN3YWwyLXRvcCA+IC5zd2FsMi1wb3B1cCB7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgcGxhY2Utc2VsZjogc3RhcnQgY2VudGVyO1xuICB9XG5cbiAgJi5zd2FsMi10b3AtZW5kID4gLnN3YWwyLXBvcHVwLFxuICAmLnN3YWwyLXRvcC1yaWdodCA+IC5zd2FsMi1wb3B1cCB7XG4gICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgcGxhY2Utc2VsZjogc3RhcnQgZW5kO1xuICB9XG5cbiAgJi5zd2FsMi1jZW50ZXItc3RhcnQgPiAuc3dhbDItcG9wdXAsXG4gICYuc3dhbDItY2VudGVyLWxlZnQgPiAuc3dhbDItcG9wdXAge1xuICAgIGdyaWQtcm93OiAyO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gICYuc3dhbDItY2VudGVyID4gLnN3YWwyLXBvcHVwIHtcbiAgICBncmlkLWNvbHVtbjogMjtcbiAgICBncmlkLXJvdzogMjtcbiAgICBwbGFjZS1zZWxmOiBjZW50ZXIgY2VudGVyO1xuICB9XG5cbiAgJi5zd2FsMi1jZW50ZXItZW5kID4gLnN3YWwyLXBvcHVwLFxuICAmLnN3YWwyLWNlbnRlci1yaWdodCA+IC5zd2FsMi1wb3B1cCB7XG4gICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgZ3JpZC1yb3c6IDI7XG4gICAgcGxhY2Utc2VsZjogY2VudGVyIGVuZDtcbiAgfVxuXG4gICYuc3dhbDItYm90dG9tLXN0YXJ0ID4gLnN3YWwyLXBvcHVwLFxuICAmLnN3YWwyLWJvdHRvbS1sZWZ0ID4gLnN3YWwyLXBvcHVwIHtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBncmlkLXJvdzogMztcbiAgICBhbGlnbi1zZWxmOiBlbmQ7XG4gIH1cblxuICAmLnN3YWwyLWJvdHRvbSA+IC5zd2FsMi1wb3B1cCB7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgZ3JpZC1yb3c6IDM7XG4gICAgcGxhY2Utc2VsZjogZW5kIGNlbnRlcjtcbiAgfVxuXG4gICYuc3dhbDItYm90dG9tLWVuZCA+IC5zd2FsMi1wb3B1cCxcbiAgJi5zd2FsMi1ib3R0b20tcmlnaHQgPiAuc3dhbDItcG9wdXAge1xuICAgIGdyaWQtY29sdW1uOiAzO1xuICAgIGdyaWQtcm93OiAzO1xuICAgIHBsYWNlLXNlbGY6IGVuZCBlbmQ7XG4gIH1cblxuICAmLnN3YWwyLWdyb3ctcm93ID4gLnN3YWwyLXBvcHVwLFxuICAmLnN3YWwyLWdyb3ctZnVsbHNjcmVlbiA+IC5zd2FsMi1wb3B1cCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvNDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYuc3dhbDItZ3Jvdy1jb2x1bW4gPiAuc3dhbDItcG9wdXAsXG4gICYuc3dhbDItZ3Jvdy1mdWxsc2NyZWVuID4gLnN3YWwyLXBvcHVwIHtcbiAgICBncmlkLXJvdzogMS80O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIH1cblxuICAmLnN3YWwyLW5vLXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGRpdjp3aGVyZSguc3dhbDItcG9wdXApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDEwMCUpO1xuICAgIHdpZHRoOiAkc3dhbDItd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRzd2FsMi1wYWRkaW5nO1xuICAgIGJvcmRlcjogJHN3YWwyLWJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dhbDItYm9yZGVyLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dhbDItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHN3YWwyLWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkc3dhbDItZm9udDtcbiAgICBmb250LXNpemU6ICRzd2FsMi1mb250LXNpemU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5zd2FsMi1sb2FkaW5nIHtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBoMjp3aGVyZSguc3dhbDItdGl0bGUpIHtcbiAgICBwb3NpdGlvbjogJHN3YWwyLXRpdGxlLXBvc2l0aW9uO1xuICAgIG1heC13aWR0aDogJHN3YWwyLXRpdGxlLW1heC13aWR0aDtcbiAgICBtYXJnaW46ICRzd2FsMi10aXRsZS1tYXJnaW47XG4gICAgcGFkZGluZzogJHN3YWwyLXRpdGxlLXBhZGRpbmc7XG4gICAgY29sb3I6ICRzd2FsMi10aXRsZS1jb2xvcjtcbiAgICBmb250LXNpemU6ICRzd2FsMi10aXRsZS1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRzd2FsMi10aXRsZS1mb250LXdlaWdodDtcbiAgICB0ZXh0LWFsaWduOiAkc3dhbDItdGl0bGUtdGV4dC1hbGlnbjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICBkaXY6d2hlcmUoLnN3YWwyLWFjdGlvbnMpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHotaW5kZXg6IDE7IC8vIHByZXZlbnQgc3VjY2VzcyBpY29uIGZyb20gb3ZlcmxhcHBpbmcgYnV0dG9uc1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC13cmFwOiAkc3dhbDItYWN0aW9ucy1mbGV4LXdyYXA7XG4gICAgYWxpZ24taXRlbXM6ICRzd2FsMi1hY3Rpb25zLWFsaWduLWl0ZW1zO1xuICAgIGp1c3RpZnktY29udGVudDogJHN3YWwyLWFjdGlvbnMtanVzdGlmeS1jb250ZW50O1xuICAgIHdpZHRoOiAkc3dhbDItYWN0aW9ucy13aWR0aDtcbiAgICBtYXJnaW46ICRzd2FsMi1hY3Rpb25zLW1hcmdpbjtcbiAgICBwYWRkaW5nOiAkc3dhbDItYWN0aW9ucy1wYWRkaW5nO1xuXG4gICAgJjpub3QoLnN3YWwyLWxvYWRpbmcpIHtcbiAgICAgIC5zd2FsMi1zdHlsZWQge1xuICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzd2FsMi1idXR0b24tZGFya2VuLWhvdmVyLCAkc3dhbDItYnV0dG9uLWRhcmtlbi1ob3Zlcik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzd2FsMi1idXR0b24tZGFya2VuLWFjdGl2ZSwgJHN3YWwyLWJ1dHRvbi1kYXJrZW4tYWN0aXZlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdjp3aGVyZSguc3dhbDItbG9hZGVyKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogJHN3YWwyLWxvYWRlci1hbGlnbi1pdGVtcztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRzd2FsMi1sb2FkZXItanVzdGlmeS1jb250ZW50O1xuICAgIHdpZHRoOiAkc3dhbDItbG9hZGVyLXdpZHRoO1xuICAgIGhlaWdodDogJHN3YWwyLWxvYWRlci1oZWlnaHQ7XG4gICAgbWFyZ2luOiAkc3dhbDItbG9hZGVyLW1hcmdpbjtcbiAgICBhbmltYXRpb246ICRzd2FsMi1sb2FkZXItYW5pbWF0aW9uO1xuICAgIGJvcmRlci13aWR0aDogJHN3YWwyLWxvYWRlci1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXN0eWxlOiAkc3dhbDItbG9hZGVyLWJvcmRlci1zdHlsZTtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dhbDItbG9hZGVyLWJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWNvbG9yOiAkc3dhbDItbG9hZGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIGJ1dHRvbjp3aGVyZSguc3dhbDItc3R5bGVkKSB7XG4gICAgbWFyZ2luOiAkc3dhbDItYnV0dG9uLW1hcmdpbjtcbiAgICBwYWRkaW5nOiAkc3dhbDItYnV0dG9uLXBhZGRpbmc7XG4gICAgdHJhbnNpdGlvbjogJHN3YWwyLWJ1dHRvbi10cmFuc2l0aW9uO1xuICAgIGJveC1zaGFkb3c6ICRzd2FsMi1idXR0b24tYm94LXNoYWRvdztcbiAgICBmb250LXdlaWdodDogJHN3YWwyLWJ1dHRvbi1mb250LXdlaWdodDtcblxuICAgICY6bm90KFtkaXNhYmxlZF0pIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOndoZXJlKC5zd2FsMi1jb25maXJtKSB7XG4gICAgICBvcmRlcjogJHN3YWwyLWNvbmZpcm0tYnV0dG9uLW9yZGVyO1xuICAgICAgYm9yZGVyOiAkc3dhbDItY29uZmlybS1idXR0b24tYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kOiBpbml0aWFsO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWJhY2tncm91bmQtY29sb3I7XG4gICAgICBjb2xvcjogJHN3YWwyLWNvbmZpcm0tYnV0dG9uLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkc3dhbDItY29uZmlybS1idXR0b24tZm9udC1zaXplO1xuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBib3gtc2hhZG93OiAkc3dhbDItY29uZmlybS1idXR0b24tZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOndoZXJlKC5zd2FsMi1kZW55KSB7XG4gICAgICBvcmRlcjogJHN3YWwyLWRlbnktYnV0dG9uLW9yZGVyO1xuICAgICAgYm9yZGVyOiAkc3dhbDItZGVueS1idXR0b24tYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHN3YWwyLWRlbnktYnV0dG9uLWJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kOiBpbml0aWFsO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3YWwyLWRlbnktYnV0dG9uLWJhY2tncm91bmQtY29sb3I7XG4gICAgICBjb2xvcjogJHN3YWwyLWRlbnktYnV0dG9uLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkc3dhbDItZGVueS1idXR0b24tZm9udC1zaXplO1xuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBib3gtc2hhZG93OiAkc3dhbDItZGVueS1idXR0b24tZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOndoZXJlKC5zd2FsMi1jYW5jZWwpIHtcbiAgICAgIG9yZGVyOiAkc3dhbDItY2FuY2VsLWJ1dHRvbi1vcmRlcjtcbiAgICAgIGJvcmRlcjogJHN3YWwyLWNhbmNlbC1idXR0b24tYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHN3YWwyLWNhbmNlbC1idXR0b24tYm9yZGVyLXJhZGl1cztcbiAgICAgIGJhY2tncm91bmQ6IGluaXRpYWw7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dhbDItY2FuY2VsLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgY29sb3I6ICRzd2FsMi1jYW5jZWwtYnV0dG9uLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkc3dhbDItY2FuY2VsLWJ1dHRvbi1mb250LXNpemU7XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzd2FsMi1jYW5jZWwtYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zd2FsMi1kZWZhdWx0LW91dGxpbmUge1xuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYm94LXNoYWRvdzogJHN3YWwyLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiAkc3dhbDItYnV0dG9uLWZvY3VzLW91dGxpbmU7XG4gICAgfVxuXG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgZGl2OndoZXJlKC5zd2FsMi1mb290ZXIpIHtcbiAgICBtYXJnaW46ICRzd2FsMi1mb290ZXItbWFyZ2luO1xuICAgIHBhZGRpbmc6ICRzd2FsMi1mb290ZXItcGFkZGluZztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHN3YWwyLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gICAgY29sb3I6ICRzd2FsMi1mb290ZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkc3dhbDItZm9vdGVyLWZvbnQtc2l6ZTtcbiAgICB0ZXh0LWFsaWduOiAkc3dhbDItZm9vdGVyLXRleHQtYWxpZ247XG4gIH1cblxuICAuc3dhbDItdGltZXItcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGdyaWQtY29sdW1uOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHN3YWwyLWJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHN3YWwyLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBkaXY6d2hlcmUoLnN3YWwyLXRpbWVyLXByb2dyZXNzLWJhcikge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHN3YWwyLXRpbWVyLXByb2dyZXNzLWJhci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJHN3YWwyLXRpbWVyLXByb2dyZXNzLWJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgaW1nOndoZXJlKC5zd2FsMi1pbWFnZSkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46ICRzd2FsMi1pbWFnZS1tYXJnaW47XG4gIH1cblxuICBidXR0b246d2hlcmUoLnN3YWwyLWNsb3NlKSB7XG4gICAgcG9zaXRpb246ICRzd2FsMi1jbG9zZS1idXR0b24tcG9zaXRpb247XG4gICAgei1pbmRleDogMjsgLy8gc3dlZXRhbGVydDIvaXNzdWVzLzE2MTdcbiAgICBhbGlnbi1pdGVtczogJHN3YWwyLWNsb3NlLWJ1dHRvbi1hbGlnbi1pdGVtcztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRzd2FsMi1jbG9zZS1idXR0b24tanVzdGlmeS1jb250ZW50O1xuICAgIHdpZHRoOiAkc3dhbDItY2xvc2UtYnV0dG9uLXdpZHRoO1xuICAgIGhlaWdodDogJHN3YWwyLWNsb3NlLWJ1dHRvbi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogJHN3YWwyLWNsb3NlLWJ1dHRvbi1nYXA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3dhbDItY2xvc2UtYnV0dG9uLWdhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHN3YWwyLWNsb3NlLWJ1dHRvbi1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHN3YWwyLWNsb3NlLWJ1dHRvbi1wYWRkaW5nO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogJHN3YWwyLWNsb3NlLWJ1dHRvbi10cmFuc2l0aW9uO1xuICAgIGJvcmRlcjogJHN3YWwyLWNsb3NlLWJ1dHRvbi1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3YWwyLWNsb3NlLWJ1dHRvbi1ib3JkZXItcmFkaXVzO1xuICAgIG91dGxpbmU6ICRzd2FsMi1jbG9zZS1idXR0b24tb3V0bGluZTtcbiAgICBiYWNrZ3JvdW5kOiAkc3dhbDItY2xvc2UtYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRzd2FsMi1jbG9zZS1idXR0b24tY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRzd2FsMi1jbG9zZS1idXR0b24tZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkc3dhbDItY2xvc2UtYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAganVzdGlmeS1zZWxmOiAkc3dhbDItY2xvc2UtYnV0dG9uLWp1c3RpZnktc2VsZjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiAkc3dhbDItY2xvc2UtYnV0dG9uLWhvdmVyLXRyYW5zZm9ybTtcbiAgICAgIGJhY2tncm91bmQ6ICRzd2FsMi1jbG9zZS1idXR0b24taG92ZXItYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkc3dhbDItY2xvc2UtYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiAkc3dhbDItY2xvc2UtYnV0dG9uLWZvY3VzLW91dGxpbmU7XG4gICAgICBib3gtc2hhZG93OiAkc3dhbDItY2xvc2UtYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuXG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLnN3YWwyLWh0bWwtY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiAxOyAvLyBwcmV2ZW50IHN1Y2Nlc3MgaWNvbiBvdmVybGFwcGluZyB0aGUgY29udGVudFxuICAgIGp1c3RpZnktY29udGVudDogJHN3YWwyLWh0bWwtY29udGFpbmVyLWp1c3RpZnktY29udGVudDtcbiAgICBtYXJnaW46ICRzd2FsMi1odG1sLWNvbnRhaW5lci1tYXJnaW47XG4gICAgcGFkZGluZzogJHN3YWwyLWh0bWwtY29udGFpbmVyLXBhZGRpbmc7XG4gICAgb3ZlcmZsb3c6ICRzd2FsMi1odG1sLWNvbnRhaW5lci1vdmVyZmxvdztcbiAgICBjb2xvcjogJHN3YWwyLWh0bWwtY29udGFpbmVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJHN3YWwyLWh0bWwtY29udGFpbmVyLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHN3YWwyLWh0bWwtY29udGFpbmVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3dhbDItaHRtbC1jb250YWluZXItbGluZS1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogJHN3YWwyLWh0bWwtY29udGFpbmVyLXRleHQtYWxpZ247XG4gICAgd29yZC13cmFwOiAkc3dhbDItaHRtbC1jb250YWluZXItd29yZC13cmFwO1xuICAgIHdvcmQtYnJlYWs6ICRzd2FsMi1odG1sLWNvbnRhaW5lci13b3JkLWJyZWFrO1xuICB9XG5cbiAgaW5wdXQ6d2hlcmUoLnN3YWwyLWlucHV0KSxcbiAgaW5wdXQ6d2hlcmUoLnN3YWwyLWZpbGUpLFxuICB0ZXh0YXJlYTp3aGVyZSguc3dhbDItdGV4dGFyZWEpLFxuICBzZWxlY3Q6d2hlcmUoLnN3YWwyLXNlbGVjdCksXG4gIGRpdjp3aGVyZSguc3dhbDItcmFkaW8pLFxuICBsYWJlbDp3aGVyZSguc3dhbDItY2hlY2tib3gpIHtcbiAgICBtYXJnaW46ICRzd2FsMi1pbnB1dC1tYXJnaW47XG4gIH1cblxuICBpbnB1dDp3aGVyZSguc3dhbDItaW5wdXQpLFxuICBpbnB1dDp3aGVyZSguc3dhbDItZmlsZSksXG4gIHRleHRhcmVhOndoZXJlKC5zd2FsMi10ZXh0YXJlYSkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6ICRzd2FsMi1pbnB1dC13aWR0aDtcbiAgICB0cmFuc2l0aW9uOiAkc3dhbDItaW5wdXQtdHJhbnNpdGlvbjtcbiAgICBib3JkZXI6ICRzd2FsMi1pbnB1dC1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3YWwyLWlucHV0LWJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJHN3YWwyLWlucHV0LWJhY2tncm91bmQ7XG4gICAgYm94LXNoYWRvdzogJHN3YWwyLWlucHV0LWJveC1zaGFkb3c7XG4gICAgY29sb3I6ICRzd2FsMi1pbnB1dC1jb2xvcjtcbiAgICBmb250LXNpemU6ICRzd2FsMi1pbnB1dC1mb250LXNpemU7XG5cbiAgICAmLnN3YWwyLWlucHV0ZXJyb3Ige1xuICAgICAgYm9yZGVyLWNvbG9yOiAkc3dhbDItZXJyb3IgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggJHN3YWwyLWVycm9yICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXI6ICRzd2FsMi1pbnB1dC1mb2N1cy1ib3JkZXI7XG4gICAgICBvdXRsaW5lOiAkc3dhbDItaW5wdXQtZm9jdXMtb3V0bGluZTtcbiAgICAgIGJveC1zaGFkb3c6ICRzd2FsMi1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjY2NjO1xuICAgIH1cbiAgfVxuXG4gIC5zd2FsMi1yYW5nZSB7XG4gICAgbWFyZ2luOiAkc3dhbDItaW5wdXQtbWFyZ2luO1xuICAgIGJhY2tncm91bmQ6ICRzd2FsMi1iYWNrZ3JvdW5kO1xuXG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG5cbiAgICBvdXRwdXQge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIGNvbG9yOiAkc3dhbDItaW5wdXQtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGlucHV0LFxuICAgIG91dHB1dCB7XG4gICAgICBoZWlnaHQ6ICRzd2FsMi1pbnB1dC1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiAkc3dhbDItaW5wdXQtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRzd2FsMi1pbnB1dC1oZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnN3YWwyLWlucHV0IHtcbiAgICBoZWlnaHQ6ICRzd2FsMi1pbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHN3YWwyLWlucHV0LXBhZGRpbmc7XG4gIH1cblxuICAuc3dhbDItZmlsZSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogJHN3YWwyLWlucHV0LWJhY2tncm91bmQ7XG4gICAgZm9udC1zaXplOiAkc3dhbDItaW5wdXQtZm9udC1zaXplO1xuICB9XG5cbiAgLnN3YWwyLXRleHRhcmVhIHtcbiAgICBoZWlnaHQ6ICRzd2FsMi10ZXh0YXJlYS1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHN3YWwyLXRleHRhcmVhLXBhZGRpbmc7XG4gIH1cblxuICAuc3dhbDItc2VsZWN0IHtcbiAgICBtaW4td2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC4zNzVlbSAwLjYyNWVtO1xuICAgIGJhY2tncm91bmQ6ICRzd2FsMi1pbnB1dC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3dhbDItaW5wdXQtY29sb3I7XG4gICAgZm9udC1zaXplOiAkc3dhbDItaW5wdXQtZm9udC1zaXplO1xuICB9XG5cbiAgLnN3YWwyLXJhZGlvLFxuICAuc3dhbDItY2hlY2tib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJHN3YWwyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRzd2FsMi1pbnB1dC1jb2xvcjtcblxuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbjogMCAwLjZlbTtcbiAgICAgIGZvbnQtc2l6ZTogJHN3YWwyLWlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbjogMCAwLjRlbTtcbiAgICB9XG4gIH1cblxuICBsYWJlbDp3aGVyZSguc3dhbDItaW5wdXQtbGFiZWwpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogJHN3YWwyLWlucHV0LWxhYmVsLWp1c3RpZnktY29udGVudDtcbiAgICBtYXJnaW46ICRzd2FsMi1pbnB1dC1sYWJlbC1tYXJnaW47XG4gIH1cblxuICBkaXY6d2hlcmUoLnN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZSkge1xuICAgIGFsaWduLWl0ZW1zOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWFsaWduLWl0ZW1zO1xuICAgIGp1c3RpZnktY29udGVudDogJHN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZS1qdXN0aWZ5LWNvbnRlbnQ7XG4gICAgbWFyZ2luOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLW1hcmdpbjtcbiAgICBwYWRkaW5nOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLXBhZGRpbmc7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRzd2FsMi12YWxpZGF0aW9uLW1lc3NhZ2UtY29sb3I7XG4gICAgZm9udC1zaXplOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZS1mb250LXdlaWdodDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnISc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMS41ZW07XG4gICAgICBtaW4td2lkdGg6IDEuNWVtO1xuICAgICAgaGVpZ2h0OiAxLjVlbTtcbiAgICAgIG1hcmdpbjogMCAwLjYyNWVtO1xuICAgICAgem9vbTogJHN3YWwyLXZhbGlkYXRpb24tbWVzc2FnZS1pY29uLXpvb207XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWljb24tYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkc3dhbDItdmFsaWRhdGlvbi1tZXNzYWdlLWljb24tY29sb3I7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5zd2FsMi1wcm9ncmVzcy1zdGVwcyB7XG4gICAgZmxleC13cmFwOiAkc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtZmxleC13cmFwO1xuICAgIGFsaWduLWl0ZW1zOiAkc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtYWxpZ24taXRlbXM7XG4gICAgbWF4LXdpZHRoOiAkc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtbWF4LXdpZHRoO1xuICAgIG1hcmdpbjogJHN3YWwyLXByb2dyZXNzLXN0ZXBzLW1hcmdpbjtcbiAgICBwYWRkaW5nOiAkc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkc3dhbDItcHJvZ3Jlc3Mtc3RlcHMtYmFja2dyb3VuZDtcbiAgICBmb250LXdlaWdodDogJHN3YWwyLXByb2dyZXNzLXN0ZXBzLWZvbnQtd2VpZ2h0O1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5zd2FsMi1wcm9ncmVzcy1zdGVwIHtcbiAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogJHN3YWwyLXByb2dyZXNzLXN0ZXAtd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRzd2FsMi1wcm9ncmVzcy1zdGVwLWhlaWdodDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRzd2FsMi1wcm9ncmVzcy1zdGVwLWJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kOiAkc3dhbDItYWN0aXZlLXN0ZXAtYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiAkc3dhbDItYWN0aXZlLXN0ZXAtY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogJHN3YWwyLXByb2dyZXNzLXN0ZXAtaGVpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmLnN3YWwyLWFjdGl2ZS1wcm9ncmVzcy1zdGVwIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHN3YWwyLWFjdGl2ZS1zdGVwLWJhY2tncm91bmQ7XG5cbiAgICAgICAgfiAuc3dhbDItcHJvZ3Jlc3Mtc3RlcCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHN3YWwyLXByb2dyZXNzLXN0ZXAtYmFja2dyb3VuZDtcbiAgICAgICAgICBjb2xvcjogJHN3YWwyLXByb2dyZXNzLXN0ZXAtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICB+IC5zd2FsMi1wcm9ncmVzcy1zdGVwLWxpbmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRzd2FsMi1wcm9ncmVzcy1zdGVwLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dhbDItcHJvZ3Jlc3Mtc3RlcC1saW5lIHtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogJHN3YWwyLXByb2dyZXNzLXN0ZXBzLWRpc3RhbmNlO1xuICAgICAgaGVpZ2h0OiAwLjRlbTtcbiAgICAgIG1hcmdpbjogMCAtMXB4O1xuICAgICAgYmFja2dyb3VuZDogJHN3YWwyLWFjdGl2ZS1zdGVwLWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbkBpbXBvcnQgJ2ljb25zJztcblxuLy8gZ2l0aHViLmNvbS9zd2VldGFsZXJ0Mi9zd2VldGFsZXJ0Mi9pc3N1ZXMvMjY4XG5bY2xhc3NePSdzd2FsMiddIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnN3YWwyLXNob3cge1xuICBhbmltYXRpb246ICRzd2FsMi1zaG93LWFuaW1hdGlvbjtcbn1cblxuLnN3YWwyLWhpZGUge1xuICBhbmltYXRpb246ICRzd2FsMi1oaWRlLWFuaW1hdGlvbjtcbn1cblxuLnN3YWwyLW5vYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4uc3dhbDItc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gUmlnaHQtdG8tbGVmdCBzdXBwb3J0XG4uc3dhbDItcnRsIHtcbiAgLnN3YWwyLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gICAgbWFyZ2luLWxlZnQ6ICRzd2FsMi1jbG9zZS1idXR0b24tZ2FwO1xuICB9XG5cbiAgLnN3YWwyLXRpbWVyLXByb2dyZXNzLWJhciB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuIiwiLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEyMzM1ODQxLzEzMzE0MjVcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkbnVtYmVyKSB7XG4gIEByZXR1cm4gbWF0aC5kaXYoJG51bWJlciwgKCRudW1iZXIgKiAwICsgMSkpO1xufVxuJGljb24tem9vbTogbWF0aC5kaXYoc3RyaXAtdW5pdHMoJHN3YWwyLWljb24tc2l6ZSksIDUpO1xuXG5kaXY6d2hlcmUoLnN3YWwyLWljb24pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAkc3dhbDItaWNvbi1zaXplO1xuICBoZWlnaHQ6ICRzd2FsMi1pY29uLXNpemU7XG4gIG1hcmdpbjogJHN3YWwyLWljb24tbWFyZ2luO1xuICB6b29tOiAkc3dhbDItaWNvbi16b29tO1xuICBib3JkZXI6ICN7MC4yNWVtICogJGljb24tem9vbX0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLWNvbG9yOiAkc3dhbDItaWNvbi1ib3JkZXItY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkc3dhbDItaWNvbi1mb250LWZhbWlseTtcbiAgbGluZS1oZWlnaHQ6ICRzd2FsMi1pY29uLXNpemU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgLnN3YWwyLWljb24tY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogJHN3YWwyLWljb24tZm9udC1zaXplO1xuICB9XG5cbiAgJi5zd2FsMi1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc3dhbDItZXJyb3I7XG4gICAgY29sb3I6ICRzd2FsMi1lcnJvcjtcblxuICAgIC5zd2FsMi14LW1hcmsge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICBAaWYgJGljb24tem9vbSAhPSAxIHtcbiAgICAgICAgem9vbTogJGljb24tem9vbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbY2xhc3NePSdzd2FsMi14LW1hcmstbGluZSddIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyLjMxMjVlbTtcbiAgICAgIHdpZHRoOiAyLjkzNzVlbTtcbiAgICAgIGhlaWdodDogMC4zMTI1ZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjEyNWVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3YWwyLWVycm9yO1xuXG4gICAgICAmW2NsYXNzJD0nbGVmdCddIHtcbiAgICAgICAgbGVmdDogMS4wNjI1ZW07XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cblxuICAgICAgJltjbGFzcyQ9J3JpZ2h0J10ge1xuICAgICAgICByaWdodDogMWVtO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVycm9yIGljb24gYW5pbWF0aW9uXG4gICAgJi5zd2FsMi1pY29uLXNob3cge1xuICAgICAgQGlmICRzd2FsMi1pY29uLWFuaW1hdGlvbnMge1xuICAgICAgICBhbmltYXRpb246IHN3YWwyLWFuaW1hdGUtZXJyb3ItaWNvbiAwLjVzO1xuXG4gICAgICAgIC5zd2FsMi14LW1hcmsge1xuICAgICAgICAgIGFuaW1hdGlvbjogc3dhbDItYW5pbWF0ZS1lcnJvci14LW1hcmsgMC41cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuc3dhbDItd2FybmluZyB7XG4gICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRzd2FsMi13YXJuaW5nLCA3KTtcbiAgICBjb2xvcjogJHN3YWwyLXdhcm5pbmc7XG5cbiAgICAvLyBXYXJuaW5nIGljb24gYW5pbWF0aW9uXG4gICAgJi5zd2FsMi1pY29uLXNob3cge1xuICAgICAgQGlmICRzd2FsMi1pY29uLWFuaW1hdGlvbnMge1xuICAgICAgICBhbmltYXRpb246IHN3YWwyLWFuaW1hdGUtZXJyb3ItaWNvbiAwLjVzO1xuXG4gICAgICAgIC5zd2FsMi1pY29uLWNvbnRlbnQge1xuICAgICAgICAgIGFuaW1hdGlvbjogc3dhbDItYW5pbWF0ZS1pLW1hcmsgMC41cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuc3dhbDItaW5mbyB7XG4gICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRzd2FsMi1pbmZvLCAyMCk7XG4gICAgY29sb3I6ICRzd2FsMi1pbmZvO1xuXG4gICAgLy8gSW5mbyBpY29uIGFuaW1hdGlvblxuICAgICYuc3dhbDItaWNvbi1zaG93IHtcbiAgICAgIEBpZiAkc3dhbDItaWNvbi1hbmltYXRpb25zIHtcbiAgICAgICAgYW5pbWF0aW9uOiBzd2FsMi1hbmltYXRlLWVycm9yLWljb24gMC41cztcblxuICAgICAgICAuc3dhbDItaWNvbi1jb250ZW50IHtcbiAgICAgICAgICBhbmltYXRpb246IHN3YWwyLWFuaW1hdGUtaS1tYXJrIDAuOHM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnN3YWwyLXF1ZXN0aW9uIHtcbiAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJHN3YWwyLXF1ZXN0aW9uLCAyMCk7XG4gICAgY29sb3I6ICRzd2FsMi1xdWVzdGlvbjtcblxuICAgIC8vIFF1ZXN0aW9uIGljb24gYW5pbWF0aW9uXG4gICAgJi5zd2FsMi1pY29uLXNob3cge1xuICAgICAgQGlmICRzd2FsMi1pY29uLWFuaW1hdGlvbnMge1xuICAgICAgICBhbmltYXRpb246IHN3YWwyLWFuaW1hdGUtZXJyb3ItaWNvbiAwLjVzO1xuXG4gICAgICAgIC5zd2FsMi1pY29uLWNvbnRlbnQge1xuICAgICAgICAgIGFuaW1hdGlvbjogc3dhbDItYW5pbWF0ZS1xdWVzdGlvbi1tYXJrIDAuOHM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnN3YWwyLXN1Y2Nlc3Mge1xuICAgIGJvcmRlci1jb2xvcjogJHN3YWwyLXN1Y2Nlc3M7XG4gICAgY29sb3I6ICRzd2FsMi1zdWNjZXNzO1xuXG4gICAgW2NsYXNzXj0nc3dhbDItc3VjY2Vzcy1jaXJjdWxhci1saW5lJ10ge1xuICAgICAgLy8gRW11bGF0ZSBtb3ZpbmcgY2lyY3VsYXIgbGluZVxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDMuNzVlbTtcbiAgICAgIGhlaWdodDogNy41ZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICZbY2xhc3MkPSdsZWZ0J10ge1xuICAgICAgICB0b3A6IC0wLjQzNzVlbTtcbiAgICAgICAgbGVmdDogLTIuMDYzNWVtO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAzLjc1ZW0gMy43NWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3LjVlbSAwIDAgNy41ZW07XG5cbiAgICAgICAgQGlmICRpY29uLXpvb20gIT0gMSB7XG4gICAgICAgICAgem9vbTogJGljb24tem9vbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmW2NsYXNzJD0ncmlnaHQnXSB7XG4gICAgICAgIHRvcDogLTAuNjg3NWVtO1xuICAgICAgICBsZWZ0OiAxLjg3NWVtO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDMuNzVlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCA3LjVlbSA3LjVlbSAwO1xuXG4gICAgICAgIEBpZiAkaWNvbi16b29tICE9IDEge1xuICAgICAgICAgIHpvb206ICRpY29uLXpvb207XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dhbDItc3VjY2Vzcy1yaW5nIHtcbiAgICAgIC8vIFJpbmdcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB0b3A6IC0wLjI1ZW07XG4gICAgICBsZWZ0OiAtMC4yNWVtO1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJvcmRlcjogMC4yNWVtIHNvbGlkICRzd2FsMi1zdWNjZXNzLWJvcmRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgQGlmICRpY29uLXpvb20gIT0gMSB7XG4gICAgICAgIHpvb206ICRpY29uLXpvb207XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN3YWwyLXN1Y2Nlc3MtZml4IHtcbiAgICAgIC8vIEhpZGUgY29ybmVycyBsZWZ0IGZyb20gYW5pbWF0aW9uXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiAwLjVlbTtcbiAgICAgIGxlZnQ6IDEuNjI1ZW07XG4gICAgICB3aWR0aDogMC40Mzc1ZW07XG4gICAgICBoZWlnaHQ6IDUuNjI1ZW07XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXG4gICAgICBAaWYgJGljb24tem9vbSAhPSAxIHtcbiAgICAgICAgem9vbTogJGljb24tem9vbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbY2xhc3NePSdzd2FsMi1zdWNjZXNzLWxpbmUnXSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBoZWlnaHQ6IDAuMzEyNWVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2FsMi1zdWNjZXNzO1xuXG4gICAgICAmW2NsYXNzJD0ndGlwJ10ge1xuICAgICAgICB0b3A6IDIuODc1ZW07XG4gICAgICAgIGxlZnQ6IDAuODEyNWVtO1xuICAgICAgICB3aWR0aDogMS41NjI1ZW07XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cblxuICAgICAgJltjbGFzcyQ9J2xvbmcnXSB7XG4gICAgICAgIHRvcDogMi4zNzVlbTtcbiAgICAgICAgcmlnaHQ6IDAuNWVtO1xuICAgICAgICB3aWR0aDogMi45Mzc1ZW07XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaWNvbi16b29tICE9IDEge1xuICAgICAgICB6b29tOiAkaWNvbi16b29tO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN1Y2Nlc3MgaWNvbiBhbmltYXRpb25cbiAgICAmLnN3YWwyLWljb24tc2hvdyB7XG4gICAgICBAaWYgJHN3YWwyLWljb24tYW5pbWF0aW9ucyB7XG4gICAgICAgIC5zd2FsMi1zdWNjZXNzLWxpbmUtdGlwIHtcbiAgICAgICAgICBhbmltYXRpb246IHN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1saW5lLXRpcCAwLjc1cztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2FsMi1zdWNjZXNzLWxpbmUtbG9uZyB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBzd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS1sb25nIDAuNzVzO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZS1yaWdodCB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBzd2FsMi1yb3RhdGUtc3VjY2Vzcy1jaXJjdWxhci1saW5lIDQuMjVzIGVhc2UtaW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgc3dhbDItdG9hc3Qtc2hvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuNjI1ZW0pIHJvdGF0ZVooMmRlZyk7XG4gIH1cblxuICAzMyUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGVaKC0yZGVnKTtcbiAgfVxuXG4gIDY2JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMzEyNWVtKSByb3RhdGVaKDJkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZVooMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2FsMi10b2FzdC1oaWRlIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDFkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2FsMi10b2FzdC1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXAge1xuICAwJSB7XG4gICAgdG9wOiAwLjU2MjVlbTtcbiAgICBsZWZ0OiAwLjA2MjVlbTtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDU0JSB7XG4gICAgdG9wOiAwLjEyNWVtO1xuICAgIGxlZnQ6IDAuMTI1ZW07XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA3MCUge1xuICAgIHRvcDogMC42MjVlbTtcbiAgICBsZWZ0OiAtMC4yNWVtO1xuICAgIHdpZHRoOiAxLjYyNWVtO1xuICB9XG5cbiAgODQlIHtcbiAgICB0b3A6IDEuMDYyNWVtO1xuICAgIGxlZnQ6IDAuNzVlbTtcbiAgICB3aWR0aDogMC41ZW07XG4gIH1cblxuICAxMDAlIHtcbiAgICB0b3A6IDEuMTI1ZW07XG4gICAgbGVmdDogMC4xODc1ZW07XG4gICAgd2lkdGg6IDAuNzVlbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3YWwyLXRvYXN0LWFuaW1hdGUtc3VjY2Vzcy1saW5lLWxvbmcge1xuICAwJSB7XG4gICAgdG9wOiAxLjYyNWVtO1xuICAgIHJpZ2h0OiAxLjM3NWVtO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgNjUlIHtcbiAgICB0b3A6IDEuMjVlbTtcbiAgICByaWdodDogMC45Mzc1ZW07XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA4NCUge1xuICAgIHRvcDogMC45Mzc1ZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEuMTI1ZW07XG4gIH1cblxuICAxMDAlIHtcbiAgICB0b3A6IDAuOTM3NWVtO1xuICAgIHJpZ2h0OiAwLjE4NzVlbTtcbiAgICB3aWR0aDogMS4zNzVlbTtcbiAgfVxufVxuIiwiQGltcG9ydCAndG9hc3RzLWFuaW1hdGlvbnMnO1xuXG4vLyBBcHBlYXJhbmNlIGFuaW1hdGlvblxuQGtleWZyYW1lcyBzd2FsMi1zaG93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLy8gRGlzcHBlYXJhbmNlIGFuaW1hdGlvblxuQGtleWZyYW1lcyBzd2FsMi1oaWRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIFN1Y2Nlc3MgaWNvbiBhbmltYXRpb25zXG5Aa2V5ZnJhbWVzIHN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1saW5lLXRpcCB7XG4gIDAlIHtcbiAgICB0b3A6IDEuMTg3NWVtO1xuICAgIGxlZnQ6IDAuMDYyNWVtO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgNTQlIHtcbiAgICB0b3A6IDEuMDYyNWVtO1xuICAgIGxlZnQ6IDAuMTI1ZW07XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA3MCUge1xuICAgIHRvcDogMi4xODc1ZW07XG4gICAgbGVmdDogLTAuMzc1ZW07XG4gICAgd2lkdGg6IDMuMTI1ZW07XG4gIH1cblxuICA4NCUge1xuICAgIHRvcDogM2VtO1xuICAgIGxlZnQ6IDEuMzEyNWVtO1xuICAgIHdpZHRoOiAxLjA2MjVlbTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRvcDogMi44MTI1ZW07XG4gICAgbGVmdDogMC44MTI1ZW07XG4gICAgd2lkdGg6IDEuNTYyNWVtO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dhbDItYW5pbWF0ZS1zdWNjZXNzLWxpbmUtbG9uZyB7XG4gIDAlIHtcbiAgICB0b3A6IDMuMzc1ZW07XG4gICAgcmlnaHQ6IDIuODc1ZW07XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA2NSUge1xuICAgIHRvcDogMy4zNzVlbTtcbiAgICByaWdodDogMi44NzVlbTtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDg0JSB7XG4gICAgdG9wOiAyLjE4NzVlbTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMy40Mzc1ZW07XG4gIH1cblxuICAxMDAlIHtcbiAgICB0b3A6IDIuMzc1ZW07XG4gICAgcmlnaHQ6IDAuNWVtO1xuICAgIHdpZHRoOiAyLjkzNzVlbTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3YWwyLXJvdGF0ZS1zdWNjZXNzLWNpcmN1bGFyLWxpbmUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuXG4gIDUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG5cbiAgMTIlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpO1xuICB9XG59XG5cbi8vIEVycm9yIGljb24gYW5pbWF0aW9uc1xuQGtleWZyYW1lcyBzd2FsMi1hbmltYXRlLWVycm9yLXgtbWFyayB7XG4gIDAlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjYyNWVtO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC40KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNTAlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjYyNWVtO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC40KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgODAlIHtcbiAgICBtYXJnaW4tdG9wOiAtMC4zNzVlbTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2FsMi1hbmltYXRlLWVycm9yLWljb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDEwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dhbDItcm90YXRlLWxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8vIFF1ZXN0aW9uIG1hcmsgYW5pbWF0aW9uXG5Aa2V5ZnJhbWVzIHN3YWwyLWFuaW1hdGUtcXVlc3Rpb24tbWFyayB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTM2MGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7XG4gIH1cbn1cblxuLy8gSW5mbyBhbmQgV2FybmluZyBtYXJrIGFuaW1hdGlvblxuQGtleWZyYW1lcyBzd2FsMi1hbmltYXRlLWktbWFyayB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAyNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMjVkZWcpO1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDE1ZGVnKTtcbiAgICBvcGFjaXR5OiAwLjg7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMzAyNTAxNjFcbkBtaXhpbiBub3QoJGlnbm9yLWxpc3QuLi4pIHtcbiAgQGlmIChsZW5ndGgoJGlnbm9yLWxpc3QpID09IDEpIHtcbiAgICAkaWdub3ItbGlzdDogbnRoKCRpZ25vci1saXN0LCAxKTtcbiAgfVxuXG4gICRub3Qtb3V0cHV0OiAnJztcblxuICBAZWFjaCAkbm90IGluICRpZ25vci1saXN0IHtcbiAgICAkbm90LW91dHB1dDogJG5vdC1vdXRwdXQgKyAnOm5vdCgjeyRub3R9KSc7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2Nzcy9uby1kdXBsaWNhdGUtZG9sbGFyLXZhcmlhYmxlc1xuICB9XG5cbiAgJiN7JG5vdC1vdXRwdXR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQGltcG9ydCAndG9hc3RzLWJvZHknO1xuXG5AbWl4aW4gc3dlZXRhbGVydDItYm9keSgpIHtcbiAgJi5zd2FsMi1zaG93biB7XG4gICAgQGluY2x1ZGUgbm90KCcuc3dhbDItbm8tYmFja2Ryb3AnLCAnLnN3YWwyLXRvYXN0LXNob3duJykge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gbm90IG92ZXJmbG93LXkgYmVjYXVzZSBvZiBTYXJhcmksICMxMjUzXG4gICAgfVxuICB9XG5cbiAgJi5zd2FsMi1oZWlnaHQtYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IC8vICM3ODEgIzExMDdcbiAgfVxuXG4gICYuc3dhbDItbm8tYmFja2Ryb3Age1xuICAgIC5zd2FsMi1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAuc3dhbDItcG9wdXAge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgfVxuXG4gICAgICAuc3dhbDItbW9kYWwge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAkc3dhbDItYmFja2Ryb3A7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAmLnN3YWwyLXNob3duIHtcbiAgICAgIEBpbmNsdWRlIG5vdCgnLnN3YWwyLW5vLWJhY2tkcm9wJywgJy5zd2FsMi10b2FzdC1zaG93bicpIHtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgPiBbYXJpYS1oaWRkZW49J3RydWUnXSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2FsMi1jb250YWluZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIHN3ZWV0YWxlcnQyLXRvYXN0cy1ib2R5KCkge1xuICAmLnN3YWwyLXRvYXN0LXNob3duIHtcbiAgICAuc3dhbDItY29udGFpbmVyIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogJHN3YWwyLXRvYXN0LXdpZHRoO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgJi5zd2FsMi10b3Age1xuICAgICAgICBpbnNldDogMCBhdXRvIGF1dG8gNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItdG9wLWVuZCxcbiAgICAgICYuc3dhbDItdG9wLXJpZ2h0IHtcbiAgICAgICAgaW5zZXQ6IDAgMCBhdXRvIGF1dG87XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItdG9wLXN0YXJ0LFxuICAgICAgJi5zd2FsMi10b3AtbGVmdCB7XG4gICAgICAgIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICAgICAgfVxuXG4gICAgICAmLnN3YWwyLWNlbnRlci1zdGFydCxcbiAgICAgICYuc3dhbDItY2VudGVyLWxlZnQge1xuICAgICAgICBpbnNldDogNTAlIGF1dG8gYXV0byAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItY2VudGVyIHtcbiAgICAgICAgaW5zZXQ6IDUwJSBhdXRvIGF1dG8gNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zd2FsMi1jZW50ZXItZW5kLFxuICAgICAgJi5zd2FsMi1jZW50ZXItcmlnaHQge1xuICAgICAgICBpbnNldDogNTAlIDAgYXV0byBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItYm90dG9tLXN0YXJ0LFxuICAgICAgJi5zd2FsMi1ib3R0b20tbGVmdCB7XG4gICAgICAgIGluc2V0OiBhdXRvIGF1dG8gMCAwO1xuICAgICAgfVxuXG4gICAgICAmLnN3YWwyLWJvdHRvbSB7XG4gICAgICAgIGluc2V0OiBhdXRvIGF1dG8gMCA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zd2FsMi1ib3R0b20tZW5kLFxuICAgICAgJi5zd2FsMi1ib3R0b20tcmlnaHQge1xuICAgICAgICBpbnNldDogYXV0byAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29tbW9uIG1peGluIGFuZCBmdW5jdGlvbnNcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5cbi8vLyBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICBAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcbiAgfVxuXG4gIEByZXR1cm4gJG51bWJlcjtcbn1cblxuLy8vIEBleGFtcGxlXG4vLy8gQGluY2x1ZGUgcmZzbXEoKHhzOiAzMHB4LCBzbTogMzZweCwgbWQ6IDQ4cHgsIHhsOiA2NHB4KSk7XG4vLy9cbi8vLyBAcGFyYW0gJHNpemVzIFtTYXNzOjpTY3JpcHQ6OlZhbHVlOjpNYXBdXG4vLy8gQHBhcmFtICRicmVha3BvaW50cyBbU2Fzczo6U2NyaXB0OjpWYWx1ZTo6TWFwXVxuQG1peGluIHJmc21xKCRzaXplcywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJHNpemVzLCAkYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKG1hcC1nZXQoJHNpemVzLCAkYnJlYWtwb2ludCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQGV4YW1wbGVcbi8vLyBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sICh4czogMTZweCwgbWQ6IDIwcHgsIHhsOiAyNHB4KSk7XG4vLy8gQGluY2x1ZGUgcnBtcSgobWFyZ2luLWJvdHRvbSwgbWFyZ2luLXRvcCksICh4czogMTZweCwgbWQ6IDIwcHgsIHhsOiAyNHB4KSk7XG4vLy9cbi8vLyBAcGFyYW0gJHByb3BlcnRpZXMgW1Nhc3M6OlNjcmlwdDo6VmFsdWU6Ok1hcF1cbi8vLyBAcGFyYW0gJHZhbHVlcyBbU2Fzczo6U2NyaXB0OjpWYWx1ZTo6TWFwXVxuLy8vIEBwYXJhbSAkYnJlYWtwb2ludHMgW1Nhc3M6OlNjcmlwdDo6VmFsdWU6Ok1hcF1cbkBtaXhpbiBycG1xKCRwcm9wZXJ0aWVzLCAkdmFsdWVzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkdmFsdWVzLCAkYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgI3skcHJvcGVydHl9OiBtYXAtZ2V0KCR2YWx1ZXMsICRicmVha3BvaW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbkBtaXhpbiBob3Zlcigkc2VsZWN0b3JzOiAnOmhvdmVyJyAnOmZvY3VzJyAnOmFjdGl2ZScpIHtcblxuICAvLyAlaG92ZXJTdHlsZXMge1xuICAvLyAgIEBjb250ZW50O1xuICAvLyB9XG5cbiAgQGVhY2ggJHNlbGVjdG9yIGluICRzZWxlY3RvcnMge1xuICAgIEBpZiAkc2VsZWN0b3IgIT0gJzpob3Zlcicge1xuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIC8vIEBleHRlbmQgJWhvdmVyU3R5bGVzO1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgaW5kZXgoJHNlbGVjdG9ycywgJzpob3ZlcicpIHtcbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cblxuLy8vIEBleGFtcGxlXG4vLy8gQGluY2x1ZGUgcmVtKDIwcHgpO1xuLy8vXG4vLy8gQHBhcmFtICRzaXplIFtTYXNzOjpTY3JpcHQ6OlZhbHVlOjpNYXBdXG5AZnVuY3Rpb24gcmVtKCRzaXplKSB7XG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyBhbmQgdW5pdCgkc2l6ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBkZWNpbWFsLXJvdW5kKChzdHJpcC11bml0KCRzaXplKSAvIDE2KSwgMikgKyByZW07XG4gIH1cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuXG5AZnVuY3Rpb24gZGVjaW1hbC1yb3VuZCAoJG51bWJlciwgJGRpZ2l0czogMCwgJG1vZGU6IHJvdW5kKSB7XG4gICRuOiAxO1xuICAvLyAkbnVtYmVyIG11c3QgYmUgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgIT0gbnVtYmVyIHtcbiAgICBAd2FybiAnI3sgJG51bWJlciB9IGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJG51bWJlcjtcbiAgfVxuICAvLyAkZGlnaXRzIG11c3QgYmUgYSB1bml0bGVzcyBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJGRpZ2l0cykgIT0gbnVtYmVyIHtcbiAgICBAd2FybiAnI3sgJGRpZ2l0cyB9IGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJG51bWJlcjtcbiAgfSBAZWxzZSBpZiBub3QgdW5pdGxlc3MoJGRpZ2l0cykge1xuICAgIEB3YXJuICcjeyAkZGlnaXRzIH0gaGFzIGEgdW5pdC4nO1xuICAgIEByZXR1cm4gJG51bWJlcjtcbiAgfVxuICBAaWYgJGRpZ2l0cyA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGRpZ2l0cyB7XG4gICAgICAkbjogJG4gKiAxMDtcbiAgICB9XG4gIH1cbiAgQGlmICRtb2RlID09IHJvdW5kIHtcbiAgICBAcmV0dXJuIHJvdW5kKCRudW1iZXIgKiAkbikgLyAkbjtcbiAgfSBAZWxzZSBpZiAkbW9kZSA9PSBjZWlsIHtcbiAgICBAcmV0dXJuIGNlaWwoJG51bWJlciAqICRuKSAvICRuO1xuICB9IEBlbHNlIGlmICRtb2RlID09IGZsb29yIHtcbiAgICBAcmV0dXJuIGZsb29yKCRudW1iZXIgKiAkbikgLyAkbjtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJyN7ICRtb2RlIH0gaXMgdW5kZWZpbmVkIGtleXdvcmQuJztcbiAgICBAcmV0dXJuICRudW1iZXI7XG4gIH1cbn1cblxuXG5AZnVuY3Rpb24gbGluZWFyLWludGVycG9sYXRpb24oJG1pbiwgJG1heCwgJGZyb20tYnJlYWtwb2ludDogJ3hzJywgJHRvLWJyZWFrcG9pbnQ6ICd4eGwnLCAkYnJlYWtwb2ludHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJHZhbHVlczogKCk7XG5cbiAgQGlmICRmcm9tLWJyZWFrcG9pbnQgPT0gJ3hzJyBhbmQgbWFwLWdldCgkYnJlYWtwb2ludHMsIFwieHNcIikgPT0gbnVsbCB7XG4gICAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoKHhzOiAwKSwgJGJyZWFrcG9pbnRzKTtcbiAgICAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKTtcbiAgfVxuXG4gICRtaW4tYnJlYWtwb2ludC1pbmRleDogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRmcm9tLWJyZWFrcG9pbnQpO1xuICBAaWYgJG1pbi1icmVha3BvaW50LWluZGV4ID09IG51bGwge1xuICAgIEBlcnJvcignYnJlYWtwb2ludCAnICsgJGZyb20tYnJlYWtwb2ludCArICcgbm90IGZvdW5kIGluICcgKyAkYnJlYWtwb2ludHMpO1xuICB9XG4gICRtaW4tYnJlYWtwb2ludC12YWw6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWluLWJyZWFrcG9pbnQtaW5kZXgpO1xuXG4gICRtYXgtYnJlYWtwb2ludC1pbmRleDogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICR0by1icmVha3BvaW50KTtcbiAgQGlmICRtYXgtYnJlYWtwb2ludC1pbmRleCA9PSBudWxsIHtcbiAgICBAZXJyb3IoJ2JyZWFrcG9pbnQgJyArICR0by1icmVha3BvaW50ICsgJyBub3QgZm91bmQgaW4gJyArICRicmVha3BvaW50cyk7XG4gIH1cbiAgJG1heC1icmVha3BvaW50LXZhbDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRtYXgtYnJlYWtwb2ludC1pbmRleCk7XG5cbiAgJHZNYXg6ICRtYXggLSAkbWluO1xuICAkYjA6IHN0cmlwLXVuaXQobWFwLWdldCgkYnJlYWtwb2ludHMsICRmcm9tLWJyZWFrcG9pbnQpKTtcbiAgQGlmICRiMCA9PSAwIHtcbiAgICAkYjA6IHJvdW5kKChzdHJpcC11bml0KG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBicmVha3BvaW50LW5leHQoJGZyb20tYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lcykpKSAvIDMpICogMik7XG4gIH1cblxuICAkYk1heDogc3RyaXAtdW5pdChtYXAtZ2V0KCRicmVha3BvaW50cywgJHRvLWJyZWFrcG9pbnQpKTtcblxuICAvLyBAZWFjaCAkaW5kZXggaW4gcmFuZ2UoJG1pbi1icmVha3BvaW50LWluZGV4LCAkbWF4LWJyZWFrcG9pbnQtaW5kZXgpXG4gIEBmb3IgJGluZGV4IGZyb20gJG1pbi1icmVha3BvaW50LWluZGV4IHRocm91Z2ggJG1heC1icmVha3BvaW50LWluZGV4IHtcbiAgICAkYnJlYWtwb2ludC1uYW1lOiBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRpbmRleCk7XG4gICAgJGI6ICRiMDtcbiAgICBAaWYgJGJyZWFrcG9pbnQtbmFtZSAhPSAkZnJvbS1icmVha3BvaW50IHtcbiAgICAgICRiOiBzdHJpcC11bml0KG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lKSk7XG4gICAgfVxuXG4gICAgJHZhbHVlOiAoKCgkYiAtICRiMCkgKiAkdk1heCkgLyAoJGJNYXggLSAkYjApKSArICRtaW47XG4gICAgLy8gbWFwLXNldCgkdmFsdWVzLCAkYnJlYWtwb2ludC1uYW1lLCByb3VuZCgkdmFsdWUsIDIpKTtcbiAgICAkdmFsdWVzOiBtYXAtbWVyZ2UoJHZhbHVlcywgKCRicmVha3BvaW50LW5hbWU6IGRlY2ltYWwtcm91bmQoJHZhbHVlLCAyKSkpXG5cbiAgICAvLyB3YXJuKFwiLS0tPiBcIiArICRicmVha3BvaW50LW5hbWUgKyBcIjogIG1pbihcIiArICRtaW4gKyBcIikgbWF4KFwiICsgJG1heCArIFwiKSB2TWF4KFwiICsgJHZNYXggKyBcIikgYjAoXCIgKyAkYjAgKyBcIikgYk1heChcIiArICRiTWF4ICsgXCIpIC0tPiBcIiArICR2YWx1ZXNbJGJyZWFrcG9pbnQtbmFtZV0gKyBcIiBcIilcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlc1xufVxuXG4vLyBUdXJuIG1hcHMgaW50byBpdHMgbmVnYXRpdmUgdmFyaWFudC5cbkBmdW5jdGlvbiBuZWdhdGl2aWZ5LW1hcC1zYW1lLWtleSgkbWFwKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmICRrZXkgIT0gMCB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICgtJHZhbHVlKSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLCIvLyAtLS0tXG4vLyBTYXNzICh2My4zLjcpXG4vLyBDb21wYXNzICh2MS4wLjAuYWxwaGEuMTgpXG4vLyAtLS0tXG5cbi8vIEhlbHBlciBtaXhpbiBmb3Igb2Zmc2V0IHBvc2l0aW9uaW5nXG4vLyBBYm91dDogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTQvMDUvMTkvbmV3LW9mZnNldHMtc2Fzcy1taXhpbi8gTmI6IGZpeGVkIGFuIGVycm9yOiBpbmRleCByZXR1cm4gbnVsbCBub3QgZmFsc2Ugd2hlbiB2YWx1ZSBub3QgZm91bmRcbi8vIC0tLVxuLy8gSGVyZSBpcyBhbiBpbXByb3ZlZCB2ZXJzaW9uIGFkZGluZyBzb21lIGV4dHJhIGZlYXR1cmVzXG4vLyAtLS1cbi8vIEBwYXJhbSBbc3RyaW5nXSAkcG9zaXRpb246IHBvc2l0aW9uXG4vLyBAcGFyYW0gW2xpc3RdICRhcmdzICgoKSk6IG9mZnNldHMgbGlzdFxuLy8gLS0tXG4vLyBFeHBsYW5hdGlvbnNcbi8vIDEuIE91dHB1dCBwb3NpdGlvblxuLy8gMi4gSWYgYCRhcmdzYCBpcyBub3QgZW1wdHlcbi8vIDMuIExvb3Agb3RoZXIgdGhlIDQgcG9wdWxhciBvZmZzZXRzIChgJG9mZnNldHNgKVxuLy8gNC4gQ2hlY2sgaWYgdGhlIGN1cnJlbnQgb25lIGV4aXN0cyBpbiBgJGFyZ3NgXG4vLyA1LiBJZiBpdCBpcyBmb3VuZCBpbiBgJGFyZ3NgXG4vLyA2LiBBbmQgaWYgaXQgaXMgYXQgbGFzdCBwb3NpdGlvblxuLy8gNy4gU2V0IGl0IHRvIDBcbi8vIDguIEVsc2UgaWYgaXQgaXMgZm91bmQgYXQgYW55IG90aGVyIGluZGV4XG4vLyA5LiBTdG9yZSB0aGUgbmV4dCB2YWx1ZSBmcm9tIGAkYXJnc2Bcbi8vIDEwLiBJZiBpdCBpcyBhIHZhbGlkIGxlbmd0aFxuLy8gMTEuIFNldCB0aGUgb2Zmc2V0IHRvIHRoaXMgdmFsdWVcbi8vIDEyLiBFbHNlIGlmIGl0IGlzIGFub3RoZXIgb2Zmc2V0XG4vLyAxMy4gU2V0IHRoZSBvZmZzZXQgdG8gMFxuLy8gMTQuIEVsc2Vcbi8vIDE1LiBXYXJuIHRoZSB1c2VyXG4vLyAtLS1cblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbiwgJGFyZ3M6ICgpKSB7XG4gICRvZmZzZXRzOiB0b3AgcmlnaHQgYm90dG9tIGxlZnQ7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAxXG5cbiAgQGVhY2ggJG9mZnNldCBpbiAkb2Zmc2V0cyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDNcbiAgICAkaW5kZXg6IGluZGV4KCRhcmdzLCAkb2Zmc2V0KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDRcblxuICAgIEBpZiAkaW5kZXggeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gNVxuICAgICAgQGlmICRpbmRleCA9PSBsZW5ndGgoJGFyZ3MpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gNlxuICAgICAgICAjeyRvZmZzZXR9OiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gN1xuICAgICAgfVxuICAgICAgQGVsc2UgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gOFxuICAgICAgICAkbmV4dDogbnRoKCRhcmdzLCAkaW5kZXggKyAxKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gOVxuICAgICAgICBAaWYgaXMtdmFsaWQtbGVuZ3RoKCRuZXh0KSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTBcbiAgICAgICAgICAjeyRvZmZzZXR9OiAkbmV4dDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDExXG4gICAgICAgIH1cbiAgICAgICAgQGVsc2UgaWYgaW5kZXgoJG9mZnNldHMsICRuZXh0KSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDEyXG4gICAgICAgICAgI3skb2Zmc2V0fTogMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAxM1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAxNFxuICAgICAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBgI3skbmV4dH1gIGZvciBvZmZzZXQgYCN7JG9mZnNldH1gLlwiOyAvLyAxNVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1bmN0aW9uIGNoZWNraW5nIGlmICR2YWx1ZSBpcyBhIHZhbGlkIGxlbmd0aFxuLy8gLS0tXG4vLyBAcGFyYW0gW2xpdGVyYWxdICR2YWx1ZTogdmFsdWUgdG8gdGVzdFxuLy8gLS0tXG4vLyBAcmV0dXJuIFtib29sXVxuXG5AZnVuY3Rpb24gaXMtdmFsaWQtbGVuZ3RoKCR2YWx1ZSkge1xuICBAcmV0dXJuICh0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiBhbmQgbm90IHVuaXRsZXNzKCR2YWx1ZSkpIG9yIChpbmRleChhdXRvIGluaXRpYWwgaW5oZXJpdCAwLCAkdmFsdWUpICE9IG51bGwpO1xufVxuXG4vLyBTaG9ydGhhbmRzXG4vLyAtLS1cblxuQG1peGluIGFic29sdXRlKCRhcmdzOiAoKSkge1xuICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgJGFyZ3MpO1xufVxuXG5AbWl4aW4gZml4ZWQoJGFyZ3M6ICgpKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAkYXJncyk7XG59XG5cbkBtaXhpbiByZWxhdGl2ZSgkYXJnczogKCkpIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUsICRhcmdzKTtcbn1cblxuLy8gRXhhbXBsZXNcbi8vIC0tLVxuXG5cbi8vIC5hIHtcbi8vICAgQGluY2x1ZGUgYWJzb2x1dGUoKTtcbi8vIH1cbi8vXG4vLyAuYiB7XG4vLyAgIEBpbmNsdWRlIGFic29sdXRlKHRvcCk7XG4vLyB9XG4vL1xuLy8gLmMge1xuLy8gICBAaW5jbHVkZSBhYnNvbHV0ZSh0b3AgcmlnaHQpO1xuLy8gfVxuLy9cbi8vIC5kIHtcbi8vICAgQGluY2x1ZGUgYWJzb2x1dGUodG9wIHJpZ2h0IGJvdHRvbSk7XG4vLyB9XG4vL1xuLy8gLmUge1xuLy8gICBAaW5jbHVkZSBhYnNvbHV0ZSh0b3AgcmlnaHQgYm90dG9tIGxlZnQpO1xuLy8gfVxuLy9cbi8vIC5mIHtcbi8vICAgQGluY2x1ZGUgYWJzb2x1dGUodG9wIHJpZ2h0IDFlbSk7XG4vLyB9XG4vL1xuLy8gLmcge1xuLy8gICBAaW5jbHVkZSBhYnNvbHV0ZSh0b3AgMWVtIHJpZ2h0KTtcbi8vIH1cbi8vXG4vLyAuaCB7XG4vLyAgIEBpbmNsdWRlIGFic29sdXRlKHRvcCAxZW0gcmlnaHQgMTAwJSk7XG4vLyB9XG4vL1xuLy8gLmkge1xuLy8gICBAaW5jbHVkZSBhYnNvbHV0ZSh0b3AgcmlnaHQgbWlzdGFrZSk7XG4vLyB9XG4vL1xuLy8gLmoge1xuLy8gICBAaW5jbHVkZSBhYnNvbHV0ZSh0b3AgMWVtIHJpZ2h0IDFlbSBib3R0b20gMWVtIGxlZnQgMWVtKVxuLy8gfVxuXG5cbiIsIi5kZmQtZnVsbHNjcmVlbi5kZmQtYW5pbWF0ZSAuZGZkLWxheWVyIHtcbiAgQGluY2x1ZGUgcnBtcSgobGVmdCksICh4czogbm9uZSwgbGc6IDMwJSkpO1xuICBAaW5jbHVkZSBycG1xKCh3aWR0aCksICh4czogbm9uZSwgbGc6IDcwJSkpO1xuICBAaW5jbHVkZSBycG1xKChtYXgtaGVpZ2h0KSwgKHhzOiAxMDAlLCBsZzogNzUlKSk7XG5cbiAgICAuZGZkLXNlYXJjaGJveCB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnk7XG4gICAgfVxuXG4vKiAgICAuZGZkLWNhcmQtdGl0bGU6OmZpcnN0LWxldHRlcntcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLmRmZC1jYXJkLXRpdGxle1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICB9Ki9cblxuICAgIC5kZmQtYnRuLXRlcm0tZmlsdGVyOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIH1cblxuICAgIC5kZmQtY2xvc2UtYnV0dG9uIHtcbiAgICAgIC0tZGZkLWNsb3NlLWJ1dHRvbi1zY2FsZTogNzAlO1xuICAgIH1cblxuICAgIC5kZmQtY2FyZC1mbGFne1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgfVxuXG4gICAgLmRmZC1zbGlkZXItdG9vbHRpcCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIH1cblxuICAgIC5kZmQtc2xpZGVyLWhhbmRsZSB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeTtcbiAgICB9XG5cbiAgICAuZGZkLWNhcmQ6aG92ZXIsIC5kZmQtY2FyZDpmb2N1cy12aXNpYmxle1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgLmRmZC1jYXJke1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kZi1uZXV0cmFsLW91dGxpbmUsICNjYmNjY2QpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgY29sb3I6IHZhcigtLWRmLW5ldXRyYWwtaGlnaC1jb250cmFzdCwgIzMyMzMzNCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kZi1uZXV0cmFsLXN1cmZhY2UsIHdoaXRlKTtcblxuICAgIH1cblxuICAgIC5kZmQtbWV0YSwgLmRmZC1icmFuZGluZ3tcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZGZkLWFzaWRle1xuICAgICAgd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmRmZC1yZXN1bHRzLWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tZGZkLXJlc3VsdHMtZ3JpZC1jb2x1bW4tY291bnQsIGF1dG8tZmlsbCksIHZhcigtLWRmZC1yZXN1bHRzLWdyaWQtY29sdW1uLXNpemUsIG1pbm1heCgxNDRweCwgMWZyKSkpO1xuICAgIH1cblxuICAgIC5kZmQtc3VnZ2VzdGlvbi1idXR0b257XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC5kZmQtZnVsbHNjcmVlbiBidXR0b25bZGF0YS1kZmQtcm9sZT1iYWNrLXRvLXRvcF17XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5kZmQtY2FyZC1wcmljaW5ne1xuICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8qc1tkYXRhLWRmZC1yb2xlPXNjcm9sbC1zZW50aW5lbF0ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH0qL1xufVxuXG4uZGZkLW1vYmlsZSB7XG5cbiAgICAuZGZkLWFzaWRlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5kZmQtYXNpZGUtaGVhZGVyIHNtYWxsIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuZGZkLWJhY2stdG8tdG9wLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5kZmQtdG9nZ2xlLWZpbHRlcnMtYnV0dG9uLCAuZGZkLWNsb3NlLWZpbHRlcnMtYnV0dG9uLCAuZGZkLWNsZWFyLWZpbHRlcnMtYnV0dG9uLCAuZGZkLXNtYXJ0LWZpbHRlci1idXR0b24tcHJpbWFyeSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgfVxuXG4gICAgLmRmZC1yZXN1bHRzLWdyaWQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICB9XG5cbiAgICAuZGZkLWNhcmQ6aG92ZXIsIC5kZmQtY2FyZDpmb2N1cy12aXNpYmxle1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgLmRmZC1jYXJke1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kZi1uZXV0cmFsLW91dGxpbmUsICNjYmNjY2QpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgY29sb3I6IHZhcigtLWRmLW5ldXRyYWwtaGlnaC1jb250cmFzdCwgIzMyMzMzNCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kZi1uZXV0cmFsLXN1cmZhY2UsIHdoaXRlKTtcblxuICAgIH1cblxuICAgIC5kZmQtc21hcnQtZmlsdGVyLWJ1dHRvbntcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLmRmZC1tZXRhLCAuZGZkLWJyYW5kaW5ne1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuIiwiLmhlYWRlci1iYW5uZXIge1xuXG4gICY6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICAgIC5zbGlkZS1jb250ZW50Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIFxuICAuc2xpZGUtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbWFnZS1wbGFjZWhvbGRlci1iZztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgLmVtYmVkLWNvbnRhaW5lcjEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGhlaWdodDogMTAwc3ZoO1xuICAgICAgbWluLWhlaWdodDogMTAwc3ZoO1xuXG4gICAgICBpZnJhbWUuYmFja2dyb3VuZC1jb3ZlcixcbiAgICAgIHZpZGVvLmJhY2tncm91bmQtY292ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5iYW5uZXItY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy9oZWlnaHQ6IDEwMHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBycG1xKGFsaWduLWl0ZW1zLCAobWJsOiBjZW50ZXIsIGRzazogY2VudGVyKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMCwgbWQ6IDAsIGxnOiAwKSk7XG4gICAvLyBAaW5jbHVkZSBycG1xKHBhZGRpbmctYm90dG9tLCAoeHM6IDAsIG1kOiAwLCBsZzogNyUpKTtcbiAgICBAaW5jbHVkZSBycG1xKGJvdHRvbSwgKHhzOiAwLCBtZDogMjB2aCkpO1xuICAgIEBpbmNsdWRlIHJwbXEodHJhbnNmb3JtLCAoeHM6IHRyYW5zbGF0ZVkoLTMwJSksIG1kOiB0cmFuc2xhdGVZKDApKSk7XG5cbiAgICBAaW5jbHVkZSBycG1xKGZsZXgtZGlyZWN0aW9uLCAoeHM6IGNvbHVtbiwgbGc6IGNvbHVtbikpO1xuICAgIEBpbmNsdWRlIHJwbXEoanVzdGlmeS1jb250ZW50LCAoeHM6IGNlbnRlciwgbGc6IGNlbnRlcikpO1xuICAgIEBpbmNsdWRlIHJwbXEobWluLWhlaWdodCwgKHhzOiAwLCBtZDogMCwgeHhsOiAwKSk7XG4gICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWxlZnQsIChtZDogNzBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1yaWdodCwgKG1kOiA3MHB4KSk7XG5cblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDM2cHgsIGxnOiA0OHB4KSk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMTBweCByZ2JhKCRzaGFkb3ctY29sb3IsIC40KTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxMHB4IHJnYmEoJHNoYWRvdy1jb2xvciwgLjQpO1xuICAgICAgQGluY2x1ZGUgcnBtcShmb250LXNpemUsIChtYmw6IDE0cHgsIGRzazogMTZweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgfVxuXG5cbiAgICAudGV4dCB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgsIGxnOiAxOHB4KSk7XG4gICAgICBsaW5lLWhlaWdodDogMS4xNjtcblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW4tYm90dG9tKDM2cHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgQGluY2x1ZGUgcnBtcShmb250LXNpemUsIChtYmw6IGluaGVyaXQsIGRzazogMjBweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgfVxuXG4gICAgJi5iYW5uZXItY29udGVudC1zbWFsbCB7XG4gICAgICAuaGVhZGluZyB7XG4gICAgICAgIEBpbmNsdWRlIHJmcyg0OHB4KTtcbiAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICAgIH1cblxuICAgICAgLnRleHQge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNHB4KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICB9XG5cbiAgLnRleHQtYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNsYW1wKDIwcHgsIDR2dywgNjBweCk7XG4gICAgYm90dG9tOiBjbGFtcCgyMHB4LCA0dncsIDYwcHgpO1xuICAgIHotaW5kZXg6IDIwO1xuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMjRweCwgbGc6IDI4cHgsIHhsOiAzNnB4LCB4eGw6IDQycHgpKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC40cyBlYXNlLCBvcGFjaXR5IC40cyBlYXNlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBsZzogMThweCkpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbGc6IDE2cHgpKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIGNvbG9yIC4zcyBlYXNlO1xuICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIC44KTtcbiAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5wcm9kdWN0LWJveCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAwLCBzbTogMCkpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAvLyBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gIGltZy5iYWNrZ3JvdW5kLWNvdmVyLFxuICBpbWcuYmFja2dyb3VuZC1jb250YWluIHtcbiAgICAvLyBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7XG5cbiAgICAvLyBAaW5jbHVkZSBycG1xKHJpZ2h0LCAoeHM6IDUlLCBzbTogMTAlKSk7XG4gICAgLy8gQGluY2x1ZGUgcnBtcShsZWZ0LCAoeHM6IDUlLCBzbTogMTAlKSk7XG4gICAgLy8gQGluY2x1ZGUgcnBtcSh0b3AsICh4czogNSUsIHNtOiAxMCUpKTtcbiAgICAvLyBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDkwJSwgc206IDgwJSkpO1xuICAgIC8vIEBpbmNsdWRlIHJwbXEoaGVpZ2h0LCAoeHM6IGF1dG8sIHNtOiBhdXRvKSk7XG4gICAgLy8gb2JqZWN0LWZpdDogY292ZXI7XG4gICAgLy8gZGlzcGxheTogYmxvY2s7XG5cbiAgfVxuXG4gICYuaG9tZWdhbGxlcnkge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMThweCwgbWQ6IDI0cHgpKTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICB9XG5cbiAgICBpbWcuYmFja2dyb3VuZC1jb3ZlcixcbiAgICBpbWcuYmFja2dyb3VuZC1jb250YWluIHtcbiAgICAgIC8vIG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcblxuICAgICAgLy8gQGluY2x1ZGUgcnBtcShyaWdodCwgKHNtOiAwLCB4czogMCkpO1xuICAgICAgLy8gQGluY2x1ZGUgcnBtcShsZWZ0LCAoc206IDAsIHhzOiAwKSk7XG4gICAgICAvLyBAaW5jbHVkZSBycG1xKHdpZHRoLCAoc206IDEwMCUsIHhzOiAxMDAlKSk7XG4gICAgICAvLyBAaW5jbHVkZSBycG1xKGhlaWdodCwgKHNtOiBhdXRvLCB4czogYXV0bykpO1xuICAgICAgLy8gdG9wOiAwO1xuICAgIH1cblxuICAgIC5saW5rIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoKDYwMCAvIDYwMCkgKiAxMDAlKTsgLy8gQXNwZWN0IHJhdGlvIDYwMHg2MDBcbiAgICB9XG4gIH1cblxuICAmLnNsaWRlci1oaWdobGlnaHQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlLCBzbTogMTAwJSkpO1xuICB9XG5cbiAgLy8gLm1vcmUtY29sb3JzIHtcbiAgLy8gICBjb2xvcjogJHRleHQtY29sb3I7XG4gIC8vICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy8gICBAaW5jbHVkZSByZnNtcSgoeHM6IDlweCwgbWQ6IDEycHgpKTtcbiAgLy8gICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMCwgc206IDEwcHgpKTtcbiAgLy8gfVxuICAubW9yZS1jb2xvcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMDtcblxuICAgIC8vIGV4dHJhIGNoaXVzaSBkaSBkZWZhdWx0XG4gICAgLmNvbG9yLWJveC5leHRyYS1jb2xvciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAuY29sb3ItYm94IHtcbiAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMThweCwgc206IDE4cHgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoaGVpZ2h0LCAoeHM6IDE4cHgsIHNtOiAxOHB4KSk7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbiwgKHhzOiAwIDZweCA2cHggMCwgc206IDAgNnB4IDZweCAwKSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJi5pcy1sb2FkaW5nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGluc2V0OiAtM3B4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kZWQ7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pcy1sb2FkaW5nOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtcm91bmRlZDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDAuN3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICB0byB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZztcbiAgICAgICAgICBib3R0b206IC0zcHg7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBsZWZ0OiAtM3B4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogLTNweDtcbiAgICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sb3ItbW9yZS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLCAoeHM6IDAgMCA2cHggMnB4LCBzbTogMCAwIDZweCAycHgpKTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4LCBtZDogMTRweCkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICBtYXgtaGVpZ2h0OiAxOHB4O1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2U7XG5cbiAgICAgICYuaXMtb3BlbiB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGluayB7XG4gICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgLy9mbGV4LWdyb3c6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBAaW5jbHVkZSByZWxhdGl2ZSgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgLy8gQGluY2x1ZGUgcnBtcShwYWRkaW5nLWxlZnQgcGFkZGluZy1yaWdodCwgKHhzOiAwcHgsIHNtOiAyMHB4LCBtZDogMTBweCwgbGc6IDIwcHgsIHh4bDogMzBweCkpO1xuICAgIC8vIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AgcGFkZGluZy1ib3R0b20sICh4czogMTBweCwgc206IDIwcHgsIG1kOiAxMHB4LCBsZzogMjBweCwgeHhsOiAzMHB4KSk7XG5cbiAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgIC5pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGlzY291bnQtYmFkZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAkc2Vjb25kYXJ5O1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDNweCA4cHgsIHNtOiAzcHggOHB4KSk7XG4gICAgICBAaW5jbHVkZSBycG1xKHRvcCBsZWZ0LCAoeHM6IDVweCwgc206IDEwcHgpKTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCwgbWQ6IDEycHgpKTtcbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTI1JTsgLy8gNS80ID0gMS4yNSA9IDEyNSUgYXNwZWN0IHJhdGlvXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDAsIHNtOiAwKSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXh0cmFsaWdodGdyZXk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIGluIGNhc28gZGkgYmFycmEgYW5pbWF0YVxuXG4gICAgICAuaW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsXG4gICAgICAgICAgICAkaW1hZ2UtcGxhY2Vob2xkZXItYmcgMCUsXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDUpIDUwJSxcbiAgICAgICAgICAgICRpbWFnZS1wbGFjZWhvbGRlci1iZyAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gICAgICAgIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItc2hpbW1lciAxLjFzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuaXMtbG9hZGVkIC5pbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLy8gU3BsaWRlIHdyYXBwZXIgaW5zaWRlIHRoZSBzcXVhcmUgcmF0aW9cbiAgICAgIC5wcm9kdWN0LWdhbGxlcnkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5zcGxpZGVfX3RyYWNrLFxuICAgICAgICAuc3BsaWRlX19saXN0LFxuICAgICAgICAuc3BsaWRlX19zbGlkZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNwbGlkZV9fc2xpZGUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXh0cmFsaWdodGdyZXk7XG5cbiAgICAgICAgICBpbWcuYmFja2dyb3VuZC1jb3ZlcixcbiAgICAgICAgICBpbWcuYmFja2dyb3VuZC1jb250YWluIHtcbiAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEocmlnaHQsICh4czogNSUsIHNtOiA1JSkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShsZWZ0LCAoeHM6IDUlLCBzbTogNSUpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEodG9wLCAoeHM6IDUlLCBzbTogNSUpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogOTAlLCBzbTogOTAlKSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKGhlaWdodCwgKHhzOiBhdXRvLCBzbTogYXV0bykpO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3BsaWRlX19wYWdpbmF0aW9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKGJvdHRvbSwgKHhzOiAzcHgsIHNtOiA2cHgpKTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKGxlZnQgcmlnaHQsICh4czogMTBweCwgc206IDEycHgpKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtcm91bmRlZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRwcmltYXJ5LCAuMik7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IHZhcigtLXByb2R1Y3QtZ2FsbGVyeS1wcm9ncmVzcywgMCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMjVzIGVhc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5pcy1zaW5nbGUtc2xpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2Uge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gaW1tYWdpbmUgdGVtcG9yYW5lYSBzb3ZyYXBwb3N0YVxuICAgICAgLmJhY2tncm91bmQtY292ZXItdGVtcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQGtleWZyYW1lcyBwbGFjZWhvbGRlci1zaGltbWVyIHtcbiAgICAgICAgMCUge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDAlIDA7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMDAlIDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMi41cyBlYXNpbmcoKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZSwgb3BhY2l0eSAuMnMgZWFzZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cblxuICAgICAgaW1nLmlzLWxvYWRlZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cblxuICAgICAgJisqIHtcbiAgICAgICAgLy8gbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAxMHB4IDYlIDIwcHggNiUsIHNtOiAxNXB4IDUlIDE1cHggNSUsICkpO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgLmNvbG9ycy1jb3VudCB7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCwgbWQ6IDEzcHgpKTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgfVxuXG4gICAgICAuY2F0ZWdvcnksXG4gICAgICAubmFtZSxcbiAgICAgIC5wcmljZSB7XG4gICAgICAgIC8vIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgcmVsYXRpdmUoKTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jYXRlZ29yeSxcbiAgICAgIC5uYW1lIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jYXRlZ29yeSB7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTZweCkpO1xuICAgICAgfVxuXG4gICAgICBoMy5uYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxM3B4LCBtZDogMTRweCkpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAucHJvZHVjdC1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgICAgIGxpbmUtY2xhbXA6IDI7XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMiAqIDEuMWVtKTsgLy8gMiBsaW5lZSAqIGxpbmUtaGVpZ2h0XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcmljZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE0cHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzY291bnQtcHJpY2Uge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbWVkLWJyb3duO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHt9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5mYWtlLWxpbmsge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vdG9wOiAxMHB4O1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAvL3BhZGRpbmc6IDNweCAxNHB4O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDNweCA4cHgsIHNtOiAzcHggOHB4KSk7XG4gICAgICBAaW5jbHVkZSBycG1xKHRvcCByaWdodCwgKHhzOiAzcHgsIHNtOiAxMHB4KSk7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgsIG1kOiAxMnB4KSk7XG5cbiAgICB9XG5cbiAgICAubGFiZWxJY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogM3B4IDhweCwgc206IDNweCA4cHgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEodG9wLCAoeHM6IDAsIHNtOiA3cHgpKTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTNweCkpO1xuXG4gICAgfVxuXG4gIH1cblxuXG5cblxufVxuXG4ucHJvZHVjdC1ib3ggLmltYWdlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gIC8qIDEvMSAocXVhZHJhdG8pLCA0LzUgZWNjICovXG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmJ1eS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAzcHggM3B4LCBzbTogM3B4IDNweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEoYm90dG9tLCAoeHM6IDEwcHgsIHNtOiAxNXB4KSk7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4LCBtZDogMTJweCkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAubHVjaWRlLFxuICAgIFtkYXRhLWx1Y2lkZV0ge1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgfVxuICB9XG59XG5cbi8qIGxhIGdhbGxlcnkgZGV2ZSByaWVtcGlyZSBpbCBjb250YWluZXIgKi9cbi5wcm9kdWN0LWJveCAuaW1hZ2UtY29udGFpbmVyIC5wcm9kdWN0LWdhbGxlcnkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKiBhbmNoZSBzdHJ1dHR1cmEgc3BsaWRlIGRldmUgYXZlcmUgYWx0ZXp6YSAqL1xuLnByb2R1Y3QtYm94IC5wcm9kdWN0LWdhbGxlcnksXG4ucHJvZHVjdC1ib3ggLnByb2R1Y3QtZ2FsbGVyeSAuc3BsaWRlX190cmFjayxcbi5wcm9kdWN0LWJveCAucHJvZHVjdC1nYWxsZXJ5IC5zcGxpZGVfX2xpc3QsXG4ucHJvZHVjdC1ib3ggLnByb2R1Y3QtZ2FsbGVyeSAuc3BsaWRlX19zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIGltbWFnaW5lIGNvdmVyICovXG4ucHJvZHVjdC1ib3ggLmltYWdlLWNvbnRhaW5lciBpbWcuYmFja2dyb3VuZC1jb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG4uaW1hZ2UtY29udGFpbmVyIC5sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBib3JkZXI6IDJweCBzb2xpZCAjOTk5O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGFpbjogc3RyaWN0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMjBweDtcbiAgYW5pbWF0aW9uOiByb3RhdGlvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4uaW1hZ2UtY29udGFpbmVyLmlzLWxvYWRpbmcgLmxvYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuXG4vKiBxdWFuZG8gbG9hZGVkIHNwYXJpc2NlICovXG4uaW1hZ2UtY29udGFpbmVyLmlzLWxvYWRlZCAubG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGtleWZyYW1lcyByb3RhdGlvbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4vLyBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpe1xuLy8gICAubWFpbi1zbGlkZXIgLmltYWdlLWNvbnRhaW5lcnsgbWluLWhlaWdodDogNDIwcHg7IH1cbi8vIH1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubWFpbi1zbGlkZXIgLmltYWdlLWNvbnRhaW5lciAubG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG5cbi5jb2xvcnMgLnNlbGVjdG9yIC50aHVtYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDM0cHg7XG4gIC8qIGNhbWJpYSBzZSB2dW9pICovXG4gIGhlaWdodDogMzRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xufVxuXG4vKiBpbW1hZ2luZSBjb3ByZSB0dXR0byAqL1xuLmNvbG9ycyAuc2VsZWN0b3IgLnRodW1iIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZTtcbn1cblxuLyogcXVhbmRvIGxvYWRlZCAqL1xuLmNvbG9ycyAuc2VsZWN0b3IgLnRodW1iLmlzLWxvYWRlZCBpbWcge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBsb2FkZXIgKi9cbi5jb2xvcnMgLnNlbGVjdG9yIC50aHVtYi1sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBib3JkZXI6IDJweCBzb2xpZCAjOTk5O1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGFpbjogc3RyaWN0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTVweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMTVweDtcbiAgYW5pbWF0aW9uOiByb3RhdGlvbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuXG5cbi8qIG1vc3RyYSBsb2FkZXIgcXVhbmRvIGxvYWRpbmcgKi9cbi5jb2xvcnMgLnNlbGVjdG9yIC50aHVtYi5pcy1sb2FkaW5nIC50aHVtYi1sb2FkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRpb24ge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gIH1cbn0iLCIuc2VjdGlvbi1kaXZpZGVyIHtcbiAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wIG1hcmdpbi1ib3R0b20sIGxpbmVhci1pbnRlcnBvbGF0aW9uKDMwcHgsIDgwcHgsIHhzLCB4eGwpKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgcmZzKDI4cHgpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG4iLCIucHJvZHVjdHMtaGlnaGxpZ2h0IHtcbiAgb3ZlcmZsb3cteDogY2xpcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMTBweCwgbWQ6IDAsIHhsOiAwKSk7XG4gIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAwLCBtZDogMCwgeGw6IDApKTtcblxuICAucHJvZHVjdC1ib3gge1xuICAgIC8vIEBpbmNsdWRlIHJwbXEoIG1heC13aWR0aCwgKG1kOiAzMjVweCkpOyAvKiAzMjVweCDDqCBsYSBsYXJnaGV6emEgbWFzc2ltYSBkaSB1biBwcm9kb3R0bywgY2FtYmlhcmUgaW4gYmFzZSBhbCBudW1lcm8gZGkgcHJvZG90dGkgcXVhbmRvIG5vbiDDqCBzbGlkZXIgKi9cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLnRpdENhcm9zZWxsbyB7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoZm9udC1zaXplLCAoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICBAaW5jbHVkZSBycG1xKGJvdHRvbSwgKHhzOiAwLCBtZDogMCkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2xpY2stcHJvZC1oaWdobGlnaHQucHJvZHVjdC1jYXJvdXNlbCB7XG4gICAgLnNwbGlkZV9fYXJyb3cge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMjtcblxuICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgICB9XG5cbiAgICAgIC5sdWNpZGUsXG4gICAgICBbZGF0YS1sdWNpZGVdIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3RzLWhpZ2hsaWdodCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlIHtcbiAgICAvLyB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBAaW5jbHVkZSBycG1xKGp1c3RpZnktY29udGVudCwgKHhzOiBzdGFydCwgbGc6IGNlbnRlcikpO1xuICB9XG5cbiAgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMTAwJSAhaW1wb3J0YW50KSk7XG4gICAgQGluY2x1ZGUgcnBtcShtYXgtd2lkdGgsIChtZDogMzI1cHgpKTtcblxuICAgID5kaXYge1xuICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlICFpbXBvcnRhbnQpKTtcbiAgICB9XG4gIH1cblxuICAuc2xpY2stcHJldiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC5zbGljay1wcmV2LFxuICAuc2xpY2stbmV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAuc2xpY2stcHJldiB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWFnZXMvcHJldi1hcnJvdy5zdmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xuICAgIEBpbmNsdWRlIHJwbXEobGVmdCwgKHhzOiAtMTBweCwgbGc6IC01NXB4KSk7XG5cbiAgICAucGFnZS1wcm9kdWN0ICYge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5zbGljay1uZXh0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltYWdlcy9uZXh0LWFycm93LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG4gICAgQGluY2x1ZGUgcnBtcShyaWdodCwgKHhzOiAtMTBweCwgbGc6IC01NXB4KSk7XG5cbiAgICAucGFnZS1wcm9kdWN0ICYge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uc3BsaWRlLS1wZWVrIC5zcGxpZGVfX3RyYWNrIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIHNlcnZlIHBlciBtb3N0cmFyZSBsYSBtZXp6YSBzbGlkZSAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiBpbCBwYWRkaW5nIG5vbiBhdW1lbnRhIGxhIGxhcmdoZXp6YSByZWFsZSAqL1xufVxuXG4vKiBwcmV2ZW5pcmUgcXVhbHVucXVlIHNjcm9sbCBvcml6em9udGFsZSBkZWxsYSBwYWdpbmEgaW4gcXVlc3RhIHNlemlvbmUgKi9cbi5zcGxpZGVDYXJvdXNlbEhvbWVQYWdlLFxuLnNwbGlkZUNhcm91c2VsSG9tZVBhZ2UgLnNwbGlkZV9fdHJhY2ssXG4uc3BsaWRlQ2Fyb3VzZWxIb21lUGFnZSAuc3BsaWRlX19saXN0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBpbW1hZ2luaSBhIG1pc3VyYSAqL1xuLnNwbGlkZUNhcm91c2VsSG9tZVBhZ2UgLnNwbGlkZV9fc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLyogaW1tYWdpbmkgcmVzcG9uc2l2ZSAobm9uIG9iYmxpZ2F0b3JpbyBtYSBjb25zaWdsaWF0bykgKi9cbi5zcGxpZGVfX3NsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDAsIGxnOiAwKSk7XG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi5mdWxsLXdpZHRoLWltYWdlLWJhbm5lciB7XG5cbiAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgcmVsYXRpdmUoKTtcbiAgfVxuXG59XG4iLCIvKiA9PT09PT09PT09IEJMT0NLOiBCQU5ORVIgQ09OVEFJTkVSID09PT09PT09PT0gKi9cbi5iYW5uZXJDb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsICh4czogMCwgbWQ6IDApKTtcbiAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWJvdHRvbSwgKHhzOiAwLCBtZDogMCkpO1xuICAmLmNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi5zZWN0MDJwcmUge1xuICAgIC5wcm9kdWN0cy1oaWdobGlnaHQge1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgMnB4ICR1cmJhbk1pc3Q7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJHVyYmFuTWlzdDtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgsIGxnOiAyNHB4KSk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1hcmdpbk5lZ2F0aXZlIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHsgbWFyZ2luLXRvcDogLTEwcHg7IH1cbiAgfVxuXG4gIC5zcGxpZGVfX3BhZ2luYXRpb25fX3BhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBvcGFjaXR5OiAuMTtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtYnJvd247XG4gICAgd2lkdGg6IDZweDtcbiAgICBoZWlnaHQ6IDZweDtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB9XG4gIH1cblxuICAuc3BsaWRlX19hcnJvdzpkaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG4gXG4gIC5wcm9kdWN0cy1oaWdobGlnaHQuY2Fyb3NlbGxvR2VuIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYmFubmVyQ2F0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAvKiA9PT09PT09PT09IENBUkQgQkFTRSAodHV0dGUgbGUgcG9zIHRyYW5uZSBoZXJvIHNwZWNpZmljbykgPT09PT09PT09PSAqL1xuICAgIC5iYW5uZXJDb250YWluZXItY2FyZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlO1xuXG4gICAgICBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbiAgICAgIC5pbWFnZS1ib3gge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAvKiBkZWZhdWx0IGltbWFnaW5pIG5laSBiYW5uZXIg4oCcbm9ybWFsaeKAnSAqL1xuICAgICAgICBwaWN0dXJlLCBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAuc3BsaWRlX19zbGlkZS5ncmV5Qmcge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRhdGhlbnNHcmF5O1xuXG4gICAgICAgICAgLy8gaW1nIHsgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5OyB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRleHQtYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwOyBib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAyMHB4IDEwcHgsIG1kOiAyMHB4LCBsZzogMjBweCkpO1xuICAgICAgXG4gICAgICAgIGgyIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMjRweCwgbGc6IDI4cHgsIHhsOiAzNnB4LCB4eGw6IDQycHgpKTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMHB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGVhc2UsIG9wYWNpdHkgLjRzIGVhc2U7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBsZzogMThweCkpO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBsZzogMThweCkpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIGNvbG9yIC4zcyBlYXNlO1xuICAgICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoJHNoYWRvdy1jb2xvciwgMC4zKTtcblxuICAgICAgICAuaW1hZ2UtYm94IGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LWJveCBoMiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PSBIRVJPIEZVTEwgV0lEVEggKFBPUyAxKSBjb24gcmF0aW8gMjMxMC85MDAgPT09PT09PT09PSAqL1xuICAgIC5iYW5uZXJDb250YWluZXItY2FyZC5maXJzdEJhbm5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgcnBtcShoZWlnaHQsICh4czogMTAwdmgsIG1kOiAxMDB2aCkpO1xuICAgICAgQGluY2x1ZGUgcnBtcShoZWlnaHQsICh4czogMTAwc3ZoLCBtZDogMTAwdmgpKTtcblxuICAgICAgLnNwbGlkZV9fYXJyb3cge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sdWNpZGUsXG4gICAgICAgIFtkYXRhLWx1Y2lkZV0ge1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBmaWxsOiBub25lO1xuICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pbWFnZS1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTtcblxuICAgICAgICAvKiBTcGxpZGUgZGV2ZSBGSUxMQVJFIGlsIHJhdGlvIGJveCAqL1xuICAgICAgICA+IC5zcGxpZGUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGluc2V0OiAwOyBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgPiAuc3BsaWRlIC5zcGxpZGVfX3RyYWNrLFxuICAgICAgICA+IC5zcGxpZGUgLnNwbGlkZV9fbGlzdCxcbiAgICAgICAgPiAuc3BsaWRlIC5zcGxpZGVfX3NsaWRlIHsgaGVpZ2h0OiAxMDAlOyB9XG5cbiAgICAgICAgLyogbOKAmWltbWFnaW5lL3ZpZGVvIGRldmUgY29wcmlyZSBzZW56YSBkZWZvcm1hcmUgKi9cbiAgICAgICAgcGljdHVyZSwgaW1nLCBpZnJhbWUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50ZXh0LWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMjBweCwgbWQ6IDUwcHgpKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmltYWdlLWJveCBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PSBIRVJPIFZJREVPOiBzdGVzc28gcmF0aW8gZGVsIGhlcm8gaW1tYWdpbmUgPT09PT09PT09PSAqL1xuICAgIC5lbWJlZC1jb250YWluZXIxIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDkwMCAvIDIzMTAgKiAxMDAlKTtcbiAgICAgIH1cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5maXhQYWRkaW5nTW9iaWxlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkgeyBwYWRkaW5nOiAwIDEwcHggMTBweDsgfVxuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09IERFU0tUT1A6IHBhcmVnZ2lhIGxlIGFsdGV6emUgZGVpIGJhbm5lciDigJxncmlnbGlh4oCdIChub24gaGVybykgPT09PT09PT09PSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5iYW5uZXJDb250YWluZXIge1xuICAgIC5yb3cgeyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4gICAgLyogcmlnaGUgYW5uaWRhdGUgbmVsbGUgY29sb25uZSBoYWxmICovXG4gICAgLmNvbC0xMi5jb2wtbWQtNi5nLTAuZC1mbGV4ID4gLnJvdyB7IGhlaWdodDogMTAwJTsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuICAgIC5iYW5uZXJDYXQgLmJhbm5lckNvbnRhaW5lci1jYXJkOm5vdCguZmlyc3RCYW5uZXIpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICAuYmFubmVyQ2F0IC5iYW5uZXJDb250YWluZXItY2FyZDpub3QoLmZpcnN0QmFubmVyKSA+IGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLmJhbm5lckNhdCAuYmFubmVyQ29udGFpbmVyLWNhcmQ6bm90KC5maXJzdEJhbm5lcikgLmltYWdlLWJveCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC8qIFNwbGlkZSBuZWkgYmFubmVyIGRpIGdyaWdsaWEgKG5vbiBoZXJvKTogZXJlZGl0YSBs4oCZYWx0ZXp6YSAqL1xuICAgIC5iYW5uZXJDYXQgLmJhbm5lckNvbnRhaW5lci1jYXJkOm5vdCguZmlyc3RCYW5uZXIpIC5zcGxpZGUsXG4gICAgLmJhbm5lckNhdCAuYmFubmVyQ29udGFpbmVyLWNhcmQ6bm90KC5maXJzdEJhbm5lcikgLnNwbGlkZV9fdHJhY2ssXG4gICAgLmJhbm5lckNhdCAuYmFubmVyQ29udGFpbmVyLWNhcmQ6bm90KC5maXJzdEJhbm5lcikgLnNwbGlkZV9fbGlzdCxcbiAgICAuYmFubmVyQ2F0IC5iYW5uZXJDb250YWluZXItY2FyZDpub3QoLmZpcnN0QmFubmVyKSAuc3BsaWRlX19zbGlkZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLyogaW1tYWdpbmkgbmVpIGJhbm5lciBkaSBncmlnbGlhOiBjb3ZlciBwaWVubyAqL1xuICAgIC5iYW5uZXJDYXQgLmJhbm5lckNvbnRhaW5lci1jYXJkOm5vdCguZmlyc3RCYW5uZXIpIC5pbWFnZS1ib3ggcGljdHVyZSxcbiAgICAuYmFubmVyQ2F0IC5iYW5uZXJDb250YWluZXItY2FyZDpub3QoLmZpcnN0QmFubmVyKSAuaW1hZ2UtYm94IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyAvKiBvdmVycmlkZSBkZWwgaGVpZ2h0OmF1dG8gYmFzZSAqL1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLyogSEVSTzogYWx0ZXp6YSB2aWV3cG9ydCBtZW5vIGhlYWRlciwgZ2VzdGl0YSBzb3ByYSBjb24gcnBtcSAqL1xuIiwiLm5sLWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhdGhlbnNHcmF5O1xuICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wIHBhZGRpbmctYm90dG9tLCBsaW5lYXItaW50ZXJwb2xhdGlvbigwLCAwLCB4cywgeHhsKSk7XG5cbiAgaDIgIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgfVxuXG4gIGg0ICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gIH1cblxuICBoMyAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTBweCwgbWQ6IDExcHgpKTtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBjb2xvcjogJGdyZXk7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5sZWZ0LWJveCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxuXG4gIC5yaWdodC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgcnBtcSgod2lkdGgpLCAobWJsOiAxMDAlLCBkc2s6IDUwJSksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuICB9XG5cbiAgZm9ybSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS0yO1xuICB9XG5cbiAgLmZvcm0tY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICAuc3ViLXRleHQge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxN3B4LCBtZDogMTdweCkpO1xuICAgIH1cbiAgfVxufVxuIiwiLmNvbW1vbi1oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctYm90dG9tLCAoeHM6IDAsIGxnOiAzMHB4KSk7XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMCwgbGc6IDApKTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIGxnOiAyMHB4KSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG59IiwiJG1vZGFsSGVpZ2h0OiA2ODBweDtcblxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNuZXdzbGV0dGVyTW9kYWwge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIHZhcigtLWJzLW1vZGFsLW1hcmdpbikqMik7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHBhZGRpbmc6IDRweDtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1vZGFsLW5sLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIGhlaWdodDogJG1vZGFsSGVpZ2h0O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShcbiAgICAgICAgICBtaW4td2lkdGgsXG4gICAgICAgICAgKFxuICAgICAgICAgICAgeHM6IDEwMCUsXG4gICAgICAgICAgICBsZzogNTAlLFxuICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICAubW9kYWwtbmwtZm9ybSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIC5jb250IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgIC8vIHdpZHRoOjg1JTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OjUlO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShcbiAgICAgICAgICAgICAgcGFkZGluZyxcbiAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIHhzOiA0MHB4LFxuICAgICAgICAgICAgICAgIGxnOiA4MHB4LFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgLy8gQGluY2x1ZGUgcnBtcShwYWRkaW5nLXJpZ2h0LCAoeHM6IDE1cHgsIGxnOiA4MHB4KSk7XG4gICAgICAgICAgICAvLyBoZWlnaHQ6ICRtb2RhbEhlaWdodDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMjVweCAwcHggMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVse1xuICAgICAgICAgICAgICBmb250LXdlaWdodDpub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgXG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKFxuICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgIHhzOiAxNnB4LFxuICAgICAgICAgICAgICAgICAgbWQ6IDIwcHgsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoXG4gICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgeHM6IDI4cHgsXG4gICAgICAgICAgICAgICAgICBtZDogMzZweCxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcShcbiAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgeHM6IDIweCxcbiAgICAgICAgICAgICAgICAgICAgbWQ6IDI0cHgsXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjSFBOZXdzbGV0dGVyRm9ybSB7XG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhwLW5sLXByaXZhY3kge1xuICAgICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcShcbiAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgeHM6IDExcHgsXG4gICAgICAgICAgICAgICAgICAgIG1kOiAxMnB4LFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtbmwtaW1nIHtcbiAgICAgICAgICAvLyBtaW4td2lkdGg6IDUwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VhcmNoLW9mZmNhbnZhcyB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkcHJpbWFyeSwgMC4xNik7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW0gMC43NXJlbTtcbiAgfVxuXG4gIC5vZmZjYW52YXMtdGl0bGUge1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIH1cblxuICAub2ZmY2FudmFzLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgMS4yNXJlbSAxLjI1cmVtO1xuICB9XG59XG5cbi5zZWFyY2gtb2ZmY2FudmFzX19mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjc1cmVtO1xufVxuXG4uc2VhcmNoLW9mZmNhbnZhc19faW5wdXQuZm9ybS1jb250cm9sIHtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xufVxuXG4uc2VhcmNoLW9mZmNhbnZhc19fc3VibWl0IHtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gIC5zZWFyY2gtb2ZmY2FudmFzX19mb3JtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgLnNlYXJjaC1vZmZjYW52YXNfX3N1Ym1pdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsImhlYWRlcltyb2xlPVwiYmFubmVyXCJdIHtcbiAgLy8gQGluY2x1ZGUgYXBwLW1heC13aWR0aCgpO1xuICB6LWluZGV4OiAxMDA7XG4gIC8vIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuXG4gIC8qIE1pZ2xpb3JhIGxhIGNvbGxhcHNlIGRpIEJvb3RzdHJhcCBjb24gZmFkZSArIHNsaWRlICovXG4gICNmaWx0ZXJzQ29sbGFwc2Uge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAuMzVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlLCB0cmFuc2Zvcm0gLjI1cyBlYXNlO1xuICB9XG5cbiAgI2ZpbHRlcnNDb2xsYXBzZS5jb2xsYXBzZTpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvKiBldml0YSBzYWx0aSBkaSBsYXlvdXQgZHVyYW50ZSBsJ2FuaW1hemlvbmUgKi9cbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgfVxuXG4gICNmaWx0ZXJzQ29sbGFwc2UuY29sbGFwc2Uuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAvKiBTdGF0byBkdXJhbnRlIGlsIGNhbGNvbG8gaGVpZ2h0IGRpIEJvb3RzdHJhcCAqL1xuICAjZmlsdGVyc0NvbGxhcHNlLmNvbGxhcHNpbmcge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICB9XG5cbiAgLyogRWZmZXR0byBzdWwgcHVsc2FudGU6IHJ1b3RhIGzigJlpY29uYSBxdWFuZG8gYXBlcnRvICovXG4gICNzaG93RmlsdGVyc0J1dHRvbkRlc2sgLmZpbHRlci1pY29uIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlO1xuICB9XG5cbiAgI3Nob3dGaWx0ZXJzQnV0dG9uRGVzazpub3QoLmNvbGxhcHNlZCkgLmZpbHRlci1pY29uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cblxuXG4gIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICA+Lm1haW4tcGFkZGluZyB7XG4gICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNjZGNkY2Q7XG4gICAgfVxuICB9XG5cbiAgJisqIHtcbiAgICAvLyBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgICAvKkBtZWRpYSAobWF4LXdpZHRoOiBicmVha3BvaW50LW1heChkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodCArICRzdWJtZW51LWJhci1oZWlnaHQ7XG4gICAgfSovXG4gIH1cblxuXG5cblxuICAucHJvbW90aW9ucy1iYXIge1xuICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctbGVmdCBwYWRkaW5nLXJpZ2h0KSwgJGhlYWRlci1wYWRkaW5nKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYnJvd247XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLCBjb2xvciAuMjVzIGVhc2U7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgaGVpZ2h0OiAkcHJvbW90aW9ucy1iYXItaGVpZ2h0O1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZy10b3A6IDZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIHAge1xuICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuXG4gICAgfVxuXG4gICAgLmNlbnRlci10ZXh0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuICAgICAgLmNlbnRlci10ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUobGVmdCA1MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgLy8gQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDBweCwgbWQ6IDQwcHgpKTtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAoeHM6IDBweCwgbWQ6IDBweCkpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLCBib3gtc2hhZG93IC4yNXMgZWFzZSwgdHJhbnNmb3JtIC4yNXMgZWFzZTtcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gdG9wOiAwO1xuICAgIC8vIGxlZnQ6IDA7XG4gICAgLy8gcmlnaHQ6IDA7XG4gICAgLy8gXG5cbiAgICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgIC8vIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cblxuICAgICYuc2Nyb2xsZWQge1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDBweCwgbWQ6IDBweCkpO1xuICAgICAgdG9wOiAkcHJvbW90aW9ucy1iYXItaGVpZ2h0O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG5cbiAgICAgIC8vIHBhZGRpbmc6IDNweCAwO1xuICAgICAgI21vYmlsZU1lbnVUb2dnbGVUYXJnZXQge1xuICAgICAgICB0b3A6IGNhbGMoJGhlYWRlci1oZWlnaHQgKyAkcHJvbW90aW9ucy1iYXItaGVpZ2h0KSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0LW1ibH0gKyAkcHJvbW90aW9ucy1iYXItaGVpZ2h0KSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAubWVudS1iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGluay1pbWctaGVhZGVye1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIGhlaWdodDogOTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuaW1nLWhlYWRlcntcbiAgIFxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIG1heC13aWR0aDogOTAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gIFxuICB9XG4gIC50ZXh0LWltZy1oZWFkZXJ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7ICAgLyogb3BwdXJlIGZpdC1jb250ZW50ICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5XG4gICAgICAgICAgfVxuICB9XG5cbiAgLm1lbnUtYmFyIHtcbiAgICAvLyBAaW5jbHVkZSBycG1xKChoZWlnaHQpLCAoeHM6IDQ0cHgsIG1kOiA2NXB4KSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLCBjb2xvciAuMjVzIGVhc2UsIGJvcmRlci1jb2xvciAuMjVzIGVhc2UsIGJveC1zaGFkb3cgLjI1cyBlYXNlO1xuICAgIC8vIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzaW5nKCk7XG4gICAgbWF4LXdpZHRoOiAxMDB2dztcblxuICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbiksICh4czogMCwgbWQ6IDApKTtcbiAgICBAaW5jbHVkZSBycG1xKChoZWlnaHQpLCAoeHM6ICRoZWFkZXItaGVpZ2h0LW1ibCwgbWQ6ICRoZWFkZXItaGVpZ2h0KSk7XG4gICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZyksICh4czogMCwgbWQ6IDEwcHggNTBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEoKGFsaWduLWl0ZW1zKSwgKHhzOiBjZW50ZXIsIG1kOiBjZW50ZXIpKTtcblxuICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlO1xuICAgIH1cblxuICAgICYubGlnaHQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLCBjb2xvciAuMjVzIGVhc2UsIGJvcmRlci1jb2xvciAuMjVzIGVhc2U7XG4gICAgfVxuXG4gICAgLmlzLW1vYmlsZS1tZW51LW9wZW4gJiB7XG5cbiAgICAgIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gICAgICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgICAgIH1cblxuICAgICAgJi5saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuXG4gICAgICAgIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gICAgICAgIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAgICAgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5saWdodCB7XG5cbiAgICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1icm93biAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsLmZpcnN0LWxldmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAvL3BhZGRpbmctbGVmdDogMjRweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwYWRkaW5nOiAwIDNweDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2luZygpO1xuXG5cbiAgICAgIC5jYXRlZ29yeS1sZXZlbC0xIHtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvL2JvcmRlci1ib3R0b206IHNvbGlkIDFweCAkd2hpdGU7XG4gICAgICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgJi5pbiB7XG4gICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjVzIGVhc2luZygpO1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKChtYmw6IDE0cHgsIGRzazogMTZweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5jYXRlZ29yeS1saW5rLWxldjEge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lZ2EtcGFuZWwtY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICBnYXA6IDEycHg7XG5cbiAgICAgICAgICAubWVnYS1saW5rcy13cmFwIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuXG4gICAgICAgICAgICAmLmhhcy1iYW5uZXJzIHtcbiAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzIwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZWdhLW1lbnUtYmFubmVycyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIGZsZXg6IDAgMCA0MDBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQwMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZWdhLWJhbm5lci1saXN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWVnYS1iYW5uZXItbGlzdCA+IC5zaW5nbGUtYmFubmVyIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBjYWxjKDUwJSAtIDRweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwubWVnYS1saW5rcyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgY29sdW1uLWdhcDogMThweDtcbiAgICAgICAgICByb3ctZ2FwOiA4cHg7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG5cbiAgICAgICAgICAuY2F0ZWdvcnktbGV2ZWwtMiB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTcwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhLmNhdGVnb3J5LWxpbmstbGV2MiB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgIC8vIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tZWdhLW1lbnUtbGlzdHtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICAgICAgLS10cmFuc2Zvcm0tb3JpZ2luLXN0YXJ0OiAwJTtcbiAgICAgICAgICAgICAgLS10cmFuc2Zvcm0tb3JpZ2luLWVuZDogMTAwJTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBjdXJyZW50Q29sb3IsIGN1cnJlbnRDb2xvcikgMCAxMDAlIC8gMCAxcHggbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogdmFyKC0tdHJhbnNmb3JtLW9yaWdpbi1lbmQpO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIC4ycyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogdmFyKC0tdHJhbnNmb3JtLW9yaWdpbi1zdGFydCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHBvaW50ZXI6IGZpbmUpIGFuZCAobWluLXdpZHRoOiBicmVha3BvaW50LW1pbihkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICAgPiBsaSA+IGE6bm90KFthcmlhLWN1cnJlbnQ9XCJ0cnVlXCJdLCBbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0pOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IHZhcigtLXRyYW5zZm9ybS1vcmlnaW4tc3RhcnQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFue1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNTVweCA1MHB4O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogLTQwcHg7IC8vIHJlZ29sYSBpbiBiYXNlIGEgcXVhbnRvIHZ1b2kgbHVuZ2EgbGEgc2Z1bWF0dXJhXG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoJHNoYWRvdy1jb2xvciwgMC4yNSksIHJnYmEoJHNoYWRvdy1jb2xvciwgMCkpO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwuY29scyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cblxuICBcbiAgLmltYWdlLWNvbnRhaW5lcntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZBRkFGQTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgkc2hhZG93LWNvbG9yLCAwLjMpO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMTUpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAyLjVzIGVhc2luZygpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cyBlYXNlO1xuICAgIH1cbiAgICBzcGFue1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZWFhO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIGg2e1xuXG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW1nLWJhbm5lcntcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgfVxuXG4gICAgLm1lbnUtc3gge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5tZW51LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLyogTmFzY29uZGUgY2nDsiBjaGUgZXNjZSBmdW9yaSBkYWwgY29udGVuaXRvcmUgKi9cbiAgICAgIH1cblxuXG4gICAgICAuY2F0ZWdvcnkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuXG4gICAgICAuc2hpZnQtbGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgIC8qIE11b3ZlIGlsIG1lbnUgY29tcGxldGFtZW50ZSBhIHNpbmlzdHJhICovXG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5zdWItbGlzdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgIC8qIEluaXppYWxtZW50ZSBsYSBsaXN0YSDDqCBmdW9yaSBkYWxsbyBzY2hlcm1vICovXG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMHB4O1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgIC5yb3RhdGUtYXJyb3cge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgLyogQXNzaWN1cmEgbCdhbmltYXppb25lIGZsdWlkYSBhbmNoZSBxdWFuZG8gdG9ybmEgaW5kaWV0cm8gKi9cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm90aGVycyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJyb3duO1xuICAgICAgICAgIGEgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuXG4gICAgfVxuXG4gICAgLmRlc2t0b3Atb25seSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBicmVha3BvaW50LW1pbihkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcbiAgICAgIC5tYWluLW5hdi5icmFuZC1uYXYgPiB1bCA+IGxpLmNhdGVnb3J5LnVwcGVyLWxldmVsID4gYSB7XG4gICAgICAgIC0tdHJhbnNmb3JtLW9yaWdpbi1zdGFydDogMCU7XG4gICAgICAgIC0tdHJhbnNmb3JtLW9yaWdpbi1lbmQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgY3VycmVudENvbG9yLCBjdXJyZW50Q29sb3IpIDAgMTAwJSAvIDAgMXB4IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IHZhcigtLXRyYW5zZm9ybS1vcmlnaW4tZW5kKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiB2YXIoLS10cmFuc2Zvcm0tb3JpZ2luLXN0YXJ0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChwb2ludGVyOiBmaW5lKSBhbmQgKG1pbi13aWR0aDogYnJlYWtwb2ludC1taW4oZHNrLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpKSB7XG4gICAgICAubWFpbi1uYXYuYnJhbmQtbmF2ID4gdWwgPiBsaS5jYXRlZ29yeS51cHBlci1sZXZlbCA+IGE6bm90KFthcmlhLWN1cnJlbnQ9XCJ0cnVlXCJdLCBbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0pOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IHZhcigtLXRyYW5zZm9ybS1vcmlnaW4tc3RhcnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBicmVha3BvaW50LW1pbihkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcblxuICAgICAgLyogPj0gOTkyKi9cbiAgICAgICNtb2JpbGVNZW51VG9nZ2xlVGFyZ2V0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmRlc2t0b3Atb25seSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgdWwge1xuXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXJpZ2h0KSwgKG1ibDogMCwgZHNrOiAwKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi10b3ApLCAobWJsOiAwLCBkc2s6IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuXG4gICAgICBsaSB7XG5cbiAgICAgICAgLy93aWR0aDogMTAwJTtcbiAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuc3ViLWxpc3Qge1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgpKTtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctbGVmdCwgKHhzOiAxNnB4LCBtZDogMTZweCwgbGc6IDApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMThweCkpO1xuXG4gICAgICAgICAgJi5tYWluLWxpbmsge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG5cbiAgICAgICAgJi5jYXRlZ29yeS51cHBlci1sZXZlbCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAvLyAmOmhvdmVye1xuICAgICAgICAgIC8vICAgdWwuZmlyc3QtbGV2ZWx7XG4gICAgICAgICAgLy8gICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAvLyAgIH1cbiAgICAgICAgICAvLyB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1haW4tcGFkZGluZyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmLnBhcmVudCB7XG4gICAgICAgIC8vICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgICYuY2F0ZWdvcnkge1xuICAgICAgICAgIC8vIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoYmFja2dyb3VuZC1jb2xvciwgKHhzOiB0cmFuc3BhcmVudCwgbWQ6IHRyYW5zcGFyZW50KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShqdXN0aWZ5LWNvbnRlbnQsIChtYmw6IGNlbnRlciwgZHNrOiBpbml0aWFsKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgICAgIC8qLmlzLW1vYmlsZS1tZW51LW9wZW4gJiB7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltYWdlcy9hcnJvdy1yaWdodC13aGl0ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICB9XG4gICAgICAgICAgfSAqL1xuXG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBoZWlnaHQ6IDUzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nTTIgNUw4IDExTDE0IDUnLz48L3N2Zz5cIik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG5cblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjVzIGVhc2luZygpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuXG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsIChtYmw6IDVweCAwLCBkc2s6IDVweCAxNXB4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKChtYmw6IDE0cHgsIGRza3RwOiAxN3B4KSk7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWF4LXdpZHRoLCAobWJsOiAxNjBweCwgZHNrOiAxODBweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAuMjVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgfVxuXG4gICAgICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgIH1cblxuICAgICAgJi5icmFuZC13ZWJzaXRlIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4tbmF2IHtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IGJyZWFrcG9pbnQtbWluKGRzaywgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKSkge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgPnVsIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpIHtcbiAgICAgICAgPnVsIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG5cbiAgICAgID4ubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoZGlzcGxheSwgKG1ibDogaW5saW5lLWZsZXgsIGRzazogZmxleCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsIChtYmw6IDEwcHgsIGRzazogMTBweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoYWxpZ24taXRlbXMsIChtYmw6IGZsZXgtc3RhcnQsIGRzazogY2VudGVyKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgICAuaGFtYnVyZ2VyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoZGlzcGxheSwgKGRzazogbm9uZSksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAvL0BpbmNsdWRlIHJwbXEobWFyZ2luLXJpZ2h0LCAoc206IDEwcHgpKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaXMtYWN0aXZlIHtcblxuICAgICAgICAgICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAgICAgICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAgICAgICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIG1vYmlsZSBtZW51XG4gICAgICA+I21vYmlsZU1lbnVUb2dnbGVUYXJnZXQge1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBicmVha3BvaW50LW1heChkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcbiAgICAgICAgICBAaW5jbHVkZSBmaXhlZChib3R0b20gcmlnaHQpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0LW1ibH0pO1xuICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgIGluc2V0OiAwIDAgMCBhdXRvO1xuICAgICAgICAgIC8qIHRvcDowOyByaWdodDowOyBib3R0b206MDsgKi9cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgIC8qIGZ1b3JpIGRhbGxvIHNjaGVybW8gKi9cbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgdHJhbnNmb3JtIC4zMnMgZWFzZSxcbiAgICAgICAgICAgIG9wYWNpdHkgLjI0cyBlYXNlLFxuICAgICAgICAgICAgdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjMycztcbiAgICAgICAgICAvKiByaXRhcmRhIGxhIHZpc2liaWxpdMOgIHBlciBldml0YXJlIGZvY3VzL2ZsaWNrZXIgKi9cbiAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQtdG90YWwtbWJsO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgei1pbmRleDogMTA1MDtcbiAgICAgICAgICAvKiBzb3ByYSBs4oCZaGVhZGVyICovXG5cbiAgICAgICAgICAmLmluIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zMnMgZWFzZSxcbiAgICAgICAgICAgICAgb3BhY2l0eSAuMjRzIGVhc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjMycyBlYXNlLFxuICAgICAgICAgICAgICBvcGFjaXR5IC4yNHMgZWFzZSxcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjMycztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHggMTBweCAwO1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM0UlM0NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkZGRkZGJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi10YWJzIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRmbGludFJvY2s7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC50YWItY29udGVudCB7XG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZXh0cmEtbGlua3Mge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG5cbiAgICAgICAgICAgIC5tYWluLWxpbmsge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saXN0aW5vLXNlbGVjdCxcbiAgICAgICAgICAgIC50cmFuc2xhdGlvbi1zZWxlY3Qge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC51c2VyLW5hdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsIChtYmw6IDEwcHggMCwgZHNrOiAxMHB4IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuXG4gICAgICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAmLnRyYW5zbGF0aW9uLXNlbGVjdCxcbiAgICAgICAgICAmLmxpc3Rpbm8tc2VsZWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgICAgLmlzLW1vYmlsZS1tZW51LW9wZW4gJiB7XG4gICAgICAgICAgICAgIC8vIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG5cbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGRkZGRkYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggNDBweCA1cHggMDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuICAgICAgICAgICAgICBvcHRpb24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd24gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd24gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyAmLnVzZXItYWNjb3VudCB7XG4gICAgICAgICAgLy8gICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgICAgICAvLyAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAvLyAgIH1cbiAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICAmLmljb24tb25seSB7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2luZygpO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy9wZXIgaG92ZXIgc3UgbWVudVxuICAgICAgICAgICAgJG1vdGlvbnMtZWFzaW5nLWJlemllci1jdWJpYzogY3ViaWMtYmV6aWVyKDAuNTAsIDAuMDAsIDAuNTAsIDEuMDApO1xuICAgICAgICAgICAgJG1vdGlvbnMtZWFzaW5nLWJlemllci1xdWFydDogY3ViaWMtYmV6aWVyKDAuMzAsIDEuMDAsIDAuNTAsIDEuMDApO1xuXG4gICAgICAgICAgICAkbW90aW9ucy1zcGVlZC1mYXN0OiAyMDBtcztcbiAgICAgICAgICAgICRtb3Rpb25zLXNwZWVkLXN0YW5kYXJkOiA0MDBtcztcbiAgICAgICAgICAgICRtb3Rpb25zLXNwZWVkLXNsb3c6IDEwMDBtcztcblxuICAgICAgICAgICAgJG1vdGlvbnMtZGVsYXktZmFzdDogMjAwbXM7XG4gICAgICAgICAgICAkbW90aW9ucy1kZWxheS1zdGFuZGFyZDogNDAwbXM7XG5cbiAgICAgICAgICAgICR1bmRlcmxpbmUtY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgJGxpbmUtaGVpZ2h0OiAxcHg7XG5cbiAgICAgICAgICAgIC8vICY6OmFmdGVyIHtcbiAgICAgICAgICAgIC8vICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLy8gICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAvLyAgIGJvdHRvbTogLTVweDtcbiAgICAgICAgICAgIC8vICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIC8vICAgaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICR1bmRlcmxpbmUtY29sb3I7XG5cbiAgICAgICAgICAgIC8vICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgICAgICAgICAgIC8vICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlWCgwKTtcblxuICAgICAgICAgICAgLy8gICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG1vdGlvbnMtc3BlZWQtc3RhbmRhcmQgJG1vdGlvbnMtZWFzaW5nLWJlemllci1jdWJpYztcbiAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuXG4gICAgICAgICAgICAgICYuaWNvbi1sb2NrIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvbG9jay5zdmdcIik7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmljb24tc2VhcmNoIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvc2VhcmNoLnN2Z1wiKTtcblxuICAgICAgICAgICAgICAgIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL3NlYXJjaC5zdmdcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5pY29uLXVzZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9wcm9maWxlLnN2Z1wiKTtcblxuICAgICAgICAgICAgICAgIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL3Byb2ZpbGUuc3ZnXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuaWNvbi1zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvYnV5LnN2Z1wiKTtcblxuICAgICAgICAgICAgICAgICYuaGFzLWl0ZW1zIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9idXkuc3ZnXCIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pcy1tb2JpbGUtbWVudS1vcGVuICYge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL2J1eS5zdmdcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgKy50ZXh0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sdWNpZGUsXG4gICAgICAgICAgICBbZGF0YS1sdWNpZGVdIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwcHgpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzIGVhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5yZXNlcnZlZC1hcmVhIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShib3JkZXItcmlnaHQsIChkc2s6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3IpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tcmlnaHQsIChkc2s6IDZweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBicmVha3BvaW50LW1heChkc2ssICRtb2JpbGUtbWVudS1icmVha3BvaW50cykpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4eGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDExcHgpKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHhsKSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaWNvbi1vbmx5IHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsIChtYmw6IDBweCA2cHgsIGRzazogMCAyMHB4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgICAgICAgICAuaXMtbW9iaWxlLW1lbnUtb3BlbiAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAuaWNvbi1zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICAgICAgICAuaXRlbXMtY291bnQge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEwcHgpO1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1yb3VuZGVkO1xuICAgICAgICAgICAgICAgICAgYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5pY29uTG9nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZSwgY29sb3IgLjI1cyBlYXNlLCBib3JkZXItY29sb3IgLjI1cyBlYXNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5zZWFyY2gge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZWxhdGl2ZSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAmLmluIHtcbiAgICAgICAgICAgICAgLnNlYXJjaC1wYW5lbCB7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWFyY2gtcGFuZWwge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZShyaWdodCBib3R0b20gMTBweCk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgYm90dG9tO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2luZygpO1xuICAgICAgICAgICAgICAvL3otaW5kZXg6IC0xO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gNjBweCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAwJSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFic29sdXRlKHJpZ2h0IHRvcCBib3R0b20pO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTRweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL3NlYXJjaC5zdmdcIik7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY29sb3JpIHBlciBpbCB0ZW1hIGNoaWFyb1xuICAgICYubGlnaHQge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAuZXh0cmEtbGlua3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctbWVnYW1lbnUtbGlnaHQgIWltcG9ydGFudDtcblxuICAgICAgICBhLFxuICAgICAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNFJTNDcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzcwNzA3MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvJTNFJTNDL3N2ZyUzRVwiKSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuaWNvbiB7XG5cbiAgICAgICAgJi5pY29uLXNlYXJjaCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL3NlYXJjaC1saWdodC5zdmdcIikgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaWNvbi11c2VyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvcHJvZmlsZS1saWdodC5zdmdcIikgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaWNvbi1zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvYnV5LWxpZ2h0LnN2Z1wiKSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgJi5oYXMtaXRlbXMge1xuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC51c2VyLW5hdiAuaWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgLnVzZXItbmF2IHVsIGxpIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLmZpcnN0LWxldmVsLnJvdy5pbiB1bCBsaSxcbiAgICAgIGxpLmNhdGVnb3J5IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAuc3VibWVudS1iYXIge1xuICAgIHBhZGRpbmc6IDE0cHggMHB4IDBweCAxNHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA1cHg7XG4gICAgLy9mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6ICRzdWJtZW51LWJhci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IGJyZWFrcG9pbnQtbWluKGRzaywgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2Nyb2xsLXN1Ym1lbnUge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICAgICYgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgICA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAkYnJhbmQtYnJvd247XG4gICAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuXG4gIH1cblxuICAuaW1nLWljb24taGVhZGVye1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIH1cblxufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDMwcHggNDBweCAzMHB4IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgLy8gYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNFMEUwRTA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4uc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlcjogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG5cbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIHRvcDogMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1hZ2VzL2Fycm93LXJpZ2h0LXdoaXRlLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgYmFja2dyb3VuZC1zaXplOiA2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG4gIC8qIHB1b2kgcmVnb2xhcmxvIGluIGJhc2UgYWxs4oCZaWNvbmEgKi9cbiAgaGVpZ2h0OiAxMDAlO1xuICByaWdodDogMTVweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHM+LnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtbWluKGRzaywgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKSkge1xuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWFnZXMvaWNvbi1hcnJvdy1yaWdodC5zdmcnKTtcbiAgICAvKiB0dWEgaWNvbmEgKi9cbiAgICByaWdodDogM3B4O1xuXG4gIH1cblxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuXG4gIH1cblxuICAuc2VsZWN0Mi1kcm9wZG93biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtZ3JheTtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtZ3JheTtcbiAgfVxuXG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ncmF5O1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICBwYWRkaW5nOiA0cHggMHB4O1xuICB9XG5cbn1cblxuLy8gU1VCTUVOVSBCQUNLR1JPVU5EXG5cbm1haW5bcm9sZT1cIm1haW5cIl0sXG4udGhhbmt5b3Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAkcHJpbWFyeSwgJGFscGhhOiAuMCk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciBlYXNlLWluLW91dCAuNXM7XG4gICAgei1pbmRleDogLTE7XG4gICAgQGluY2x1ZGUgZml4ZWQodG9wIDAgbGVmdCAwIHJpZ2h0IDAgYm90dG9tIDApO1xuICB9XG5cbiAgLnN1Ym1lbnUtb3BlbiAmIHtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAkcHJpbWFyeSwgJGFscGhhOiAuOSk7XG4gICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIGVhc2UtaW4tb3V0IC4zcztcbiAgICAgIHotaW5kZXg6IDQ7XG4gICAgICBAaW5jbHVkZSBmaXhlZCh0b3AgMCBsZWZ0IDAgcmlnaHQgMCBib3R0b20gMCk7XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbmJvZHkubGlnaHQge1xuXG4gIG1haW5bcm9sZT1cIm1haW5cIl0sXG4gIC50aGFua3lvdSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiAjZWVlZWVlLCAkYWxwaGE6IC4wKTtcbiAgICB9XG4gIH1cblxuICAmLnN1Ym1lbnUtb3BlbiB7XG5cbiAgICBtYWluW3JvbGU9XCJtYWluXCJdLFxuICAgIC50aGFua3lvdSB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvcjogI2VlZWVlZSwgJGFscGhhOiAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IGJyZWFrcG9pbnQtbWF4KGRzaywgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKSkge1xuICAjbW9iaWxlTWVudVRvZ2dsZVRhcmdldCB7XG4gICAgLyogaWwgdmlld3BvcnQgZGVsIG1lbnUgKi9cbiAgICAubW9iaWxlLW1lZ2EtbWVudSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAubW9iaWxlLWFjY29yZGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1saXN0LFxuICAgIC5tb2JpbGUtYWNjb3JkaW9uLXN1Ymxpc3Qge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi10b2dnbGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmc6IDE1cHggMTJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1icm93bjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxOHB4KSk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUtYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1hY2NvcmRpb24taWNvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gICAgICBzdmcge1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBzdHJva2Utd2lkdGg6IDEuNTtcbiAgICAgIH1cblxuICAgICAgLmljb24tbWludXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUtYWNjb3JkaW9uLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAubW9iaWxlLWFjY29yZGlvbi1pY29uIHtcbiAgICAgIC5pY29uLXBsdXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuaWNvbi1taW51cyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUtYWNjb3JkaW9uLXBhbmVsIHtcbiAgICAgIHBhZGRpbmc6IDAgMCA4cHg7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1hY2NvcmRpb24tc3VibGlzdCBsaSBhLFxuICAgIC5tb2JpbGUtYWNjb3JkaW9uLWxpc3QgPiBsaS5saW5rLm90aGVycyA+IGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nOiAxNXB4IDEycHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYnJvd247XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgpKTtcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1zdWJsaXN0IGxpOmxhc3QtY2hpbGQgYSxcbiAgICAubW9iaWxlLWFjY29yZGlvbi1saXN0ID4gbGkubGluay5vdGhlcnM6bGFzdC1jaGlsZCA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1zdWJsaXN0IC5saW5rIHtcbiAgICAgICYuZmF0aGVyIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXh0cmFsaWdodGdyZXk7XG4gICAgICB9XG5cbiAgICAgICYuc3VibmF2IGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICB9XG5cbiAgICAgICYuYWxsIGEge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1wYW5lbCAubWVnYS1tZW51LWJhbm5lcnMgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICAubW9iaWxlLWFjY29yZGlvbi1wYW5lbCAubWVnYS1tZW51LWJhbm5lcnMgYSB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIC8qIHJpZHVjaSBtb3Rpb24gKi9cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgLm1vYmlsZS1hY2NvcmRpb24tcGFuZWwge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBRdWFuZG8gaWwgbWVudSDDqCBhcGVydG8sIGJsb2NjYSBsbyBzY3JvbGwgZGVsIGJvZHkgKi9cbmJvZHkuaXMtbW9iaWxlLW1lbnUtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGluIEpTIGZhaSBhbmNoZSAuY3NzKFwib3ZlcmZsb3dcIixcImhpZGRlblwiKSBwZXIgaU9TICovXG59XG5cbi8qIChPcHRpb25hbCkgYmFja2Ryb3AgbWluaW1hbGUgKi9cbmJvZHkuaXMtbW9iaWxlLW1lbnUtb3Blbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICBmaWx0ZXI6IGJsdXIoNDBweCk7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjI0cyBlYXNlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLyogc2UgdnVvaSBjaGUgaWwgdGFwIGZ1b3JpIE5PTiBjaGl1ZGEsIGxhc2NpYSBjb3PDrCAqL1xuICB6LWluZGV4OiAyO1xuICAvKiBzb3R0byBpbCBtZW51ICovXG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICNtb2JpbGVNZW51VG9nZ2xlVGFyZ2V0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgI21vYmlsZU1lbnVUb2dnbGVUYXJnZXQuaW4sXG4gICNtb2JpbGVNZW51VG9nZ2xlVGFyZ2V0LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAucHJvbW90aW9ucy1iYXIsXG4gIC5oZWFkZXItY29udGFpbmVyLFxuICAubWVudS1iYXIsXG4gIC5tZW51LWJhci5saWdodCxcbiAgLmJyYW5kLXdlYnNpdGUgaW1nLFxuICAudXNlci1uYXYgLmx1Y2lkZSxcbiAgLnVzZXItbmF2IFtkYXRhLWx1Y2lkZV0sXG4gIC51c2VyLW5hdiAuaWNvbkxvZyxcbiAgLmhhbWJ1cmdlci1pbm5lcixcbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBIb21lcGFnZTogaGVhZGVyIHRyYXNwYXJlbnRlIGUgY29udGVudXRpIGJpYW5jaGkgZmluY2jDqSBub24gc2NvcnJlXG5ib2R5LnBhZ2UtaG9tZXBhZ2UgaGVhZGVyW3JvbGU9XCJiYW5uZXJcIl06bm90KC5oZWFkZXItc2Nyb2xsZWQpIHtcbiAgLnByb21vdGlvbnMtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLnByb21vdGlvbnMtYmFyIC5jZW50ZXItdGV4dCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG5ib2R5LnBhZ2UtaG9tZXBhZ2UgI25hdi1oZWFkZXItY29udGFpbmVyOm5vdCguc2Nyb2xsZWQpIHtcbiAgLm1lbnUtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5tZW51LWJhci5saWdodCB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNFJTNDcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZGRkZGRicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvJTNFJTNDL3N2ZyUzRVwiKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5tZW51LWJhci5saWdodCAubWFpbi1uYXYuYnJhbmQtbmF2ID4gdWwgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAubWVudS1iYXIubGlnaHQgLm1haW4tbmF2LmJyYW5kLW5hdiA+IHVsID4gbGkgPiBhOmhvdmVyLFxuICAubWVudS1iYXIubGlnaHQgLm1haW4tbmF2LmJyYW5kLW5hdiA+IHVsID4gbGkgPiBhOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgfVxuXG4gIC5icmFuZC13ZWJzaXRlIGltZyB7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgfVxuXG4gIC51c2VyLW5hdiAubHVjaWRlLFxuICAudXNlci1uYXYgW2RhdGEtbHVjaWRlXSB7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnVzZXItbmF2IC5pY29uTG9nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgfVxuXG4gIC5oYW1idXJnZXItaW5uZXIsXG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmJvZHkucGFnZS1ob21lcGFnZSAjbmF2LWhlYWRlci1jb250YWluZXIuc2Nyb2xsZWQsXG5ib2R5LnBhZ2UtaG9tZXBhZ2UgI25hdi1oZWFkZXItY29udGFpbmVyOm5vdCguc2Nyb2xsZWQpOmhhcyh1bC5maXJzdC1sZXZlbC5pbiksXG5ib2R5LnBhZ2UtaG9tZXBhZ2UgI25hdi1oZWFkZXItY29udGFpbmVyOm5vdCguc2Nyb2xsZWQpOmhhcygubWFpbi1uYXYuYnJhbmQtbmF2ID4gdWwgPiBsaS5jYXRlZ29yeS51cHBlci1sZXZlbDpob3ZlciksXG5ib2R5LnBhZ2UtaG9tZXBhZ2UgI25hdi1oZWFkZXItY29udGFpbmVyOm5vdCguc2Nyb2xsZWQpOmhhcygubWFpbi1uYXYuYnJhbmQtbmF2ID4gdWwgPiBsaS5jYXRlZ29yeS51cHBlci1sZXZlbDpmb2N1cy13aXRoaW4pLFxuYm9keS5wYWdlLWhvbWVwYWdlICNuYXYtaGVhZGVyLWNvbnRhaW5lcjpub3QoLnNjcm9sbGVkKTpoYXMoLnVzZXItbmF2IHVsID4gbGk6aG92ZXIpLFxuYm9keS5wYWdlLWhvbWVwYWdlICNuYXYtaGVhZGVyLWNvbnRhaW5lcjpub3QoLnNjcm9sbGVkKTpoYXMoLnVzZXItbmF2IHVsID4gbGk6Zm9jdXMtd2l0aGluKSB7XG4gIC5tZW51LWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cblxuICAubWVudS1iYXIubGlnaHQge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIH1cblxuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjM3MDcwNzAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLyUzRSUzQy9zdmclM0VcIikgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAubWVudS1iYXIubGlnaHQgLm1haW4tbmF2LmJyYW5kLW5hdiA+IHVsID4gbGkgPiBhIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cblxuICAubWVudS1iYXIubGlnaHQgLm1haW4tbmF2LmJyYW5kLW5hdiA+IHVsID4gbGkgPiBhOmhvdmVyLFxuICAubWVudS1iYXIubGlnaHQgLm1haW4tbmF2LmJyYW5kLW5hdiA+IHVsID4gbGkgPiBhOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgfVxuXG4gIC5tZW51LWJhci5saWdodCAudXNlci1uYXYgdWwgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuXG4gIC5tZW51LWJhci5saWdodCAudXNlci1uYXYgdWwgPiBsaSA+IGE6aG92ZXIsXG4gIC5tZW51LWJhci5saWdodCAudXNlci1uYXYgdWwgPiBsaSA+IGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICB9XG5cbiAgLnVzZXItbmF2IC5sdWNpZGUsXG4gIC51c2VyLW5hdiBbZGF0YS1sdWNpZGVdIHtcbiAgICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5icmFuZC13ZWJzaXRlIGltZyB7XG4gICAgZmlsdGVyOiBub25lO1xuICB9XG5cbiAgLnVzZXItbmF2IC5pY29uTG9nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG4iLCJmb290ZXIge1xuICAuY29udGVudC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJnLWxpZ2h0O1xuICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctdG9wKSwgKHhzOiAwLCBtZDogMzBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctYm90dG9tKSwgKHhzOiAzNXB4LCBtZDogNjBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctbGVmdCwgcGFkZGluZy1yaWdodCksICRtYWluLXBhZGRpbmcpO1xuXG4gICAgLmZvb3Rlci1jb250YWluZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAkZm9vdGVyLW1heC13aWR0aDtcblxuICAgICAgQGluY2x1ZGUgcnBtcSgoZmxleC1kaXJlY3Rpb24pLCAobWJsOiBjb2x1bW4sIGRzazogcm93KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgIC8vQGluY2x1ZGUgcnBtcShoZWlnaHQsIChtYmw6IDE4cHgsIGRzazogMjJweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAvL0BpbmNsdWRlIHJwbXEoKG1hcmdpbi1yaWdodCwgbWFyZ2luLWxlZnQpLCAobWJsOiAwLCBkc2s6IC03MHB4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgLmZvb3Rlci1jb2wge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgICAgIC8vIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi1yaWdodCwgbWFyZ2luLWxlZnQpLCAobWJsOiAwLCBkc2s6IDcwcHgpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgICAgICAvL0BpbmNsdWRlIHJwbXEoKG1hcmdpbi1yaWdodCwgbWFyZ2luLWxlZnQpLCAoeHM6IDBweCwgbWQ6IDI3cHgpKTtcblxuICAgICAgICAmLmxvZ28tZm9vdGVyIHtcbiAgICAgICAgICAuZm9vdGVyLWxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTYwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNvbGxhcHNlLWNvbnRlbnQge1xuICAgICAgICAgICAgLy9saW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbGxhcHNlLWNvbnRlbnQge1xuICAgICAgICAgIC8vbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy10b3ApLCAobWJsOiAyMHB4LCBkc2s6IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctYm90dG9tKSwgKG1ibDogMjBweCwgZHNrOiAwKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgobWF4LXdpZHRoKSwgKHhzOiAxNTBweCwgbWQ6MTAwJSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBheW1lbnQtaWNvbnMge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKG1heC13aWR0aCksICh4czogMTAwJSwgbWQ6IDEwMCUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qICNmb290ZXItY29sbGFwc2UtNCB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi1sZWZ0KSwgKHhzOiAtMjBweCwgbWQ6IDBweCkpO1xuICAgICAgfSovXG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgobWFyZ2luLWxlZnQpLCAobWJsOiAwLCBkc2s6IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tcmlnaHQpLCAobWJsOiAwLCBkc2s6IDApLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcnBtcSgodGV4dC1hbGlnbiksIChtYmw6IGxlZnQpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgoYm9yZGVyLXRvcCksIChtYmw6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LCBkc2s6IG5vbmUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKGJvcmRlci1ib3R0b20pLCAobWJsOiAxcHggc29saWQgJHNlY29uZGFyeSwgZHNrOiBub25lKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzICk7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWNvbG9yLWxpZ2h0O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgpKTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tYm90dG9tKSwgKG1ibDogMCwgZHNrOiAzM3B4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzICk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgobWFyZ2luLXRvcCksIChtYmw6IDMwcHgsIGRzazogMTRweCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgY29sb3I6ICRmb290ZXItY29sb3ItbGlnaHQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKChwb2ludGVyLWV2ZW50cyksIChkc2s6IG5vbmUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTdweCkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy10b3AsIHBhZGRpbmctYm90dG9tKSwgKG1ibDogMjBweCwgZHNrOiAwKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzICk7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKChkaXNwbGF5KSwgKG1ibDogaW5saW5lLWJsb2NrLCBkc2s6IGlubGluZSksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgod2lkdGgpLCAobWJsOiAxMDAlLCBkc2s6IGF1dG8pLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKGN1cnNvciksIChtYmw6IHBvaW50ZXIsIGRzazogdGV4dCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuICAgICAgICAgICAgLy9AaW5jbHVkZSBycG1xKChib3JkZXItdG9wKSwgKG1ibDogMXB4IGRhc2hlZCAkYm9yZGVyLWNvbG9yLCBkc2s6IG5vbmUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKGJvcmRlci1ib3R0b20pLCAobWJsOiAxcHggZGFzaGVkICRzZWNvbmRhcnksIGRzazogbm9uZSksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuXG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2luZygpO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKGJhY2tncm91bmQpLCAobWJsOiB1cmwoJy4uLy4uL2ltYWdlcy9hcnJvdy1yaWdodC13aGl0ZS5zdmcnKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0LCBkc2s6IG5vbmUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgoZGlzcGxheSksIChtYmw6IGJsb2NrLCBkc2s6IG5vbmUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMgKTtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGlzdC1saW5rIHtcbiAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tYm90dG9tKSwgKHhzOiAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy1sZWZ0KSwgKHhzOiAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy1ib3R0b20pLCAobWJsOiAxNnB4LCBkc2s6MCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyApO1xuXG4gICAgICAgICAgJi5zb2NpYWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi1ib3R0b20pLCAoeHM6IDVweCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tYm90dG9tKSwgKHhzOiA3cHgsIG1kOiAxMHB4KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWNvbG9yLWxpZ2h0O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2wtc2VydmljZSB7XG4gICAgICAgICAgLy9AaW5jbHVkZSBycG1xKChtYXgtd2lkdGgpLCAobWJsOiAxMDAlLCBkc2s6IDU2MHB4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzICk7XG4gICAgICAgICAgLy9AaW5jbHVkZSBycG1xKCh3aWR0aCksIChtYmw6IDEwMCUsIGRzazogMzAlKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzICk7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWNvbG9yLWxpZ2h0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9vdGVyLW1haW4tY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgIC5mb290ZXItY29udGVudC1yb3cge1xuICAgICAgICAuZm9vdGVyLWNvbCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgIC5mb290ZXItdGl0bGVzLWJhbmQge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMThweDtcbiAgICAgIH1cblxuICAgICAgLmZvb3Rlci10aXRsZXMtcm93IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuZm9vdGVyLWNvbCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9vdGVyLXRpdGxlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZvb3Rlci1jb250ZW50LXJvdyB7XG4gICAgICAgIC5mb290ZXItY29sIHtcbiAgICAgICAgICAuY29sbGFwc2UtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmctZm9vdGVye1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxuICAuY29udGVudC1pbmZvMiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gICAgLmZvb3Rlci1ib3R0b20tY29udGFpbmVyIHtcbiAgIFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWF4LXdpZHRoOiAkZm9vdGVyLW1heC13aWR0aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICAvLyBAaW5jbHVkZSBycG1xKChtYXJnaW4tdG9wKSwgKG1ibDogMzBweCwgZHNrOiAzMHB4KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctdG9wKSwgKHhzOiAwcHgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKGRpc3BsYXkpLCAoeHM6IGZsZXgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKGp1c3RpZnktY29udGVudCksICh4czogc3BhY2UtY2VudGVyKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKGFsaWduLWl0ZW1zKSwgKG1ibDogY2VudGVyLCBkc2s6IGNlbnRlciksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICBAaW5jbHVkZSBycG1xKChmbGV4LWRpcmVjdGlvbiksIChtYmw6IGNvbHVtbiwgZHNrOiBjb2x1bW4pLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuXG4gICAgICAuY29tcGFueS1pbmZvIHtcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbi1ib3R0b20pLCAobWJsOiAwcHgsIGRzazogMCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKG9yZGVyKSwgKG1ibDogMywgZHNrOiB1bnNldCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIC8vQGluY2x1ZGUgcnBtcSgodGV4dC1hbGlnbiksIChtYmw6IGNlbnRlciwgZHNrOiBsZWZ0KSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGZvb3Rlci1jb2xvci1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWNvbG9yLWxpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tYm90dG9tKSwgKHhzOiAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4KSk7XG5cbiAgICAgICAgICAmLmRldGFpbC0xIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5kZXRhaWwtMiB7XG4gICAgICAgICAgICBjb2xvcjogJGZvb3Rlci1jb2xvci1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ieSB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKG9yZGVyKSwgKG1ibDogNSwgZHNrOiB1bnNldCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG5cbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICBjb2xvcjogJGZvb3Rlci1jb2xvci1saWdodDtcblxuICAgICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tYm90dG9tKSwgKHhzOiAwKSk7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTVweCkpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICAgXG4gIH1cbiAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG4gICAgLmZvcm0tY29udGVudHtcbiAgICAgIGg2e1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5idG4tc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gICAgICAvLyBwYWRkaW5nOiAxMHB4IDIwcHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDBweDtcblxuICAgIH1cbiAgICAuYnRuLW5sLXBvcHVwLXN1YnNjcmliZSB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQgIWltcG9ydGFudDtcbiAgICAgIC8vIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgLy8gcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgcnBtcShcbiAgICAgICAgd2lkdGgsXG4gICAgICAgIChcbiAgICAgICAgICB4czogMTAwJSxcbiAgICAgICAgICBtZDogMTAwJSxcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG4gICAgLmJvcmRlci13aGl0ZXtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGV4dC1jb2xvci1saWdodDtcbiAgICB9XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTkVXXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLmxpc3QtdW5zdHlsZWQgbGkgKyBsaSB7IG1hcmdpbi10b3A6IC4yNXJlbTsgfVxuXG59XG4iLCJib2R5LnBhZ2UtaG9tZXBhZ2Uge1xuICAuZW1iZWQtY29udGFpbmVyMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnZpZGVvLW92ZXJsYXktbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiA1O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5ob21lLXNwbGlkZS1pbWcge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIDkwZGVnLFxuICAgICAgJGltYWdlLXBsYWNlaG9sZGVyLWJnIDAlLFxuICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQ1KSA1MCUsXG4gICAgICAkaW1hZ2UtcGxhY2Vob2xkZXItYmcgMTAwJVxuICAgICk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gICAgYW5pbWF0aW9uOiBob21lcGFnZS1wbGFjZWhvbGRlci1zaGltbWVyIDEuMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cblxuICAuaG9tZS1zcGxpZGUtaW1nLmlzLWxvYWRlZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cblxuICBAa2V5ZnJhbWVzIGhvbWVwYWdlLXBsYWNlaG9sZGVyLXNoaW1tZXIge1xuICAgIDAlIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDAlIDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyMDAlIDA7XG4gICAgfVxuICB9XG5cbiAgLmhvbWUtcG9zMy1jZW50ZXJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcblxuICAgICZfX2dyaWQge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDAsIDFmcik7XG4gICAgICBtaW4taGVpZ2h0OiBjbGFtcCg1MjBweCwgODB2aCwgOTAwcHgpO1xuICAgIH1cblxuICAgICZfX2NvcHkge1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBwYWRkaW5nOiBjbGFtcCgyOHB4LCA0dncsIDY0cHgpO1xuICAgIH1cblxuICAgICZfX21lZGlhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1pbi1oZWlnaHQ6IGNsYW1wKDM2MHB4LCA2MHZoLCA5MDBweCk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMDgpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZXItd3JhcCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgd2lkdGg6IG1pbigzNjBweCwgNzIlKTtcbiAgICB9XG5cbiAgICAmX19zcGxpZGUge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJl9fc2xpZGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2NhcmQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhc3BlY3QtcmF0aW86IDQgLyA1O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgYm94LXNoYWRvdzogMCAyNHB4IDUwcHggcmdiYSgkYnJhbmQtYnJvd24sIDAuMjUpO1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgICBwaWN0dXJlLFxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3Byb2dyZXNzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogY2xhbXAoMTJweCwgMnZ3LCAyMnB4KSBhdXRvIDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICZfX3Byb2dyZXNzIC5zcGxpZGVfX3Byb2dyZXNzX19iYXIge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIH1cblxuICAgIC50ZXh0LWJveCB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG1pbigzMnJlbSwgOTB2dyk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbjogMCAwIGF1dG87XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMjhweCwgbWQ6IDMycHgsIGxnOiA0MnB4KSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk1O1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjRweDtcbiAgICAgICAgbWF4LXdpZHRoOiAyNnJlbTtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4LCBtZDogMjBweCkpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zNTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAgICZfX2dyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgJl9fY29weSB7XG4gICAgICAgIHBhZGRpbmc6IDM2cHggMjJweDtcbiAgICAgIH1cblxuICAgICAgJl9fbWVkaWEge1xuICAgICAgICBtaW4taGVpZ2h0OiBjbGFtcCgzNjBweCwgNzB2aCwgNjIwcHgpO1xuICAgICAgfVxuXG4gICAgICAmX19zbGlkZXItd3JhcCB7XG4gICAgICAgIHdpZHRoOiBtaW4oMzIwcHgsIDc4dncpO1xuICAgICAgfVxuXG4gICAgICAudGV4dC1ib3gge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAyOHB4LCBtZDogMzJweCwgbGc6IDQycHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTZweCwgc206IDE4cHgpKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgICAmX19jb3B5IHtcbiAgICAgICAgcGFkZGluZzogMjhweCAxOHB4O1xuICAgICAgfVxuXG4gICAgICAmX19zbGlkZXItd3JhcCB7XG4gICAgICAgIHdpZHRoOiBtaW4oMjkwcHgsIDgydncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ob21lLWNhcm91c2VsIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYnJvd247XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmX19pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogY2xhbXAoMTZweCwgM3Z3LCAyOHB4KTtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zcGxpZGUgLnNwbGlkZV9fdHJhY2sge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYmFja2dyb3VuZDogI2Y1ZjFlZDtcbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gNDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kOiAjZTllMWRiO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3BsaWRlIC5zcGxpZGVfX2Fycm93IHtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAubHVjaWRlLFxuICAgICAgW2RhdGEtbHVjaWRlXSB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5iYW5uZXJDb250YWluZXIuY29udGFpbmVyLmNhcm9zZWxsbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLCAoeHM6IDMwcHggMCwgbWQ6IDYwcHggMCkpO1xuXG4gICAgLnByb2R1Y3RzLWhpZ2hsaWdodC5jYXJvc2VsbG9HZW4ge1xuICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogY2xhbXAoMTZweCwgM3Z3LCAyOHB4KSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogY2xhbXAoMTZweCwgM3Z3LCAyOHB4KSAhaW1wb3J0YW50O1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtY2Fyb3VzZWwge1xuICAgICAgICBwYWRkaW5nLXRvcDogY2xhbXAoMTZweCwgM3Z3LCAyOHB4KTtcbiAgICB9XG4gIH1cblxuICBtYWluW3JvbGU9J21haW4nXSBoMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDI4cHgsIG1kOiAzMnB4LCBsZzogNDJweCkpO1xuICB9XG5cbn1cbiIsImJvZHkucHJvZHVjdHMtbGlzdCB7XG5cbiAgLnByb2R1Y3RzLWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAyMnB4LCBtZDogNDhweCkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgLmNhdGVnb3J5LXRpdGxlLWgyIHtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgaHIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICRsaWdodC1icm93bjtcbiAgQGluY2x1ZGUgcnBtcShtYXJnaW4sICh4czogMTBweCAwLCBtZDogMjBweCAwKSk7XG4gIH1cblxuICAuZmlsdGVyLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRzaGFkb3ctY29sb3IsIDAuMzUpO1xuICAgIHotaW5kZXg6IDEwNTA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAmLnNob3cge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICAgIC5maWx0ZXItb3ZlcmxheV9fcGFuZWwge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGFuZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogOTB2dztcbiAgICAgIG1heC13aWR0aDogMjMuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZzogMS41cmVtIDEuMjVyZW07XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKCRzaGFkb3ctY29sb3IsIDAuMik7XG4gICAgfVxuXG4gICAgJl9fY2xvc2Uge1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICBwYWRkaW5nOiA0cHg7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGdyZXk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGdyZXk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICAuZmlsdGVyLWdyb3VwLXJlc2V0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5maWx0cmkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgICAgZ2FwOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNrdG9wLWZpbHRlcnMgLmZpbHRlci1ncm91cCB7XG4gICAgICBwYWRkaW5nOiAxNnB4IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGdyZXk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5maWx0ZXJzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICBtYWluW3JvbGU9XCJtYWluXCJdIHtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAobWJsOiAkaGVhZGVyLWhlaWdodC10b3RhbC1tYmwsIGRzazogJGhlYWRlci1oZWlnaHQtdG90YWwpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICB9XG5cbiAgI3BhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5zaWJsaW5nLWNhdGVnb3JpZXMge1xuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAmLnNpYmxpbmctY2F0ZWdvcmllcy1zbGlkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKChiYWNrZ3JvdW5kLWNvbG9yKSwgKG1ibDogI2YyZjJmMiwgZHNrOiBub25lKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNXB4KSk7XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2VjdGlvbi5maWx0ZXJzIHtcbiAgICAvKiBwb3NpdGlvbjogc3RpY2t5OyAqL1xuICAgIEBpbmNsdWRlIHJwbXEodG9wLCAoeHM6IDU0cHgsIG1kOiA2MHB4KSk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAyMHB4O1xuICAgIHotaW5kZXg6IDM7XG4gICAgQGluY2x1ZGUgcnBtcSgoZGlzcGxheSksIChtYmw6IGJsb2NrLCBkc2s6IGZsZXgpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsICh4czogMTVweCwgbWQ6IDE1cHgpKTtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctYm90dG9tLCAoeHM6IDAsIG1kOiAxNXB4KSk7XG5cbiAgICAuZmlsdGVyLWJhciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIHJwbXEoanVzdGlmeS1jb250ZW50LCAoeHM6IHNwYWNlLWJldHdlZW4sIG1kOiBmbGV4LWVuZCkpO1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWJvdHRvbSwgKHhzOiAwLCBtZDogMTVweCkpO1xuICAgICAgZ2FwOiAxMHB4O1xuICAgICAgQGluY2x1ZGUgcnBtcShtaW4td2lkdGgsICh4czogMTAwJSwgbWQ6IDEwMCUpKTtcblxuXG4gICAgICAuZHJvcGRvd24ge1xuICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICAgICAgICAgIC8qIGZvbmRhbWVudGFsZSBwZXIgbGUgJSBkZWwgbWVudSAqL1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgLy8gQGluY2x1ZGUgcnBtcShtYXJnaW4tcmlnaHQsICh4czogOHB4LCBtZDogMTZweCkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idG5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMTBweCAxMHB4LCBtZDogMTBweCAyMHB4KSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgcnBtcSgod2lkdGgpLCAobWJsOiAxMDAlLCBkc2s6IDEwMCUpLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpO1xuXG5cbiAgICAgICAgLmZpbHRlci12YXJpZXR5IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAxMHB4IDE1cHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5maWx0ZXItb3JkZXIge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1sZWZ0LCAoeHM6IDAsIG1kOiA2NXB4LCBsZzogMCkpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5maWx0ZXItY291bnQtZGF0YSxcbiAgICAgICAgLmZpbHRlci1vcmRlci1kYXRhIHtcbiAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMCwgbWQ6IDApKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnLnNob3cge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmJ0bmRyb3Bkb3duLXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxM3B4KTtcbiAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDsgXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5O1xuICAgICAgICAvLyBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDE2MHB4LCBtZDogMjcwcHgpKTtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cbiAgICAgICAgICAvLyAmOmhvdmVyIHtcbiAgICAgICAgICAvLyAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZHJvcGRvd24tbWVudS1pbm5lciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNXB4KSk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGFiZWwuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgICAuZm9ybS1jaGVjay1pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAvLyBib3JkZXI6IHNvbGlkIDFweCAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgsIG1kOiAxNHB4KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2ZpbHRlcnNQcm9kdWN0c1dyYXBwZXIsXG4gIC5maWx0ZXJzLXByb2R1Y3RzLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHotaW5kZXg6IDM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIHJwbXEodG9wLCAoeHM6ICRoZWFkZXItaGVpZ2h0LXRvdGFsLW1ibCwgbWQ6ICRoZWFkZXItaGVpZ2h0LXRvdGFsKSApO1xuICB9XG5cbiAgLyogU2V6aW9uaSBzdGlja3kgKi9cbiAgc2VjdGlvbi5maWx0ZXJze1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gIH1cbiAgc2VjdGlvbi5maWx0ZXJzRGVza3RvcCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgyNDAsIDI0MCwgMjQwLCAwKSAyNiUsIHJnYmEoMjQwLCAyNDAsIDI0MCwgMSkgMTAwJSk7XG4gIH1cblxuICAuYnRuLWZpbHRlcnMge1xuICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNpbmcoKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTNweCwgbWQ6IDEzcHgpKTtcbiAgICBAaW5jbHVkZSBycG1xKG1pbi13aWR0aCwgKHhzOiAxNTBweCwgbWQ6IDE1MHB4KSk7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuXG4gICAgc3BhbiB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEzcHgsIG1kOiAxM3B4KSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXM6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyKFwiOmhvdmVyXCIpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcblxuICAgICAgLy8gJjo6YWZ0ZXIge1xuICAgICAgLy8gICBoZWlnaHQ6IDJweDtcbiAgICAgIC8vIH1cbiAgICB9XG4gIH1cblxuICAgLmNhdGVnb3J5LWltYWdle1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICBpbWd7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gIHNlY3Rpb24ucHJvZHVjdHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAoeHM6IDBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1ib3R0b20sICh4czogNDBweCwgbWQ6IDMwcHgpKTtcblxuICAgIC5zaG9wcGluZy1pdGVtcy1saXN0IHtcbiAgICAgIC8vIFRyYXNmb3JtaWFtbyBpbCBjb250YWluZXIgaW4gZ3JpZ2xpYSBDU1NcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAvLyBTcGF6aW8gZnJhIGxlIGNlbGxlIChnYXAgZGkgMTBweClcbiAgICAgIGdhcDogMTVweDtcblxuICAgICAgLy8gMiBjb2xvbm5lIGRpIGJhc2UgKG1vYmlsZSlcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cbiAgICAgIC8vIERhIG1kIGluIHN1OiAzIGNvbG9ubmVcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgIH1cblxuICAgICAgLy8gRGEgeGwgaW4gc3U6IDQgY29sb25uZVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgfVxuXG4gICAgICAvLyBSaW11b3ZvIGxhIHZlY2NoaWEgbG9naWNhIGRpIHdpZHRoIHN1IC5jb2wtNiwgcGVyY2jDqSBvcmEgdXNvIGxhIGdyaWdsaWEgQ1NTXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgLmNvbC02IHtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1sZWZ0LCAoeHM6IDBweCwgbGc6IDApKTtcblxuICAgICAgLy8g4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUIFdSQVBQRVIgREVJIFBST0RPVFRJIOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlFxuICAgICAgLy9cbiAgICAgIC8vIHByb2R1Y3RzLXdyYXBwZXIgw6ggaWwgY29udGFpbmVyIGNoZSBpbCBKUyBBSkFYXG4gICAgICAvLyBhbmRyw6AgYSBzb3N0aXR1aXJlL2FnZ2lvcm5hcmUuIFF1aSBsbyBmYWNjaWFtb1xuICAgICAgLy8gZGl2ZW50YXJlIFwiZGlzcGxheTogY29udGVudHNcIiBjb3PDrCBpIHN1b2kgZmlnbGlcbiAgICAgIC8vIChiYW5uZXLigJB2ZXJ0aWNhbCBlIHByb2R1Y3TigJBpdGVtKSBwYXJ0ZWNpcGFub1xuICAgICAgLy8gZGlyZXR0YW1lbnRlIGFsbGEgZ3JpZ2xpYSBkaSAuc2hvcHBpbmctaXRlbXMtbGlzdC5cbiAgICAgICNwcm9kdWN0cy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogY29udGVudHM7XG5cbiAgICAgICAgLmxpc3Qtbm8tcHJvZCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNDUlO1xuICAgICAgICAgIGxlZnQ6IDQ1JTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgIFxuICAgICAgLy8g4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUXG5cbiAgICAgIC5wcm9kdWN0LWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sICh4czogMCwgbWQ6IDApKTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWxlZnQgcGFkZGluZy1yaWdodCwgKHhzOiAwcHgsIG1kOiA1cHgpKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG5cbiAgICAgIC8vIOKAlOKAlOKAlOKAlOKAlOKAlCBDbGFzc2kgcGVyIGkgYmFubmVyIOKAlOKAlOKAlOKAlOKAlOKAlCAvL1xuXG4gICAgICAvLyBCYW5uZXIgb3JpenpvbnRhbGU6IG9jY3VwYSAyIGNvbG9ubmVcbiAgICAgIC5iYW5uZXItaG9yaXpvbnRhbCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJhbm5lci1maWxsLWNlbnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcblxuICAgICAgICBwaWN0dXJlLFxuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIHBpY3R1cmUgaW1nLFxuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYmFubmVyLWhvcml6b250YWwtaW5pdGlhbCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEJhbm5lciB2ZXJ0aWNhbGU6IG9jY3VwYSAyIHJpZ2hlXG4gICAgICAuYmFubmVyLXZlcnRpY2FsIHtcbiAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLy8gU2UgdnVvaSBjaGUgbCdpbW1hZ2luZSByaWVtcGlhIHNlbXByZSB0dXR0YSBsJ2FsdGV6emFcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cblxuICAgIG5hdiB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgdWwucGFnaW5hdGlvbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5hdiB7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogNDBweCwgbWQ6IDUwcHgpKTtcblxuICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAucGFnZS1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNlYXJjaC1yZXN1bHRzIHtcbiAgICBzZWN0aW9uLnByb2R1Y3RzLWhlYWRlciB7XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5maWx0ZXJzLW1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMHZoO1xuICB9XG5cbiAgLmRlc2t0b3AtZmlsdGVycyB7XG4gICAgaDUge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgZm9udC1zaXplOiByZW0oMTZweCk7XG4gICAgfVxuICAgIC5maWx0cmkge1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWJvdHRvbSwgKHhzOiAwLCBtZDogMjBweCkpO1xuICAgIH1cblxuICAgIC5maWx0ZXItZ3JvdXAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMjBweCAwLCBtZDogMTVweCAwKSk7XG4gICAgICBAaW5jbHVkZSBycG1xKGJvcmRlci1ib3R0b20sICh4czogMXB4IHNvbGlkICRtZWRncmV5LCBtZDogbm9uZSkpO1xuICAgICAgLy8gJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIC8vICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG4gICAgICAvLyB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5maWx0ZXItZ3JvdXAtcmVzZXQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgfVxuXG4gICAgLmZpbHRlci1oZWFkZXIge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAxMHB4O1xuICAgIH1cblxuICAgIC5maWx0ZXItYWNjb3JkaW9uLXRvZ2dsZSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAuZmlsdGVyLWFjY29yZGlvbi1pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmljb24tbWludXMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmlsdGVyLWJvZHkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmZpbHRlci1ncm91cC5pcy1jb2xsYXBzZWQge1xuICAgICAgLmZpbHRlci1ib2R5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmZpbHRlci1hY2NvcmRpb24tdG9nZ2xlIHtcbiAgICAgICAgLmljb24tbWludXMge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbi1wbHVzIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgLmZpbHRlci1oZWFkZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5maWx0ZXItYWNjb3JkaW9uLXRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yZXNldC1maWx0ZXIge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgLyogZm9udC1zaXplOiAyMHB4OyAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIH1cblxuICAgIC5yZXNldC1maWx0ZXItYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIC8qIGZvbnQtc2l6ZTogMjBweDsgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICB9XG5cbiAgICAuc2l6ZS1vcHRpb24ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJyb3duO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiByZW0oMTFweCk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICAgIG91dGxpbmU6IHNvbGlkIDJweCAkYnJhbmQtYnJvd247XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpY2Utb3B0aW9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1icm93bjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDExcHgpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWJyb3duO1xuICAgICAgICBvdXRsaW5lOiBzb2xpZCAycHggJGJyYW5kLWJyb3duO1xuICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbG9yLW9wdGlvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYnJvd247XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IHJlbSgxMXB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogOHB4O1xuXG4gICAgICAuY29sb3Itc3dhdGNoIHtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICAgIG91dGxpbmU6IHNvbGlkIDJweCAkYnJhbmQtYnJvd247XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1icm93bjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggNnB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiByZW0oMTFweCk7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZ2FwOiA2cHg7XG4gICAgICBtaW4taGVpZ2h0OiA5MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgIC5jYXRlZ29yeS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIH1cblxuICAgICAgLmNhdGVnb3J5LWxhYmVsIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWJyb3duO1xuICAgICAgICBvdXRsaW5lOiBzb2xpZCAycHggJGJyYW5kLWJyb3duO1xuICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsImJvZHkucGFnZS1wcm9kdWN0IHtcblxuICAucHN3cF9fYmcge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICB9XG5cbiAgLnBzd3BfX3RvcC1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wc3dwX19idXR0b24gcHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCwgLnBzd3BfX2J1dHRvbiBwc3dwX19idXR0b24tLWFycm93LS1yaWdodHtcbiAgICAgIC8qIGJhY2tncm91bmQtY29sb3I6ICM3RDRCMzcgIWltcG9ydGFudDsgKi9cbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgfVxuXG4gIC5wc3dwX19pbWctLXBsYWNlaG9sZGVyLS1ibGFuayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIC5wc3dwX19idXR0b246OmFmdGVyLCAucHN3cF9fYnV0dG9uOjpiZWZvcmV7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgXG4gIH0gKi9cblxuICBtYWluIHtcbiAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAoeHM6ICRoZWFkZXItaGVpZ2h0LXRvdGFsLCBtZDogJGhlYWRlci1oZWlnaHQtdG90YWwpKTtcblxuICAgIGZpZ3VyZSB7XG4gICAgICBtYXJnaW46IDAgMCAwcmVtO1xuICAgIH1cblxuICAgIGxpOmhhcyh2aWRlbykge1xuICAgICAgbWFyZ2luOiAwIDAgMHJlbTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG4gIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICAvLyBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMHB4LCBtZDogNDBweCkpO1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsICh4czogMHB4LCBtZDogMHB4KSk7XG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vIHRvcDogMDtcbiAgICAvLyBsZWZ0OiAwO1xuICAgIC8vIHJpZ2h0OiAwO1xuICAgIC8vIFxuXG4gICAgLmlzLW1vYmlsZS1tZW51LW9wZW4gJiB7XG4gICAgICAvLyAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgfVxuXG4gICAgJi5zY3JvbGxlZCB7XG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMCwgbWQ6IDBweCkpO1xuICAgICAgdG9wOiAkcHJvbW90aW9ucy1iYXItaGVpZ2h0O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG4gICAgICAvLyBwYWRkaW5nOiAzcHggMDtcbiAgICB9XG4gIH1cblxuICAuc2l6ZS1ndWlkZS1tb2RhbCB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuXG5cbiAgICAuc3dhbDItY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMCwgbWQ6IDMwcHgpKTtcbiAgICB9XG5cbiAgfVxuXG4gIC5zd2FsMi1jb250YWluZXIge1xuICAgIC5zd2FsMi1tb2RhbCB7XG4gICAgICB3aWR0aDogMzBlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXhsO1xuXG4gICAgICAuc3dhbDItZXJyb3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuc3dhbDItaWNvbi1lcnJvciB7XG4gICAgICAgIC5zd2FsMi10aXRsZSB7XG4gICAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRtZWRncmV5O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zd2FsMi10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBwYWRkaW5nOiA0NXB4IDMwcHggMjBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ibGFjaztcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxOHB4LCBzbTogMjRweCwgKSk7XG4gICAgICB9XG5cbiAgICAgIC5zd2FsMi1odG1sLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAwcHggMTBweCAwcHggMTBweCwgbWQ6IDIwcHggMzBweCAyMHB4IDMwcHgpKTtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBzbTogMTZweCkpO1xuXG4gICAgICAgIC5wcm9kdWN0LXJvdyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRtZWRncmV5O1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDVweDtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGdhcDogMTVweDtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRtZWRncmV5O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcm9kdWN0LWltYWdlLW1haW4ge1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgICAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICAgICAgICAvLyBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMTBweCwgc206IDApKTtcbiAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWFnZXMvcHJvZHVjdC1iYWNrZ3JvdW5kLnN2ZycpO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgLy8gbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgpKTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNpemVUYWJsZSA+ICoge1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCkpO1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgfVxuXG4gICYuaXMtbW9iaWxlLW1lbnUtb3BlbiB7XG4gICAgc2VjdGlvbi5wcm9kdWN0LWhlYWRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxuXG5cbiAgc2VjdGlvbi5wcm9kdWN0LWhlYWRlciB7XG4gICAgLy8gQGluY2x1ZGUgcnBtcShoZWlnaHQsICh4czogNTBweCwgbWQ6IDgwcHgpKTtcbiAgICAvLyBAaW5jbHVkZSBycG1xKGJvcmRlci1ib3R0b20sICh4czogbm9uZSwgbWQ6IDFweCBkYXNoZWQgJGJvcmRlci1jb2xvcikpO1xuXG4gICAgQGluY2x1ZGUgcmVsYXRpdmUoKTtcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIHJwbXEoZGlzcGxheSwgKHhzOiBibG9jaywgbWQ6IGJsb2NrKSk7XG5cblxuICAgIC8qQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKXtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpe1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAuZmlsdGVycyB7XG4gICAgICAgIEBpbmNsdWRlIGFic29sdXRlKHRvcCA1MCUgbGVmdCA1MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICB9Ki9cblxuICAgIC5uYXYtbGFiZWwtY29udGFpbmVyIHtcbiAgICAgIGZsZXgtZmxvdzogcm93LXJldmVyc2U7XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWItbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBycG1xKGRpc3BsYXksIChtZDogZmxleCkpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3cteDogYXV0bzsgLy8gUGVybWV0dGUgbG8gc2Nyb2xsIG9yaXp6b250YWxlIHN1IG1vYmlsZVxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgLyogTmFzY29uZGUgbGEgc2Nyb2xsYmFyICovXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgIC8qIElFIGUgRWRnZSAqL1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgLyogRmlyZWZveCAqL1xuXG4gICAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAwLCBtZDogMTBweCkpO1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgY29sb3I6ICRicmFuZC1icm93biAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICBmb250LXNpemU6IHJlbSgxM3B4KTtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQ+c3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cblxuICAgIC5maWx0ZXJzIHtcbiAgICAgIGZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihsZywgeHhsKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1jaGVjay1pbmxpbmUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAgIHNlY3Rpb24ucHJvZHVjdCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5tYWluQm94IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIC8qICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7ICovXG4gICAgfVxuXG4gICAgYXJ0aWNsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gbWluLWhlaWdodDogNzgwcHg7XG4gICAgfVxuXG5cbiAgICAucHJvZHVjdC1pbWFnZXMge1xuICAgICAgLy8gLS1wcm9kdWN0LWltYWdlcy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSA4MCUsICNGNUYwRUIgMTAwJSk7XG5cbiAgICAgIC8vIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIC8vICAgLS1wcm9kdWN0LWltYWdlcy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDgwJSwgI0Y1RjBFQiAxMDAlKTtcbiAgICAgIC8vIH1cblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2ltYWdlcy9zaW5nbGUtcHJvZHVjdC1iYWNrZ3JvdW5kLnN2ZycpO1xuICAgICAgLy8gYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgLy8gYmFja2dyb3VuZDogdmFyKC0tcHJvZHVjdC1pbWFnZXMtZ3JhZGllbnQpO1xuXG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDUlLCBtZDogMCkpO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAuaW1hZ2UtY29udGFpbmVyIC5wcy1hbmNob3IubWFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICB9XG5cbiAgICAgIC5tYWluLXNsaWRlciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5tYXhpbWl6ZS1pbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDQwcHg7XG4gICAgICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuY3VzdG9tLXBhZ2luYXRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY3VzdG9tLXBhZ2UtYnRuIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXN0b20tcGFnZS1idG46aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwZWFjZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXN0b20tcGFnZS1idG4uYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3BsaWRlX190cmFjayB7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6IHZhcigtLXByb2R1Y3QtaW1hZ2VzLWdyYWRpZW50KTtcbiAgICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgICAgICAvKiBDcmVhdGVzIDIgY29sdW1ucyBvZiBlcXVhbCB3aWR0aCAqL1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgICAgICAvKiBBZGRzIHNwYWNlIGJldHdlZW4gZ3JpZCBpdGVtcyAqL1xuXG4gICAgICAgICAgICAubWFpbi1zbGlkZSB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZmlndXJlLFxuICAgICAgICAuc3BsaWRlX19zbGlkZSB7XG4gICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICB9XG4gICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3BsaWRlX19saXN0IHtcbiAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlIHtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBvcGFjaXR5OiAuMTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWJyb3duO1xuICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICBoZWlnaHQ6IDZweDtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNwbGlkZV9fcGFnaW5hdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoYm90dG9tLCAoeHM6IDFlbSwgc206IDFlbSkpO1xuICAgICAgfVxuXG4gICAgICAubWFpbi1zbGlkZXIge1xuICAgICAgICAtLW1haW4tc2xpZGVyLXByb2dyZXNzOiAwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAuc3BsaWRlX19wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IG1pbigxMDAlLCBjYWxjKDEwMCUgLSA0OHB4KSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXJvdW5kZWQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRwcmltYXJ5LCAuMik7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIHdpZHRoOiB2YXIoLS1tYWluLXNsaWRlci1wcm9ncmVzcywgMCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjI1cyBlYXNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLXNpbmdsZS1zbGlkZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc3BsaWRlX19wYWdpbmF0aW9uX19wYWdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LWFycm93LW5leHQsXG4gICAgICAucHJvZHVjdC1hcnJvdy1wcmV2IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8ucHJvZHVjdC1sYWJlbCB7XG4gICAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vICAgcmlnaHQ6IDA7XG4gICAgICAvLyAgIHRvcDogMDtcbiAgICAgIC8vICAgd2lkdGg6IDEwMCU7XG4gICAgICAvLyAgIHotaW5kZXg6IDE7XG4gICAgICAvLyAgIHBhZGRpbmc6IDAgMzBweDtcbiAgICAgIC8vIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLmJhY2tncm91bmQtY292ZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAvKiBJbml6aWFsbWVudGUgaW52aXNpYmlsZSAqL1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbiAgICAgICAgLyogVHJhbnNpemlvbmUgZmx1aWRhIHN1bGwnb3BhY2l0w6AgKi9cbiAgICAgIH1cblxuICAgICAgLmxvYWRlZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvKiBJbW1hZ2luZSB2aXNpYmlsZSBxdWFuZG8gw6ggY29tcGxldGFtZW50ZSBjYXJpY2F0YSAqL1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1jb2xvci1pbWFnZXMge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cbiAgICAgICAgICAmOm5vdCguc2xpY2staW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIC5wcm9kdWN0LWltYWdlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KC5zZWxlY3RlZC1jb2xvcikge1xuICAgICAgICAgIEBpbmNsdWRlIGFic29sdXRlKGxlZnQgdG9wKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VsZWN0ZWQtY29sb3Ige1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZmlndXJlLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlLCBtZDogY2FsYyg1MCUgLSAyLjVweCksIGxnOiBjYWxjKDUwJSAtIDVweCkpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAwLCBtZDogNXB4LCBsZzogMTBweCkpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLy8gLnByb2R1Y3QtY29sb3ItaW1hZ2VzXG4gICAgfVxuXG4gICAgLy8gLnByb2R1Y3QtaW1hZ2VzXG5cbiAgICAuc2xpZGVyLXByb2R1Y3QtbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICYuc2VsZWN0ZWQtY29sb3Ige1xuICAgICAgICBAaW5jbHVkZSBycG1xKGRpc3BsYXksICh4czogbm9uZSwgbWQ6IGZsZXgpKTtcbiAgICAgIH1cblxuICAgICAgLmltZy1zbGlkZXItbmF2IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lZGdyZXk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXJpZ2h0IG1hcmdpbi1ib3R0b20sICh4czogMCwgbWQ6IDEwcHgsIGxnOiAyMHB4KSk7XG5cbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG1heC13aWR0aCwgKHhzOiAwLCBtZDogNzBweCwgbGc6IDEwOHB4KSk7XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICBAaW5jbHVkZSBycG1xKHBvc2l0aW9uLCAoeHM6IHJlbGF0aXZlLCBsZzogc3RhdGljKSk7XG4gICAgICBAaW5jbHVkZSBycG1xKHRvcCwgKHhzOiB1bnNldCwgbGc6ICRoZWFkZXItaGVpZ2h0KSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IGZsZXgsIG1kOiBmbGV4KSk7XG4gICAgICBAaW5jbHVkZSBycG1xKGZsZXgtZGlyZWN0aW9uLCAoeHM6IGNvbHVtbikpO1xuXG4gICAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy1sZWZ0IHBhZGRpbmctcmlnaHQpLCAoeHM6IDIwcHgsIGxnOiAzMHB4LCB4bDogMzBweCkpO1xuICAgICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXRvcCksICh4czogMzBweCwgbGc6IDApKTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgobWFyZ2luLWxlZnQsIG1hcmdpbi1yaWdodCksICh4czogMCwgbGc6IDApKTtcbiAgICAgICAgJi53aGl0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIGgxLm5hbWUge1xuICAgICAgICAgIC8vQGluY2x1ZGUgcnBtcShvcmRlciwgKHhzOiA0LCBtZDogaW5pdGlhbCkpO1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMThweCwgbWQ6IDI0cHgpKTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3QtbGFiZWwgc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDNweCA4cHgsIHNtOiAzcHggOHB4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4LCBtZDogMTJweCkpO1xuICAgICAgICB9XG4gICAgICAgIC5jYXRlZ29yeSB7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNXB4LCBtZDogMjBweCkpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscy1yaWdodCB7XG4gICAgICAgICAgY29sb3I6ICR1cmJhbk1pc3Q7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEob3JkZXIsICh4czogNSwgbWQ6IGluaXRpYWwpKTtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgsIG1kOiAxOHB4KSk7XG4gICAgICAgICAgLy9AaW5jbHVkZSBycG1xKChwYWRkaW5nLWxlZnQpLCAoeHM6IDAsIG1kOiAxMHB4KSk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAmLnByaWNlT3JpZ2luIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5kaXNjb3VudC1wcmljZSB7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICYucHJpY2VPcmlnaW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZmxpbnRSb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYucHJpY2VGdWxsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRpc2NvdW50LWJhZGdlIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEzcHgsIG1kOiAxNHB4KSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmV3LWJhZGdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2VscGdyZWVuO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEzcHgsIG1kOiAxNHB4KSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmljZUxvd2VzdCB7XG4gICAgICAgICAgLy8gQGluY2x1ZGUgcnBtcSh0ZXh0LWFsaWduLCAoeHM6IGxlZnQsIG1kOiByaWdodCkpO1xuICAgICAgICAgIGNvbG9yOiAkbWVkZ3JleTtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEzcHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShvcmRlciwgKHhzOiA1LCBtZDogaW5pdGlhbCkpO1xuXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE1cHgsIG1kOiAxNXB4KSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWNoYXJhY3RlcmlzdGljcyB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IGZsZXgsIG1kOiBmbGV4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShmbGV4LWRpcmVjdGlvbiwgKHhzOiByb3csIG1kOiByb3cpKTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG9yZGVyLCAoeHM6IDUsIG1kOiBpbml0aWFsKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKHhzOiAyMHB4LCBtZDogMjVweCkpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1ib3R0b20sICh4czogMjBweCwgbWQ6IDI1cHgpKTtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgLmNoYXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKGZsZXgtZGlyZWN0aW9uLCAoeHM6IHJvdywgbWQ6IHJvdykpO1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCwgbWQ6MTdweCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4ua2xhcm5hLXBheW9mZiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAvL2ZvbnQtc2l6ZTogMC44MHJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAua2xhcm5hLWxvZ28ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiS2xhcm5hIEhlYWRsaW5lXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAua2xhcm5hLW1vZGFsIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4uc2NhbGFwYXktcGF5b2ZmIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAuc2NhbGFwYXktbW9kYWwge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbG9ycyB7XG5cbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG9yZGVyLCAoeHM6IDEsIG1kOiBpbml0aWFsKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKHhzOiAxMHB4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWJvdHRvbSwgKHhzOiAyMHB4LCBtZDogMCkpO1xuICAgICAgICAgIC8vIEBpbmNsdWRlIHJwbXEoYm9yZGVyLWJvdHRvbSwgKHhzOiBub25lLCBtZDogMXB4IGRhc2hlZCAkYm9yZGVyLWNvbG9yKSk7XG5cbiAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTVweCkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IGlubGluZS1ibG9jaykpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDEwcHgsIG1kOiA1cHgpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAjY3VycmVudENvbG9yTGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNXB4KSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNlbGVjdG9yLWdyb3VwLXByaWNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMjBweCwgbWQ6IDIwcHgpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiA1cHgsIG1kOiAwKSk7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgsIG1kOiAxNnB4KSk7XG5cbiAgICAgICAgICAgICZfX2Z1bGwge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZmxpbnRSb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19kaXNjb3VudGVkLFxuICAgICAgICAgICAgJl9fcGVyY2VudCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zZWxlY3RvciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOSwgMWZyKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMCwgbWQ6IDVweCkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDAsIG1kOiAwKSk7XG5cblxuICAgICAgICAgICAgLmNvbG9yIHtcbiAgICAgICAgICAgICAgLy8gIEBpbmNsdWRlIHJwbXEod2lkdGgsIGxpbmVhci1pbnRlcnBvbGF0aW9uKDYwcHgsIDEwMHB4LCB4cywgeGwpKTtcbiAgICAgICAgICAgICAgLy8gaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIC8vIEBpbmNsdWRlIHJwbXEobWFyZ2luLXJpZ2h0LCAoeHM6IDE1cHgsIG1kOiAyMHB4KSk7XG4gICAgICAgICAgICAgIC8vIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAxMHB4LCBtZDogMjBweCkpO1xuXG4gICAgICAgICAgICAgIC5jb2xvci1saXN0LWJveCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuc2VsZWN0ZWQtY29sb3Ige1xuICAgICAgICAgICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXh0cmFsaWdodGdyZXk7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgJGJyYW5kLWJyb3duO1xuXG4gICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmNvbG9yLXRleHQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCwgc206IDEzcHgpKTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZWxhdGl2ZSgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDkxJSAtIDJweCk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDI1MG1zIGVhc2luZygpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1icm93bjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgLy9wYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnByb21vIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTZweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcHggOHB4O1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAmLm5ldy1iYWRnZSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2VscGdyZWVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6MThweCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC10by1jYXJ0LWZvcm0ge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShvcmRlciwgKHhzOiAzLCBtZDogaW5pdGlhbCkpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsICh4czogMTBweCkpO1xuXG4gICAgICAgICAgLnBheW1lbnQtZGV0YWlscyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDBweCAxMHB4O1xuXG4gICAgICAgICAgICAua2xhcm5hLXBheW9mZiB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShvcmRlciwgKHhzOiAzLCBtZDogaW5pdGlhbCkpO1xuXG4gICAgICAgICAgICAgIC5rbGFybmEtbG9nbyB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiS2xhcm5hIEhlYWRsaW5lXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmtsYXJuYS1tb2RhbCB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNjYWxhcGF5LXBheW9mZiB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKG9yZGVyLCAoeHM6IDQsIG1kOiBpbml0aWFsKSk7XG5cbiAgICAgICAgICAgICAgLnNjYWxhcGF5LW1vZGFsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGF5cGFsLWltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiA4MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zaXplcy1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAvL0BpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMTAwJSwgbWQ6IDUwJSkpO1xuXG4gICAgICAgICAgICAmLnNlbGVjdGVkLWNvbG9yIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAvLyAuc2l6ZS1zZWxlY3RvciBhLnNpemUtaXRlbSB7XG4gICAgICAgICAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICAvLyAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNpemUtc2VsZWN0b3Ige1xuICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOSwgMWZyKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnNpemUtaXRlbSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4LCBtZDogMTRweCkpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYnJvd247XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuICAgICAgICAgICAgICAgIC8vQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMTVweCwgbWQ6IDgwcHgsIHhsOiAxNDBweCkpO1xuICAgICAgICAgICAgICAgIC8vQGluY2x1ZGUgcnBtcShoZWlnaHQsICh4czogNDRweCwgbWQ6IDQ4cHgsIHhsOiA1NnB4KSk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zaXplLWd1aWRlLXNlY3Rpb24ge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sICh4czogMTBweCwgbWQ6IDBweCkpO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNXB4KSk7XG5cbiAgICAgICAgICAgICAgI3NlbGVjdGVkU2l6ZUxhYmVsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaXplLXNjYWxlLXRvZ2dsZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxM3B4KSk7XG5cbiAgICAgICAgICAgICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZWRncmV5O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRncmV5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxNjBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggI2Y3ZjdmNztcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE2MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoJHNoYWRvdy1jb2xvciwgMC4xNSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjJweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnNjYWxlLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2l6ZS1ndWlkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBzbTogMTRweCkpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gZGl2ID4gYS5qcy13aXNobGlzdCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTNweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKHRleHQtYWxpZ24sICh4czogY2VudGVyLCBtZDogY2VudGVyKSk7XG5cbiAgICAgICAgICAgIC5hZGQsXG4gICAgICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYXJ0LWltZyxcbiAgICAgICAgICAgIC5oZWFydC1pbWctZmlsbGVkIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhlYXJ0LWltZy1maWxsZWQge1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgICAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG5cbiAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2Zzpub3QoLmhlYXJ0LWltZyk6bm90KC5oZWFydC1pbWctZmlsbGVkKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPmRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLy8gYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgLy8gZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG5cbiAgICAgICAgICAuYWRkLXRvLWNhcnQtc3RpY2t5IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMTZweCAxMnB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTJweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC45NSk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIC04cHggMjRweCByZ2JhKCRzaGFkb3ctY29sb3IsIDAuMTUpO1xuICAgICAgICAgICAgei1pbmRleDogMTAxMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNjBtcyBlYXNlLWluLW91dCwgb3BhY2l0eSAxNjBtcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgLmFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgLmFkZC10by1jYXJ0LXN0aWNreSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYWRkLXRvLWNhcnQtc3RpY2t5LWRlc2t0b3Age1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYm9keS1iZywgMC45Nik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIC04cHggMjRweCByZ2JhKCRzaGFkb3ctY29sb3IsIDAuMTUpO1xuICAgICAgICAgICAgei1pbmRleDogMTEwMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBlYXNlLWluLW91dCwgb3BhY2l0eSAxODBtcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgLnN0aWNreS1pbm5lciB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgZ2FwOiAyNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RpY2t5LWluZm8ge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RpY2t5LW5hbWUge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKChtZDogMTRweCwgbGc6IDE2cHgpKTtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdGlja3ktbWV0YSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGdhcDogMTJweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTNweCk7XG5cbiAgICAgICAgICAgICAgLnN0aWNreS1zaXplIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRicmFuZC1icm93biwgMC4xMik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0aWNreS1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RpY2t5LXByaWNlIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgobWQ6IDE4cHgsIGxnOiAyMHB4KSk7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hZGQtdG8tY2FydCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgLmFkZC10by1jYXJ0LXN0aWNreS1kZXNrdG9wIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5idG4tc2VjdGlvbixcbiAgICAgICAgICAuc3RpY2t5LWFjdGlvbnMge1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgoaGVpZ2h0KSwgKHhzOiAxMDAlLCBtZDogNDVweCkpO1xuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgoaGVpZ2h0KSwgKHhzOiA0NXB4LCBtZDogMTAwJSkpO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzaW5nKCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4LCBtZDogMThweCkpO1xuXG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy1sZWZ0IHBhZGRpbmctcmlnaHQpLCAoeHM6IDEwcHgsIG1kOiAxOHB4KSk7XG5cbiAgICAgICAgICAgICAgICAuYWRkLXRvLWNhcnQtbWFpbiB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIGdhcDogOHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hZGQtdG8tY2FydC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hZGQtdG8tY2FydC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYnJvd247XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtYnJvd247XG4gICAgICAgICAgICAgICAgLy8gYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHdoaXRlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5yZWFkeS10by1idXkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgLmFkZC10by1jYXJ0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFkZC10by1jYXJ0LW1haW4ge1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hZGQtdG8tY2FydC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbnMtc2VjdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZyksICh4czogMTBweCAwLCBsZzogMTBweCAwLCB4bDogMjBweCAwKSk7XG5cbiAgICAgICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteSAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEob3JkZXIsICh4czogNiwgbWQ6IGluaXRpYWwpKTtcblxuICAgICAgICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgLmFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY29sbGFwc2VkLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KC5jb2xsYXBzZWQpLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWJyb3duICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0cy1iYWRnZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4LCBtZDogMTRweCkpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKGZvbnQtd2VpZ2h0LCAoeHM6ICRidG4tZm9udC13ZWlnaHQpKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShjb2xvciwgKHhzOiAkYnJhbmQtYnJvd24pKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAuYWNjb3JkaW9uLXRvZ2dsZS1pY29ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWljb24ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taWNvbi1taW51cyB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC8vID4gc3BhbiB7XG4gICAgICAgICAgICAgIC8vICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IG5vbmUsIG1kOiBpbmxpbmUpKTtcbiAgICAgICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taWNvbi1taW51cyB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taWNvbi1wbHVzIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWhpZ2hsaWdodC1oZWFkZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGNoLXdpdGgge1xuICAgICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDIycHgpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAucHJvZHVjdC1pbmZvXG5cbiAgfVxuXG4gIC5zd2FsMi1oZWFkZXIge1xuICAgIC5zd2FsMi10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsICh4czogNTBweCwgbWQ6IDQwcHgpKTtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgsIG1kOiAyMnB4KSk7XG4gIH1cblxuICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4gIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvL2J0biBwc3dwXG4gIC5wc3dwX19idXR0b24sXG4gIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbiAgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLmFycm93LWN1c3RvbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNjY2MgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAuNztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG5cbiAgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4gIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gIH1cblxuICAucmVtb3ZlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIH1cblxuICAud2hpc2hsaXN0LWNvbG9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5zZWxlY3RlZC1jb2xvciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAucHN3cF9fYnV0dG9uLS1hcnJvdyB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIG9wemlvbmFsZTogbm9uIG5hc2NvbmRlcmUgbOKAmVVJIGRvcG8gaW5hdHRpdml0w6AgKi9cbiAgLnBzd3AtLXVpLWhpZGRlbiAucHN3cF9fYnV0dG9uLS1hcnJvdyB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wc3dwX19idXR0b24tLWFycm93IHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gIH1cblxuICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcHJldiB7XG4gICAgbGVmdDogMTJweDtcbiAgICB0b3A6IDUwJTtcbiAgfVxuXG4gIC5wc3dwX19idXR0b24tLWFycm93LS1uZXh0IHtcbiAgICByaWdodDogMTJweDtcbiAgICB0b3A6IDUwJTtcbiAgfVxuXG5cblxufVxuIiwiYm9keS5zdGF0aWMtcGFnZSB7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmd4LTQge1xuICAgICAgLS1icy1ndXR0ZXIteDogMHB4O1xuICAgIH1cbiAgfVxuXG4gIG1haW4ge1xuICBcbiAgICAuYm94U3RhdGljUGFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAxNXB4LCBtZDogMCkpO1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKG1ibDogJGhlYWRlci1oZWlnaHQtdG90YWwtbWJsLCBkc2s6ICRoZWFkZXItaGVpZ2h0LXRvdGFsKSwgJG1vYmlsZS1tZW51LWJyZWFrcG9pbnRzKTtcblxuICAgICAgaDEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAwIDIwcHgsIG1kOiAwIDMwcHggMzBweCAzMHB4KSk7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTZweCwgbWQ6MjBweCkpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICB9XG4gICAgICAucGFnZS1jb250ZW50IHtcbiAgICAgICAgLy8gYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkYmctbWVnYW1lbnUtbGlnaHQ7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAwLCBtZDogNjBweCkpO1xuICAgICAgICAvLyBAaW5jbHVkZSBycG1xKGJvcmRlci13aWR0aCwgKHhzOiAwLCBtZDogMXB4KSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAvKiAgICAmLmZhcSB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKHhzOiAwcHgsIG1kOiA2MHB4KSk7XG4gICAgICAgIH0qL1xuICAgICAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDE1cHgsIG1kOiAzMHB4KSk7XG4gICAgICAgIH1cbiAgICAgICAgPiBzZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDE1cHgsIG1kOiAzMHB4KSk7XG4gICAgICAgIH1cbiAgICAgICAgJi5wYWdlLWNvbnRlbnQtaGlnaGxpZ2h0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1icm93biAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIC5zdGF0aWMtcGFnZS10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gIFxuICAgICAgICBoMiB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDEwcHggMCAwIDAsIG1kOiAxMHB4IDAgMTBweCAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4LCBtZDoxOHB4KSk7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gIFxuICAgICAgICBoNCxcbiAgICAgICAgaDUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICAmLnRoYW5rcy10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gIFxuICAgICAgICAuc3RhdGljLXBhZ2UtdGV4dCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICBcbiAgICAgICAgICAuZmFxLXdyYXAge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gIFxuICAgICAgICAuc2hvcHMtbGlzdCB7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAoeHM6IGJsb2NrLCBsZzogZmxleCkpO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gIFxuICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNGVtO1xuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC43ZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3QtZm9ybS13cmFwcGVyIHtcblxuICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAwLCBtZDogMCkpO1xuXG4gICAgICAgICAgLmNvbnRhY3QtcGhvbmUtaWNvbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBjb250YWN0LXBob25lLXJpbmcgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAjQ29udGFjdEZvcm0ge1xuICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAxMHB4IDIwcHgsIG1kOiAxNXB4IDMwcHgpKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnN0b3JlLWxvY2F0b3ItcGFnZS1jb250ZW50IHtcbiAgICAgICAgICAuc3RvcmUtbG9jYXRvci13cmFwcGVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDY4MHB4O1xuXG4gICAgICAgICAgICAjc3RvcmVyb2NrZXQtd2lkZ2V0IHtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogNjIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gIFxuICAgICAgI3N0YXRpYy1wYWdlcy1jb2x1bW4tbmF2aWdhdG9yIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAzMHB4LCBtZDogMCkpO1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzaW5nKCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE0cHgpKTtcbiAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBcbiAgfVxuXG4gIGhlYWRlcltyb2xlPVwiYmFubmVyXCJdIHtcblxuICAvLyBAaW5jbHVkZSBhcHAtbWF4LXdpZHRoKCk7XG4gIHotaW5kZXg6IDEwMDtcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG5cbiAgICAmKyoge1xuICAgICAgLy8gcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0O1xuXG4gICAgICAvLyBAbWVkaWEgKG1heC13aWR0aDogYnJlYWtwb2ludC1tYXgoZHNrLCAkbW9iaWxlLW1lbnUtYnJlYWtwb2ludHMpKSB7XG4gICAgICAvLyAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodCArIDEwcHg7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG5cbiAgICAmLnBhZ2UtdGhhbmsteW91IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIC50aGFua3lvdSB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy10b3AsIChtYmw6ICRoZWFkZXItaGVpZ2h0LXRvdGFsLW1ibCwgZHNrOiAkaGVhZGVyLWhlaWdodC10b3RhbCksICRtb2JpbGUtbWVudS1icmVha3BvaW50cyk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHZoO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJveFRoYW5rWW91IHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmcsICh4czogMzBweCwgbWQ6IDUwcHgpKTtcbiAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAvLyBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAvLyBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgkc2hhZG93LWNvbG9yLCAwLjEpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLCAoeHM6IDE1cHgsIG1kOiAwKSk7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aGFuay15b3UtaWNvbiB7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBzdHJva2Utd2lkdGg6IC41cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY29udGFjdC1waG9uZS1yaW5nIHtcbiAgMCUsXG4gIDQ4JSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA4JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTJkZWcpIHRyYW5zbGF0ZVgoMXB4KTtcbiAgfVxuICAxNiUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMmRlZykgdHJhbnNsYXRlWCgtMXB4KTtcbiAgfVxuICAyNCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEwZGVnKSB0cmFuc2xhdGVYKDFweCk7XG4gIH1cbiAgMzIlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOGRlZykgdHJhbnNsYXRlWCgtMXB4KTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDZkZWcpIHRyYW5zbGF0ZVgoMXB4KTtcbiAgfVxuICA0NCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKSB0cmFuc2xhdGVYKC0xcHgpO1xuICB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGJvZHkuc3RhdGljLXBhZ2UgLmNvbnRhY3QtcGhvbmUtaWNvbiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG4iLCIkcHJvZHVjdC1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuJGJvZHktYmctbGlnaHQtZ3JheTogI2ZhZmFmYTtcblxuYm9keS5jYXJ0IHtcbiAgLnN3YWwyLWNvbnRhaW5lciB7XG4gICAgLnN3YWwtc2l6ZS14bGcge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gIH1cblxuICAudWktYXV0b2NvbXBsZXRlIHtcbiAgICB6LWluZGV4OiA5OTk5O1xuICB9XG5cbiAgLmNvbW1vbi1oZWFkaW5nIHtcbiAgICAuY29udGVudCB7XG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMjBweCkpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIH1cblxuICAgICAgLy8gLmxpbmVzIHtcbiAgICAgIC8vICAgaGVpZ2h0OiAxcHg7XG4gICAgICAvLyAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAkbGlnaHQtYnJvd247XG4gICAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgICAgLy8gICBmbGV4OiAxO1xuICAgICAgLy8gICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgLy8gfVxuICAgIH1cbiAgfVxuXG4gIC5idG4tZGlzYWJsZS1vbi1sb2FkaW5nLmxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IHdhaXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuYnRuLWRpc2FibGUtb24tbG9hZGluZy5sb2FkaW5nOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxLjJyZW07XG4gICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgbWFyZ2luOiAtMC42cmVtIDAgMCAtMC42cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCRwcmltYXJ5LCAwLjQpO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwcmltYXJ5O1xuICAgIGFuaW1hdGlvbjogY2FydC1idG4tc3BpbiAwLjhzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuXG4gIEBrZXlmcmFtZXMgY2FydC1idG4tc3BpbiB7XG4gICAgdG8ge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgJi5yaWdhLXNvcHJhICB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDQwcHgsIG1kOiAwKSk7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgsIG1kOiAyMHB4KSk7XG4gICAgfVxuICB9XG5cbn1cblxuQGtleWZyYW1lcyBzaGlwcGluZy1wcm9ncmVzcy1maWxsIHtcbiAgZnJvbSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICB0byB7XG4gICAgd2lkdGg6IHZhcigtLXByb2dyZXNzKTtcbiAgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAjYmFza2V0LXNoaXBwaW5nLXdhcm5pbmcge1xuICAgIC5zaGlwcGluZy1wcm9ncmVzc19fZmlsbCB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB3aWR0aDogdmFyKC0tcHJvZ3Jlc3MpO1xuICAgIH1cbiAgfVxufVxuXG5ib2R5LmNhcnQgbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gIC8qXG4gIENsZWFycGF5IC8gQWZ0ZXJwYXlcbiAgKi9cbiAgLmFkeWVuLWNoZWNrb3V0X19wYXltZW50LW1ldGhvZC0tYWZ0ZXJwYXl0b3VjaCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1haW4tbWFyZ2luIHtcbiAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sIGxpbmVhci1pbnRlcnBvbGF0aW9uKDcwcHgsIDIwMHB4LCB4cywgeHhsKSk7XG4gIH1cblxuICAuc3RlcC1tZW51LXJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkcHJpbWFyeTtcblxuICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBsZzogNDBweCkpO1xuXG4gICAgLnN0ZXAge1xuICAgICAgbWluLWhlaWdodDogNTBweDtcbiAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcblxuICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgIC8vIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgLy8gYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgLypib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzOyovXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Bhbi5jaXJjbGUge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9kdWN0LWJhY2tncm91bmQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShsaW5lLWhlaWdodCwgKHhzOiAyLCBtZDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0KSk7XG5cbiAgICAgICAgc3Bhbi5jaXJjbGUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW46bm90KC5jaXJjbGUpIHt9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyAuc3RlcFxuXG4gIH1cblxuICAvLyAuc3RlcC1tZW51LXJvd1xuXG4gIHNlY3Rpb24ucm93IHtcblxuICAgIC5wcmVsaW1pbmFyeS1oZWFkZXIge1xuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIC5wcmVsaW1pbmFyeS1jaG9pY2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLy8gQ29udGFpbmVyXG4gICAgICAuc2hpcHBpbmctb3B0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMXJlbTtcblxuICAgICAgICAvLyBOYXNjb25kbyBs4oCZaW5wdXQgbWEgbG8gbGFzY2lvIHNlbGV6aW9uYWJpbGUgdmlhIGxhYmVsXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0aWxlIGRlbGxlIGNhcmRcbiAgICAgICAgLnNoaXBwaW5nLWNhcmQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMTAwJSwgc206IDIwMHB4KSk7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAxcmVtIDEuNXJlbTtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycywgYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgLmx1Y2lkZSxcbiAgICAgICAgICAgIFtkYXRhLWx1Y2lkZV0ge1xuICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gSG92ZXIgZ2VuZXJpY28gcGVyIGZlZWRiYWNrXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFF1YW5kbyBpbCByYWRpbyDDqCBjaGVja2VkLCBjb2xvcmEgbGEgbGFiZWwgYWRpYWNlbnRlXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkKy5zaGlwcGluZy1jYXJkIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG5cbiAgICB9XG5cbiAgICAucHVkby1zaGlwcGluZy1kYXRhIHtcbiAgICAgIC5idG4tc2VhcmNoLXB1ZG8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICAgICAgfVxuXG4gICAgICAjR01hcCB7XG4gICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICB9XG5cbiAgICAgICNQdWRvSW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAyNXB4LCBzbTogMjVweCkpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogc29saWQgMnB4ICRwcmltYXJ5O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICAgICBoNSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgKiBDYXJ0IGFzaWRlXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgPmFzaWRlIHtcbiAgICAgIEBpbmNsdWRlIHJwbXEocG9zaXRpb24sICh4czogcmVsYXRpdmUsIGxnOiBzdGlja3kpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEodG9wLCAoeHM6IHVuc2V0LCBsZzogJGhlYWRlci1oZWlnaHQtdG90YWwgKzIwcHgpKTtcblxuICAgICAgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLCAoeHM6IDAgMTVweCwgbWQ6IDApKTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDMwcHgsIG1kOiAwKSk7XG5cbiAgICAgICAgPi5zaWRlQ2FydCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmcpLCAoeHM6IDIwcHgpKTtcbiAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSh0ZXh0LWFsaWduLCAobWQ6IGNlbnRlcikpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6MjBweCwgbWQ6MjRweCkpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJvZHVjdHMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6MjBweCwgbWQ6MjRweCkpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50b3RhbC1jYXJ0IHtcbiAgICAgICAgICAgIHNwYW46bGFzdC1jaGlsZCB7fVxuICAgICAgICAgIH1cblxuICAgICAgICAgICNiYXNrZXQtc2hpcHBpbmctd2FybmluZyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzcyB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDhweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNoaXBwaW5nLXByb2dyZXNzX19yb3cge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzc19fbGFiZWwge1xuICAgICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNoaXBwaW5nLXByb2dyZXNzX190cmFjayB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJyb3duO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzc19fZmlsbCB7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNoaXBwaW5nLXByb2dyZXNzX19waW4ge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogLTI2cHg7XG4gICAgICAgICAgICAgIGxlZnQ6IGNsYW1wKDE0cHgsIHZhcigtLXByb2dyZXNzKSwgY2FsYygxMDAlIC0gMTRweCkpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1icm93bjtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3Bpbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICAgIGJvcmRlci13aWR0aDogNXB4IDVweCAwIDVweDtcbiAgICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtYnJvd24gdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzcy5pcy1hbmltYXRlZCB7XG4gICAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzc19fZmlsbCB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBzaGlwcGluZy1wcm9ncmVzcy1maWxsIDEuMXMgZWFzZSBmb3J3YXJkcztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hpcHBpbmctcHJvZ3Jlc3NfX3RleHQge1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNoaXBwaW5nLXByb2dyZXNzX19zdWNjZXNzIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgZ2FwOiA2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaGlwcGluZy1wcm9ncmVzc19faWNvbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcm9kdWN0LWNhcnQtaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXRvcCwgcGFkZGluZy1ib3R0b20pLCAoeHM6IDEwcHgpKTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGxpZ2h0LWJyb3duO1xuXG4gICAgICAgICAgICAucHJvZHVjdC1pbWFnZS10aHVtYiB7XG4gICAgICAgICAgICAgIC8vbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuXG5cbiAgICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDEwcHgsIHNtOiAwKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlKSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctbGVmdCwgKHhzOiAyMHB4LCBtZDogNXB4LCBsZzogMjBweCkpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctcmlnaHQsICh4czogNXB4LCBtZDogNXB4KSk7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDU1JSwgbWQ6IDU1JSkpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG5cbiAgICAgICAgICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAwLCBtZDogMTBweCkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxM3B4KSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAyNSUsIG1kOiAyNSUpKTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zZXBhcmF0b3Ige1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmljZS1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge31cblxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hbW91bnQge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudG90YWwtY2FydCB7XG4gICAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudmFsdWUtY291cG9uIHtcbiAgICAgICAgICAgICAgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czoxNHB4LCBtZDoxNnB4KSk7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgJi5qcy1nby1mb3J3YXJkIHtcbiAgICAgICAgICAgICAgICAubHVjaWRlLFxuICAgICAgICAgICAgICAgIFtkYXRhLWx1Y2lkZV0ge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMjBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICAgIC5sdWNpZGUsXG4gICAgICAgICAgICAgICAgICBbZGF0YS1sdWNpZGVdIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5idG4tcGF5cGFsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvcGF5cGFsL3BheXBhbF9leHByZXNzX2J1dHRvbi5naWZcIik7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTlFOUU5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0U5RTlFOTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9wYXlwYWwvcGF5cGFsX2V4cHJlc3NfYnV0dG9uX2hvdmVyLmdpZlwiKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEOEQ4RDg7XG4gICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNEOEQ4RDg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM0cHg7XG4gICAgICAgICAgICBtYXJnaW46IDI2cHggYXV0byAwO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIC8vY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMHB4KSk7XG5cbiAgICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTM0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgPi5jb3Vwb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLCAoeHM6IDIwcHggMjBweCwgbWQ6IDIwcHgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyA+IGFzaWRlID4gLnJvd1xuICAgIH1cblxuICB9XG5cbiAgLy8gc2VjdGlvbi5yb3dcblxufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuKiBDYXJ0IHN0ZXAgMVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5LmNhcnQuc3RlcC0xIG1haW4ge1xuXG4gIC5wcm9kdWN0cy1yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgKiBDYXJ0IHRhYmxlIGNvbHVtbnMgd2lkdGhcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgICAucHJvZHVjdHMtY29sIHtcblxuICAgICAgLy8gdGFibGUgY29sdW1ucyB3aWR0aFxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1pbWFnZS10aHVtYiB7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogOTBweCwgc206IDIwMHB4LCBtZDogMTIwcHgsIGxnOiAxNDBweCkpO1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1pbmZvIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogY2FsYygxMDAlIC0gMTEwcHgpLCAzODg6IGNhbGMoMTAwJSAtIDE1MHB4KSwgc206IGNhbGMoMTAwJSAtIDIwMHB4KSwgbWQ6IGNhbGMoMTAwJSAtIDEyMHB4KSwgbGc6IGNhbGMoMTAwJSAtIDE0MHB4KSkpO1xuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlLCBtZDogMzglKSk7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2Uge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMTAwJSwgbWQ6IDIxJSkpO1xuICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAxMHB4LCBtZDogMCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDEwMCUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50b3RhbC1wcmljZSB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAyNCUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZW1vdmUge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEod2lkdGgsICh4czogMTAwJSwgbWQ6IDMwcHgpKTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKHRleHQtYWxpZ24sICh4czogY2VudGVyKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3RzQ2Fyb3VzZWwge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAvLyAucHJvZHVjdHMtY29sXG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAqIENhcnQgdGFibGUgaGVhZGVyIChkZXNrdG9wKVxuICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuICAgIC50YWJsZS1oZWFkZXIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBycG1xKHBhZGRpbmctbGVmdCwgKHhzOiAxMHB4LCBtZDogMCkpO1xuICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLWJvdHRvbSwgKHhzOiAyMHB4LCBtZDogMTBweCkpO1xuICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDAsIG1kOiAwKSk7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMjBweCwgbWQ6IDApKTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKChtZDogMTRweCkpO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LWltYWdlLXRodW1iIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1pbmZvIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAqIENhcnQgcHJvZHVjdCBpdGVtXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgYXJ0aWNsZS5wcm9kdWN0LWNhcnQtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nKSwgKHhzOiAxNXB4IDApKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKG1hcmdpbiksICh4czogMCAxNXB4LCBtZDogMCAwIDIwcHggMCkpO1xuICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSByZnNtcSgobWQ6IDE0cHgpKTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkbGlnaHQtYnJvd247XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtaW1hZ2UtdGh1bWIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgLy8gbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgIEBpbmNsdWRlIHJlbGF0aXZlKCk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDkxJTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMCwgc206IDApKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcSh3aWR0aCwgKHhzOiAxMDAlKSk7XG4gICAgICAgICAgLy9AaW5jbHVkZSBycG1xKG1hcmdpbi1sZWZ0LCAobGc6IDEwcHgpKTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAuOTVlbTtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG1pbi13aWR0aCwgKHhzOiAwLCBzbTogMTAwcHgsIG1kOiAwKSk7XG4gICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXJpZ2h0LCAobWQ6IDEwcHgsIGxnOiAyMHB4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKG1kOiAxNHB4KSk7XG5cblxuICAgICAgICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDAsIG1kOiAxMHB4KSk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgobWQ6IDEzcHgpKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJwbXEoZGlzcGxheSwgKHhzOiBub25lKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXRvcCwgcGFkZGluZy1ib3R0b20pLCAoeHM6IDE0cHgsIG1kOiAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShvdmVyZmxvdywgKHhzOiBoaWRkZW4sIG1kOiB2aXNpYmxlKSk7XG5cbiAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAobWQ6IG5vbmUpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDMxcHgsIG1kOiAzNnB4KSk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4sICh4czogMTBweCAwLCBtZDogMTBweCAwKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgLy8gQGluY2x1ZGUgcnBtcShoZWlnaHQsICh4czogMzJweCwgbWQ6IDM3cHgpKTtcblxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDI0cHgpKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBycG1xKHdpZHRoLCAoeHM6IDIwcHgsIG1kOiAzMHB4KSk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAmLmJ0bjpmb2N1cyxcbiAgICAgICAgICAgIC5idG46YWN0aXZlLFxuICAgICAgICAgICAgLmJ0bjpmb2N1czphY3RpdmUsXG4gICAgICAgICAgICAuYnRuOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubHVjaWRlLFxuICAgICAgICAgICAgW2RhdGEtbHVjaWRlXSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMi4ycHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYnRuOmRpc2FibGVkLFxuICAgICAgICAgIC5idG4uaXMtZGlzYWJsZWQge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLWxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3RhbC1wcmljZSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKHhzOiAxNHB4LCBtZDogMCkpO1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAycHgsIG1kOiAwKSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXJpZ2h0LCAobWQ6IDEwcHgpKTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgcnBtcShkaXNwbGF5LCAobWQ6IG5vbmUpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShib3R0b20sICh4czogMjJweCwgbWQ6IDMycHgpKTtcbiAgICAgICAgICByaWdodDogMTBweDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmljb24tY2xvc2Uge1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duO1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICAgICAgfVxuXG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLy8gLnByb2R1Y3QtaW5mb1xuXG4gICAgfVxuXG4gICAgLy8gYXJ0aWNsZS5wcm9kdWN0XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAqIGJhbm5lcmJhc2tldCBjb250YWluZXJcbiAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgICAuYmFubmVyQmFza2V0IHtcbiAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAyMHB4IDAsIG1kOiAzMHB4KSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgKiBDb3Vwb24gY29udGFpbmVyXG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgLmNvdXBvbiB7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMCkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShnYXAsICh4czogMCwgbWQ6IDApKTtcblxuICAgICAgICBpbnB1dC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICA+ZGl2IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXG4gICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGVcbiAgICAgICAgfVxuXG4gICAgICAgID5kaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZy1yaWdodCwgKHhzOiAwLCBtZDogMHB4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShwYWRkaW5nLXRvcCwgKHhzOiAwLCBtZDogMHB4KSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgobWQ6IDE0cHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgID5kaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDAsIG1kOiAwKSk7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4KSk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1icm93bjtcblxuICAgICAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlLWNvdXBvbiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAjdmVyaWZ5Q291cG9uQnV0dG9uIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saWdodDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG5cbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgKiBFbXB0eSBjYXJ0XG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgLmVtcHR5LWNhcnQge1xuICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMjVweDtcblxuICAgICAgaDQge1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC8vIC5wcm9kdWN0cy1yb3dcblxuICAuYWNjb3JkaW9uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgLmFjY29yZGlvbi1idXR0b246Zm9jdXMge1xuICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBib2R5I2NhcnQuc3RlcC0xIG1haW4ud3JhcFxuXG5cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIENhcnQgc3RlcCAyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkuY2FydC5zdGVwLTIgbWFpbiB7XG4gIC5hY2Nlc3NUYWJsZSB7XG4gICBAaW5jbHVkZSBycG1xKHBhZGRpbmctdG9wLCAoeHM6IDBweCwgc206IDIwcHgpKTtcbiAgfVxuXG4gIC5hY2NvdW50VGFibGUge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLm1haW4tbWFyZ2luIHtcbiAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sIGxpbmVhci1pbnRlcnBvbGF0aW9uKDcwcHgsIDIwMHB4LCB4cywgeHhsKSk7XG4gIH1cbn1cblxuXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuKiBDYXJ0IHN0ZXAgM1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5LmNhcnQuc3RlcC0zIG1haW4ge1xuICAuYnRuLXByaW1hcnkge1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTZweCkpO1xuICB9XG5cbiAgLnN0ZXAzdGFibGUge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG5cbiAgICAuc2hpcHBpbmctZGV0YWlscyB7XG5cbiAgICAgID5kaXYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDIwcHggMjBweDtcblxuICAgICAgfVxuXG4gICAgICAuc2hpcHBpbmctZGF0YS1pbnRybyB7XG4gICAgICAgIC5yaWdhLXNvcHJhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCxcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN0ZXAtNCB7XG4gICAgICAgICNiaWxsaW5nIHtcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAjbmV3U2hpcHBpbmdBZGRyZXNzRm9ybSAuaFBhcnQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cblxuICAjc2hpcHBpbmdSZXN1bWUge1xuICAgIC5zaGlwcGluZy1yZXN1bWUtd2FybiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRleHRyYWxpZ2h0Z3JleTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTZweCkpO1xuICAgIH1cblxuICAgIC5kLWZsZXgge1xuICAgICAgLm1vZGlmeS1ndWVzdC1hZGRyZXNzLWNvbnQge1xuICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1sZWZ0LCAoeHM6IDAsIHNtOiAyMHB4KSk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAyMHB4LCBzbTogMzBweCkpO1xuICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sICh4czogMTVweCwgc206IDApKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjc2hpcHBpbmdSZXN1bWUgLmhlYWRlci1tb2QtYWRkcmVzcyB7XG4gICAgaDMge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4KSk7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIH1cbiAgfVxuXG4gICNzaGlwcGluZ0FkZHJlc3NDb250aW51ZUJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNnB4KSk7XG4gIH1cblxuICAuZm9ybS1jb2wge1xuICAgIC8qQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICB9Ki9cblxuICAgIGZvcm0ge1xuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJpbGxpbmctY2hlY2tib3gsXG4gICAgLnByaXZhY3ktY2hlY2tib3gge1xuICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDIwcHgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAyMHB4LCBzbTogMCkpO1xuXG4gICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcml2YWN5LWNoZWNrYm94IHtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAzMHB4LCBtZDogNDBweCkpO1xuXG4gICAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5iaWxsaW5nLWhlYWRlciB7XG4gICAgICBAaW5jbHVkZSBycG1xKChtYXJnaW4tdG9wLCBtYXJnaW4tYm90dG9tKSwgKHhzOiAyMHB4KSk7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAvL0BpbmNsdWRlIHJwbXEodGV4dC1hbGlnbiwgKHhzOiBjZW50ZXIsIHNtOiBsZWZ0KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI3NoaXBwaW5nRGF0YUZvcm1QYXJ0IHtcbiAgICAgIC5idG4tcmV0dXJuIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnRuLXNhdmUge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI2NCb3gge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgLmhlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm94LXNoaXBwaW5nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNpbmcocXVhcnRPdXQpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAzMHB4KSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeTtcblxuICAgICAgICAgIC5zZWxlY3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAudGV4dC1zZWxlY3RlZCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dC1zZWxlY3Qge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkZGJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvJTNlJTNjL3N2ZyUzZVwiKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICRwcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZHVjdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaGlwcGluZy1pbmZvIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlbGVjdCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAyMnB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRwcmltYXJ5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAvKiBjb21lIG5lbCB0dW8gQ1NTICovXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50ZXh0LXNlbGVjdGVkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYS5lZGl0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGdhcDogOHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcblxuICAgICAgICAgIC5sdWNpZGUsXG4gICAgICAgICAgW2RhdGEtbHVjaWRlXSB7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMS44cHg7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAjY29udGFpbmVyVHlwZVVzZXIge1xuICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDIwcHgpKTtcbiAgICB9XG5cbiAgICAuc2VsZWN0LXBheW1lbnQtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMzBweCwgbWQ6IDQwcHgpKTtcblxuICAgICAgLmFjY29yZGlvbiB7XG4gICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgIC8vIGJvcmRlcjogc29saWQgMXB4ICRsaWdodC1icm93bjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxOHB4LCBtZDogMjJweCkpO1xuXG4gICAgICAgICAgICAuYnRuLWJsb2NrIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNHB4KSk7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMDtcbiAgICAgICAgICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAvLyBSZWNvbG9yYSBpY29uYSBQTkcgbmVyYSB0cmFzcGFyZW50ZSB2ZXJzbyBpbCBwcmltYXJ5LlxuICAgICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMjclKSBzZXBpYSgxOSUpIHNhdHVyYXRlKDEzODElKSBodWUtcm90YXRlKDMzOGRlZykgYnJpZ2h0bmVzcyg5MSUpIGNvbnRyYXN0KDg5JSk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTRweCkpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnBheW1lbnQtYWNjb3JkaW9uLWljb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjhweDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5wYXltZW50LWFjY29yZGlvbi1pY29uLW1pbnVzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5wYXltZW50LWFjY29yZGlvbi1pY29uLXBsdXMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgICAgICAgICAgLnBheW1lbnQtYWNjb3JkaW9uLWljb24tbWludXMge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucGF5bWVudC1hY2NvcmRpb24taWNvbi1wbHVzIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAmOmZvY3VzOmFjdGl2ZSxcbiAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHg7XG4gICAgICAgICAgICAvLyBib3JkZXItdG9wOiBzb2xpZCAxcHggJGxpZ2h0LWJyb3duO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vICY6aGFzKC5hY2NvcmRpb24tYnV0dG9uW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdKSB7XG4gICAgICAgICAgLy8gICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICAgICAgICAvLyAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkcHJpbWFyeTtcbiAgICAgICAgICAvLyAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG5cbiAgICAgIC5jdXN0b20tcmFkaW8ge1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCAoeHM6IDEwcHgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2Utb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG5cbiAgfVxuXG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIGJvZHkuY2FydCBtYWluIC5hY3Rpb25zIC5idG4uanMtZ28tZm9yd2FyZCB7XG4gICAgLmx1Y2lkZSxcbiAgICBbZGF0YS1sdWNpZGVdIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gYm9keSNjYXJ0LnN0ZXAtMyBtYWluLndyYXBcblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogQ2FydCB0aGFuayB5b3VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keS5jYXJ0LnRoYW5rLXlvdSBtYWluIHtcbiAgPi5jb250YWluZXItZmx1aWQge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGgzIHtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgfVxuXG4gIHAge1xuICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuXG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuI2RlbGl2ZXJ5QWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsImJvZHkuYWNjb3VudCBtYWluIHtcblxuICAubG9nb3V0IHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgsIG1kOiAxNHB4KSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZ2FwOiAxMHB4O1xuXG4gICAgLmxvZ291dC1pY29uIHtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG4gIH1cblxuICAuc3RlcC1tZW51IHsgLy8gI2FjY291bnRUYWJzLm5hdlxuICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBtZDogNDBweCkpO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6bm90KC5mYWtlLW1lbnUpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvcGx1cy5zdmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzaW5nKHF1YXJ0T3V0KTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1vYmlsZS1tZW51LW9wZW4ge1xuXG4gICAgICAgIC5zdGVwIHtcbiAgICAgICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubW9iaWxlLW1lbnUtb3Blbi1pbiB7XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zdGVwIHtcbiAgICAgICAgICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLW91dCAyMDBtcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RlcCB7XG4gICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgJjpub3Qoc3Bhbikge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAgICAgICAvL2JvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAvL2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICBvcmRlcjogMDtcblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXIgMjAwbXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvZHktYmctbGlnaHQtZ3JheSwgNiUpO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGRhcmtlbigkYm9keS1iZy1saWdodC1ncmF5LCA2JSk7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IGRhcmtlbigkYm9keS1iZy1saWdodC1ncmF5LCA2JSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGgyLFxuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICBAaW5jbHVkZSBycG1xKGxpbmUtaGVpZ2h0LCAoeHM6IDIsIG1kOiAkaGVhZGluZ3MtbGluZS1oZWlnaHQpKTtcbiAgICAgIH1cblxuICAgIH0gLy8gLnN0ZXBcblxuICB9IC8vIC5zdGVwLW1lbnUtcm93XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgKiBFbXB0eSBsaXN0XG4gICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gIC5lbXB0eS1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuXG4gICAgaDQge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4KSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAqIFByb2ZpbGVcbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICNhY2NvdW50VGFiQ29udGVudHMge1xuICAgICNhY2NvdW50VGFicy5hY2NvcmRpb24ge1xuICAgICAgLS1icy1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtLWJzLWFjY29yZGlvbi1idG4taWNvbjogbm9uZTtcbiAgICAgIC0tYnMtYWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogbm9uZTtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBtZDogNDBweCkpO1xuXG4gICAgICAuc3RlcC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAxMnB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctdG9wLCBwYWRkaW5nLWJvdHRvbSksICh4czogMTZweCwgbWQ6IDE4cHgpKTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy1sZWZ0LCBwYWRkaW5nLXJpZ2h0KSwgKHhzOiAxNnB4LCBtZDogMjJweCkpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIC5zdGVwLXRvZ2dsZS1wbHVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnN0ZXAtdG9nZ2xlLW1pbnVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN0ZXAtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICAgICAgfVxuXG4gICAgICAuc3RlcC1sYWJlbC1pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxN3B4LCBtZDogMThweCkpO1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHdpZHRoOiAxZW07XG4gICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDEuOHB4O1xuICAgICAgfVxuXG4gICAgICAuc3RlcC10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogMTZweDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE4cHgsIG1kOiAyMHB4KSk7XG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYnJvd247XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN0ZXAtdG9nZ2xlLW1pbnVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXRvcCwgcGFkZGluZy1ib3R0b20pLCAoeHM6IDE2cHgsIG1kOiAyMnB4KSk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctbGVmdCwgcGFkZGluZy1yaWdodCksICh4czogMTZweCwgbWQ6IDIycHgpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjYm94VXNlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4KSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBtZDogNjBweCkpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuXG4gICAgICAubGlzdC1vcmRlci1yZXR1cm4ge1xuICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgsIG1kOiAxMnB4KSk7XG4gICAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICB9XG5cbiAgICAgIC5kYXRhLXJvdyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgIC5taWRkbGUtYmxvY2sge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucGVyc29uYWwtZGF0YS1yb3cge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zaGlwcGluZy1kYXRhLXJvdyB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmluZm9Vc2VyLFxuICAgIC5pbmZvU3BlZCxcbiAgICAuYnRuLXN1YiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGZvcm0uY29udGFpbmVyLWRhdGEge1xuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICB9XG5cbiAgICAgIC5idG4tc3ViIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICB9XG4gICAgICAuaW5mb1VzZXIge1xuICAgICAgICBoMzpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG5cbiAgfSAvLyNhY2NvdW50VGFiQ29udGVudHNcblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAqIE9yZGVyIGhpc3RvcnlcbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICNvcmRlcnNUYWJDb250ZW50IHtcblxuICAgIGgzIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cblxuICAgIC5vcmRlci1yb3cge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjZWQ0ZGE7XG5cbiAgICAgICY6bm90KC5maXJzdCkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1oZWFkLWNvbCB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcblxuICAgICAgLmNvZGUge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgID4gLnJvdyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy10b3AsIHBhZGRpbmctYm90dG9tKSwgKHhzOiAxMHB4KSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9kdWN0LWJhY2tncm91bmQtY29sb3I7XG5cbiAgICAgICAgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDEwcHgsIG1kOiAwKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRyYWNraW5nLXVybCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItcHJvZHVjdC1jb2wge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4KSk7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgPiBkaXYge1xuICAgICAgICAvL21heC13aWR0aDogMzQwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXR1cm4ge1xuICAgICAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTJweCkpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXR1cm4tb2sge1xuICAgICAgICAgIGNvbG9yOiAkd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXR1cm4tYWN0aW9uIHtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICAgICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IC8vICNvcmRlcnNUYWJDb250ZW50XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICogUmV0dXJuc1xuICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgI3JldHVyblRhYkNvbnRlbnQge1xuXG4gICAgaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgLnJldHVybi1yb3cge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjZWQ0ZGE7XG4gICAgICAmOm5vdCguZmlyc3QpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmV0dXJuLWhlYWQtY29sIHtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCkpO1xuXG4gICAgICAuY29kZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cblxuICAgICAgPiAucm93IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBAaW5jbHVkZSBycG1xKChwYWRkaW5nLXRvcCwgcGFkZGluZy1ib3R0b20pLCAoeHM6IDEwcHgpKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2R1Y3QtYmFja2dyb3VuZC1jb2xvcjtcblxuICAgICAgICA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi10b3AsICh4czogMTBweCwgbWQ6IDApKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnJldHVybi1wcm9kdWN0LWNvbCB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICA+IGRpdiB7XG4gICAgICAgIC8vbWF4LXdpZHRoOiAzNDBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9IC8vICNyZXR1cm5UYWJDb250ZW50XG5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgKiBXaXNoIGxpc3RcbiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICN3aXNoTGlzdFRhYkNvbnRlbnQge1xuXG4gICAgaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBtZDogMHB4KSk7XG4gICAgfVxuXG4gICAgLndpc2gtcm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgYXJ0aWNsZS5wcm9kdWN0IHtcbiAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLWJvdHRvbSwgKHhzOiAzMHB4LCBzbTo1MHB4LCBtZDogMzBweCwgbGc6MzBweCwgeGw6IDQwcHgpKTtcblxuICAgICAgLnByb2R1Y3QtbGluayB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1pbWFnZTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLmFjdGlvbnMge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcblxuICAgICAgLmFkZC10by1jYXJ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzNnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5yZW1vdmUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtM3B4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH0gLy8gI3dpc2hMaXN0VGFiQ29udGVudFxuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICogTmV3c2xldHRlclxuICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgI25ld3NsZXR0ZXJUYWJDb250ZW50IHtcblxuICAgIGgzIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgsIG1kOiAxNnB4KSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5yZW1vdmUtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgsIG1kOiAxNHB4KSk7XG4gICAgfVxuXG4gICAgLnJlbW92ZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cblxuICB9IC8vICNuZXdzbGV0dGVyVGFiQ29udGVudFxuXG59XG5cblxuYm9keS5hY2NvdW50Lm9yZGVyLWRldGFpbHMgbWFpbiB7XG5cbiAgLnN0ZXAtbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnN0ZXAge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgKiBTaW5nbGUgb3JkZXIgZGV0YWlsc1xuICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgI29yZGVyVGFiQ29udGVudCB7XG5cbiAgICBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4LCBtZDogMTZweCkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG5cbiAgICAub3JkZXItcm93IHtcbiAgICAgICY6bm90KC5maXJzdCkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1oZWFkLWNvbCB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcblxuICAgICAgLmNvZGUge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgID4gLnJvdyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy10b3AsIHBhZGRpbmctYm90dG9tKSwgKHhzOiAxMHB4KSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9kdWN0LWJhY2tncm91bmQtY29sb3I7XG5cbiAgICAgICAgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tdG9wLCAoeHM6IDEwcHgsIG1kOiAwKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRyYWNraW5nLXVybCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItcHJvZHVjdC1jb2wge1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxNHB4KSk7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgPiBkaXYge1xuICAgICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcblxuICAgICAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmV0dXJuIHtcbiAgICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAucmV0dXJuLWFjdGlvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9IC8vICNvcmRlclRhYkNvbnRlbnRcblxufVxuXG4ucmV0dXJuLXN0YXRlcy1tb2RhbCB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubmV3LXJldHVybi1yZXF1ZXN0LW1vZGFsIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC5zd2FsMi10aXRsZSB7XG4gICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxOHB4LCBzbTogMjBweCwpKTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gIHVsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgJj4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgdGgsIHRkIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAkbWVkLWJyb3duO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIH1cbiAgICB0aCB7XG4gICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICB9XG4gICAgLmZvcm0tY29udHJvbCxcbiAgICAuZm9ybS1zZWxlY3QsXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJyYW5nZVwiXSk6bm90KFt0eXBlPVwiY29sb3JcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pOm5vdChbdHlwZT1cImhpZGRlblwiXSksXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuLnJlcy1tZXNzYWdlIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICBjb2xvcjogI2Q5NTM0ZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICYuZmFpbGVkIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIC5tZXNzYWdlLWlmLWZhaWwgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5tZXNzYWdlLWlmLXRocmVzaG9sZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgfVxuXG4gICYudGhyZXNob2xkIHtcbiAgICAubWVzc2FnZS1pZi1mYWlsIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tZXNzYWdlLWlmLXRocmVzaG9sZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIH1cbn1cblxuLnJldHVybi1rbywgLnJldHVybi1vayB7XG4gIGJ1dHRvbixcbiAgYSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwYWRkaW5nOiAxMHB4IDMycHg7XG4gICAgZm9udC1zaXplOiAuNzVyZW0gIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6ICA3MDA7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG5cbiAgICAvKlxuICAgICYuYnRuLWJyb3duIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWJyb3duICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgICovXG4gIH1cbn1cblxuLypcbi5yZXR1cm4ta28ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cbiovXG4iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogVXNlciBzdGVwIDJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keS5jYXJ0LnN0ZXAtMiBtYWluIHtcbiAgXG4gIC5jb21tb24taGVhZGluZyB7XG4gICAgLmNvbnRlbnQge1xuICAgICAgaDMge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ib3gtY29sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmlubmVyLWJveCB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIEBpbmNsdWRlIHJwbXEobWFyZ2luLCAoeHM6IDEwcHggMCwgbWQ6IDEwcHggMCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBAaW5jbHVkZSBycG1xKG1hcmdpbi1ib3R0b20sICh4czogbWFwLWdldCgkZ3JpZC1ndXR0ZXItaGFsZi13aWR0aC1yZXNwb25zaXZlLCB4cyksIHNtOiBtYXAtZ2V0KCRncmlkLWd1dHRlci1oYWxmLXdpZHRoLXJlc3BvbnNpdmUsIHNtKSwgbWQ6IDApKTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE0cHgpKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIHJwbXEoKHBhZGRpbmctbGVmdCwgcGFkZGluZy1yaWdodCksICRncmlkLWd1dHRlci1oYWxmLXdpZHRoLXJlc3BvbnNpdmUpO1xuICAgICAgQGluY2x1ZGUgcnBtcSgocGFkZGluZy10b3AsIHBhZGRpbmctYm90dG9tKSwgKHhzOiBtYXAtZ2V0KCRncmlkLWd1dHRlci13aWR0aC1yZXNwb25zaXZlLCB4cyksIHNtOiBtYXAtZ2V0KCRncmlkLWd1dHRlci1oYWxmLXdpZHRoLXJlc3BvbnNpdmUsIHNtKSwgbWQ6IG1hcC1nZXQoJGdyaWQtZ3V0dGVyLWhhbGYtd2lkdGgtcmVzcG9uc2l2ZSwgbWQpLCBsZzogbWFwLWdldCgkZ3JpZC1ndXR0ZXItaGFsZi13aWR0aC1yZXNwb25zaXZlLCBsZyksIHhsOiBtYXAtZ2V0KCRncmlkLWd1dHRlci1oYWxmLXdpZHRoLXJlc3BvbnNpdmUsIHhsKSkpO1xuICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICAvLyBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAuc2lnbi1pbi1kZXRhaWxzIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEsXG4gICAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXIsIGRlY2xhcmF0aW9uLWJsb2NrLXNpbmdsZS1saW5lLW1heC1kZWNsYXJhdGlvbnMgKi9cbiAgICAgICAgKjo6LW1zLWJhY2tkcm9wLCBwIHsgbWF4LXdpZHRoOiAxMDAlOyB9IC8qIElFMTEgZml4ICovXG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBmb3JtIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgcDpsYXN0LW9mLXR5cGUsXG4gICAgLmZvcm0tZ3JvdXA6bGFzdC1vZi10eXBlLFxuICAgIC5mb3JtLWdyb3VwLXBhc3N3b3JkIHtcbiAgICAgIC8vIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgJi5ib3gtbG9naW4ge1xuXG4gICAgICAuaW5uZXItbG9naW4ge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAuY3RhLWdyb3VwIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5sb3N0LXBhc3N3b3JkIHtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5sb3N0LXBhc3N3b3JkLWxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAxMnB4KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ib3gtcmV0dXJucyxcbiAgICAmLmJveC1zaWduLWluIHtcbiAgICAgIC5idG4ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogRm9yZ290IHBhc3N3b3JkXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkudXNlci51c2VyLWZvcmdvdC1wYXNzd29yZCBtYWluIHtcblxuICBoMyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIGZvcm0ge1xuICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4qIFVzZXIgc2lnbi1pblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5LnVzZXIudXNlci1zaWduLWluIG1haW4sXG5ib2R5LmNhcnQuc3RlcC0yIG1haW4ge1xuICAuYWNjb3VudEZvcm0ge1xuICAgIEBpbmNsdWRlIHJwbXEocGFkZGluZywgKHhzOiAwIDEwcHgsIG1kOiAwKSk7XG4gICAgc2VsZWN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG4gIH1cbiAgZm9ybSB7XG5cbiAgICBoNCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG5cbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrLXByaXZhY3kge1xuICAgICAgbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDEycHgpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG5cblxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiogVXNlciBsb2dpblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5LnVzZXIudXNlci1sb2dpbiBtYWluIHtcbiAgLmNvbW1vbi1oZWFkaW5nIHtcbiAgICAuY29udGVudCB7XG4gICAgICBoMyB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJveC1yZXR1cm5zLFxuICAuYm94LXNpZ24taW4sXG4gIC5ib3gtbG9naW4ge1xuICAgIC8vIEBpbmNsdWRlIHJwbXEobWFyZ2luLXRvcCwgKHhzOiAyMHB4LCBtZDogMHB4KSk7XG4gICAgLmlubmVyLWJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgaDQge1xuICAgICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDE2cHgsIG1kOiAxOHB4KSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgQGluY2x1ZGUgcnBtcShtYXJnaW4sICh4czogMTBweCAwLCBtZDogMTBweCAwKSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvc3QtcGFzc3dvcmQge1xuICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5ib3gtbG9naW4ge1xuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDEycHgpO1xuICAgIH1cbiAgfVxuXG4gIC5hY2Nlc3NUYWJsZSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbiAgLmFjY291bnRUYWJsZSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG4gIC5tYWluLW1hcmdpbiB7XG4gICAgQGluY2x1ZGUgcnBtcShtYXJnaW4tYm90dG9tLCBsaW5lYXItaW50ZXJwb2xhdGlvbig1MHB4LCAyMDBweCwgeHMsIHh4bCkpO1xuICB9XG59XG4iLCJib2R5LnN0YXRpYy1wYWdlLmFib3V0LWVkaXRvcmlhbCB7XG4gIG1haW4uYWJvdXQtcGFnZSB7XG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LXRvdGFsLW1ibDtcbiAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC10b3RhbDtcbiAgICB9XG4gIH1cblxuICAuYWJvdXQtZnVsbCxcbiAgLmFib3V0LXNwbGl0X19tZWRpYSB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5hYm91dC1mdWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMzIwcHg7XG5cbiAgICA+IGltZyB7XG4gICAgICBoZWlnaHQ6IGNsYW1wKDMwMHB4LCA4OHZ3LCA1MjBweCk7XG4gICAgfVxuICB9XG5cbiAgLmFib3V0LWZ1bGwtLWhlcm8gPiBpbWcge1xuICAgIGhlaWdodDogY2xhbXAoNDIwcHgsIDEzMHZ3LCA3MjBweCk7XG4gICAgZmlsdGVyOiBzYXR1cmF0ZSguMik7XG4gIH1cblxuICAuYWJvdXQtZnVsbC0tbmF0dXJlID4gaW1nIHtcbiAgICBoZWlnaHQ6IGNsYW1wKDMwMHB4LCA5MHZ3LCA1NjBweCk7XG4gIH1cblxuICAuYWJvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMCkgMzYlLCByZ2JhKDAsIDAsIDAsIC40MikgMTAwJSk7XG5cbiAgICBoMSxcbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjA0O1xuICAgICAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMjhweCwgbWQ6IDQ0cHgpKTtcbiAgICB9XG4gIH1cblxuICAuYWJvdXQtY29weS1ibG9jayB7XG4gICAgcGFkZGluZzogNDZweCAyNHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcblxuICAgIGgyIHtcbiAgICAgIG1hcmdpbjogMCAwIDEycHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNGVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMDg7XG4gICAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICAgICAgQGluY2x1ZGUgcmZzbXEoKHhzOiAyMnB4LCBtZDogMzJweCkpO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICAgIEBpbmNsdWRlIHJmc21xKCh4czogMTRweCwgbWQ6IDE2cHgpKTtcbiAgICB9XG4gIH1cblxuICAuYWJvdXQtY29weS1ibG9jay0tYWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxuXG4gIC5hYm91dC1jb3B5LWJsb2NrLS1jb250aW51YXRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLmFib3V0LWNvcHktYmxvY2stLWNvbXBhY3Qge1xuICAgIHBhZGRpbmctdG9wOiAzOHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzOHB4O1xuICB9XG5cbiAgLmFib3V0LWtpY2tlciB7XG4gICAgbWFyZ2luOiAwIDAgOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4yZW07XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC5hYm91dC1mdWxsLS1mcmFtZWQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWluLWhlaWdodDogMzYwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5hYm91dC1mcmFtZWQtbWVkaWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5hYm91dC1tZWRpYS1iYXNlIHtcbiAgICAgIGhlaWdodDogY2xhbXAoMzIwcHgsIDg4dncsIDU2MHB4KTtcbiAgICB9XG5cbiAgICAuYWJvdXQtbWVkaWEtaW5zZXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogNTYlO1xuICAgICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgYm9yZGVyOiA4cHggc29saWQgcmdiYSgkd2hpdGUsIC44KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMTRweCAyOHB4IHJnYmEoJHNoYWRvdy1jb2xvciwgLjI2KTtcbiAgICB9XG4gIH1cblxuICAuYWJvdXQtdmlkZW8tcGxhY2Vob2xkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAxODBweDtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjEyZW07XG4gICAgICBAaW5jbHVkZSByZnNtcSgoeHM6IDI4cHgsIG1kOiAzNHB4KSk7XG4gICAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIH1cbiAgfVxuXG4gIC5hYm91dC12aWRlby1wbGFjZWhvbGRlci0tZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRiNDE0MDtcbiAgfVxuXG4gIC5hYm91dC12aWRlby1wbGFjZWhvbGRlci0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTc2NzQ7XG4gIH1cblxuICAuYWJvdXQtc3BsaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmFib3V0LXNwbGl0X19tZWRpYSB7XG4gICAgbWluLWhlaWdodDogMzAwcHg7XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiBjbGFtcCgyOTBweCwgODJ2dywgNTAwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC5hYm91dC1lbmQtYmFuZCB7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGY0ZjM2O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmFib3V0LWNvcHktYmxvY2sge1xuICAgICAgbWF4LXdpZHRoOiA4ODBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogNjRweCA1NnB4O1xuICAgIH1cblxuICAgIC5hYm91dC1jb3B5LWJsb2NrLS1jb21wYWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA1MnB4O1xuICAgIH1cblxuICAgIC5hYm91dC1mdWxsID4gaW1nIHtcbiAgICAgIGhlaWdodDogbWluKDY0dmgsIDc2MHB4KTtcbiAgICB9XG5cbiAgICAuYWJvdXQtZnVsbC0taGVybyA+IGltZyB7XG4gICAgICBoZWlnaHQ6IG1pbig2MHZoLCA1MDBweCk7XG4gICAgfVxuXG4gICAgLmFib3V0LWZ1bGwtLW5hdHVyZSA+IGltZyB7XG4gICAgICBoZWlnaHQ6IG1pbig3MHZoLCA3NjBweCk7XG4gICAgfVxuXG4gICAgLmFib3V0LW92ZXJsYXkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2cHg7XG4gICAgfVxuXG4gICAgLmFib3V0LXZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICAgIH1cblxuICAgIC5hYm91dC1mcmFtZWQtbWVkaWEge1xuICAgICAgLmFib3V0LW1lZGlhLWJhc2Uge1xuICAgICAgICBoZWlnaHQ6IG1pbig3MHZoLCA3NjBweCk7XG4gICAgICB9XG5cbiAgICAgIC5hYm91dC1tZWRpYS1pbnNldCB7XG4gICAgICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFib3V0LXNwbGl0IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuMWZyIC45ZnI7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICAuYWJvdXQtc3BsaXQtLXJldmVyc2Uge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOWZyIDEuMWZyO1xuXG4gICAgICAuYWJvdXQtc3BsaXRfX21lZGlhIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG5cbiAgICAgIC5hYm91dC1jb3B5LWJsb2NrIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFib3V0LXNwbGl0X19tZWRpYSB7XG4gICAgICBtaW4taGVpZ2h0OiA1NjBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hYm91dC1lbmQtYmFuZCB7XG4gICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/