@charset "UTF-8";
@import "../../../node_modules/locomotive-scroll/dist/locomotive-scroll.min.css";
.bg-vgs-light {
  background: #E5E5E5;
}

@font-face {
  font-family: "neue-montreal";
  src: url("../fonts/neue-montreal-light.woff2") format("woff2"), url("../fonts/neue-montreal-light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "neue-montreal";
  src: url("../fonts/neue-montreal-regular.woff2") format("woff2"), url("../fonts/neue-montreal-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "neue-montreal";
  src: url("../fonts/neue-montreal-bold.woff2") format("woff2"), url("../fonts/neue-montreal-bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "bodoni-moda";
  src: url("../fonts/bodoni-moda-regular-fixed.eot");
  src: url("../fonts/bodoni-moda-regular-fixed.eot?#iefix") format("embedded-opentype"), url("../fonts/bodoni-moda-regular-fixed.woff2") format("woff2"), url("../fonts/bodoni-moda-regular-fixed.woff") format("woff"), url("../fonts/bodoni-moda-regular-fixed.ttf") format("truetype"), url("../fonts/bodoni-moda-regular-fixed.svg#bodoni-moda-regular-fixed") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/*!
 * Bootstrap  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: #FFFFFF;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #052c65;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cfe2ff;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #9ec5fe;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --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: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #FFFFFF;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #0a58ca;
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #FFFFFF;
  --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: #6ea8fe;
  --bs-secondary-text-emphasis: #a7acb1;
  --bs-success-text-emphasis: #75b798;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #ffda6a;
  --bs-danger-text-emphasis: #ea868f;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #031633;
  --bs-secondary-bg-subtle: #161719;
  --bs-success-bg-subtle: #051b11;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #332701;
  --bs-danger-bg-subtle: #2c0b0e;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #084298;
  --bs-secondary-border-subtle: #41464b;
  --bs-success-border-subtle: #0f5132;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #997404;
  --bs-danger-border-subtle: #842029;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #6ea8fe;
  --bs-link-hover-color: #8bb9fe;
  --bs-link-color-rgb: 110, 168, 254;
  --bs-link-hover-color-rgb: 139, 185, 254;
  --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: 1rem 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

dt {
  font-weight: 700;
}

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

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.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;
}

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

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

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

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

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

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

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

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 0.875em;
  text-transform: uppercase;
}

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

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

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: var(--bs-body-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.container-3xl, .container-2xl, .container-xl, .container-lg, .container-md, .container-sm, .container {
  max-width: 1320px;
}

:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-2xl: 1400px;
  --bs-breakpoint-3xl: 1600px;
}

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-2xl {
    flex: 1 0 0%;
  }
  .row-cols-2xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-2xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-2xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-2xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-2xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-2xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-2xl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-2xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-2xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-2xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-2xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-2xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-2xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-2xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-2xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-2xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-2xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-2xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-2xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-2xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-2xl-0 {
    margin-left: 0;
  }
  .offset-2xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-2xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-2xl-3 {
    margin-left: 25%;
  }
  .offset-2xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-2xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-2xl-6 {
    margin-left: 50%;
  }
  .offset-2xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-2xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-2xl-9 {
    margin-left: 75%;
  }
  .offset-2xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-2xl-11 {
    margin-left: 91.66666667%;
  }
  .g-2xl-0,
  .gx-2xl-0 {
    --bs-gutter-x: 0;
  }
  .g-2xl-0,
  .gy-2xl-0 {
    --bs-gutter-y: 0;
  }
  .g-2xl-1,
  .gx-2xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-2xl-1,
  .gy-2xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-2xl-2,
  .gx-2xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-2xl-2,
  .gy-2xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-2xl-3,
  .gx-2xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-2xl-3,
  .gy-2xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-2xl-4,
  .gx-2xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-2xl-4,
  .gy-2xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-2xl-5,
  .gx-2xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-2xl-5,
  .gy-2xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1600px) {
  .col-3xl {
    flex: 1 0 0%;
  }
  .row-cols-3xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-3xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-3xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-3xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-3xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-3xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-3xl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-3xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-3xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-3xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-3xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-3xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-3xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-3xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-3xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-3xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-3xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-3xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-3xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-3xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-3xl-0 {
    margin-left: 0;
  }
  .offset-3xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-3xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-3xl-3 {
    margin-left: 25%;
  }
  .offset-3xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-3xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-3xl-6 {
    margin-left: 50%;
  }
  .offset-3xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-3xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-3xl-9 {
    margin-left: 75%;
  }
  .offset-3xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-3xl-11 {
    margin-left: 91.66666667%;
  }
  .g-3xl-0,
  .gx-3xl-0 {
    --bs-gutter-x: 0;
  }
  .g-3xl-0,
  .gy-3xl-0 {
    --bs-gutter-y: 0;
  }
  .g-3xl-1,
  .gx-3xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-3xl-1,
  .gy-3xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-3xl-2,
  .gx-3xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-3xl-2,
  .gy-3xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-3xl-3,
  .gx-3xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-3xl-3,
  .gy-3xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-3xl-4,
  .gx-3xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-3xl-4,
  .gy-3xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-3xl-5,
  .gx-3xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-3xl-5,
  .gy-3xl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-emphasis-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-emphasis-color);
  --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
  --bs-table-active-color: var(--bs-emphasis-color);
  --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
  --bs-table-hover-color: var(--bs-emphasis-color);
  --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}

.table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

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

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

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

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

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

.table-striped-columns > :not(caption) > tr > :nth-child(even) {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

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

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

.table-primary {
  --bs-table-color: #000000;
  --bs-table-bg: #cfe2ff;
  --bs-table-border-color: #a6b5cc;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #bfd1ec;
  --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: #e2e3e5;
  --bs-table-border-color: #b5b6b7;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #d1d2d4;
  --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: #fff3cd;
  --bs-table-border-color: #ccc2a4;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: #000000;
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: #000000;
  --bs-table-hover-bg: #ece1be;
  --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: #FFFFFF;
  --bs-table-bg: #212529;
  --bs-table-border-color: #4d5154;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #FFFFFF;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #FFFFFF;
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: #FFFFFF;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

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

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

.col-form-label-lg {
  padding-top: calc(0.5rem + var(--bs-border-width));
  padding-bottom: calc(0.5rem + var(--bs-border-width));
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + var(--bs-border-width));
  padding-bottom: calc(0.25rem + var(--bs-border-width));
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--bs-secondary-bg);
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: var(--bs-body-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--bs-border-width) 0;
}
.form-control-plaintext:focus {
  outline: 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}

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

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

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

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

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

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

[data-bs-theme=dark] .form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

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

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

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  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: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23FFFFFF'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

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

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

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

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #FFFFFF, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #FFFFFF, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: 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 0.75rem;
  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 0.75rem;
}
.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.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.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: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
}

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

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

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

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: calc(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: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-success);
  border-radius: var(--bs-border-radius);
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: var(--bs-form-valid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated .form-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

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

.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated .form-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: var(--bs-form-invalid-color);
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: var(--bs-form-invalid-color);
}

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

.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  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: #FFFFFF;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #0b5ed7;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #FFFFFF;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
}

.btn-secondary {
  --bs-btn-color: #FFFFFF;
  --bs-btn-bg: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #5c636a;
  --bs-btn-hover-border-color: #565e64;
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: #565e64;
  --bs-btn-active-border-color: #51585e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #FFFFFF;
  --bs-btn-disabled-bg: #6c757d;
  --bs-btn-disabled-border-color: #6c757d;
}

.btn-success {
  --bs-btn-color: #FFFFFF;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #FFFFFF;
  --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: #FFFFFF;
  --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: #000000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #ffca2c;
  --bs-btn-hover-border-color: #ffc720;
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #ffcd39;
  --bs-btn-active-border-color: #ffc720;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #FFFFFF;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #bb2d3b;
  --bs-btn-hover-border-color: #b02a37;
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #FFFFFF;
  --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: #FFFFFF;
  --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: #FFFFFF;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #424649;
  --bs-btn-hover-border-color: #373b3e;
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #FFFFFF;
  --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: #FFFFFF;
  --bs-btn-disabled-bg: #212529;
  --bs-btn-disabled-border-color: #212529;
}

.btn-outline-primary {
  --bs-btn-color: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #0d6efd;
  --bs-btn-hover-border-color: #0d6efd;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: #0d6efd;
  --bs-btn-active-border-color: #0d6efd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0d6efd;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0d6efd;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #6c757d;
  --bs-btn-hover-border-color: #6c757d;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: #6c757d;
  --bs-btn-active-border-color: #6c757d;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #6c757d;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #FFFFFF;
  --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: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #ffc107;
  --bs-btn-hover-border-color: #ffc107;
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #ffc107;
  --bs-btn-active-border-color: #ffc107;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc107;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc107;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #FFFFFF;
  --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: #FFFFFF;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #212529;
  --bs-gradient: none;
}

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --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, .btn-group-sm > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

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

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

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
  position: relative;
}

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

.dropdown-menu {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 1rem;
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-bg: var(--bs-body-bg);
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: var(--bs-border-radius);
  --bs-dropdown-border-width: var(--bs-border-width);
  --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: var(--bs-box-shadow);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #FFFFFF;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

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

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

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-2xl-start {
    --bs-position: start;
  }
  .dropdown-menu-2xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-2xl-end {
    --bs-position: end;
  }
  .dropdown-menu-2xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1600px) {
  .dropdown-menu-3xl-start {
    --bs-position: start;
  }
  .dropdown-menu-3xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-3xl-end {
    --bs-position: end;
  }
  .dropdown-menu-3xl-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: #FFFFFF;
  --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: #FFFFFF;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group {
  border-radius: var(--bs-border-radius);
}
.btn-group > :not(.btn-check:first-child) + .btn,
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(var(--bs-border-width) * -1);
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn.dropdown-toggle-split:first-child,
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle-split::before {
  margin-right: 0;
}

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

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

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: calc(var(--bs-border-width) * -1);
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.nav-link.disabled, .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #FFFFFF;
  --bs-nav-pills-link-active-bg: #0d6efd;
}
.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}
.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}
.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

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

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

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

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

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
  --bs-navbar-toggler-border-radius: var(--bs-border-radius);
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
  --bs-nav-link-padding-x: 0;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-navbar-color);
  --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
  --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
  color: var(--bs-navbar-active-color);
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-navbar-color);
}
.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
  color: var(--bs-navbar-active-color);
}

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

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

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

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

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-2xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-2xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-2xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-2xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-2xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-2xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-2xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-2xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-2xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-2xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1600px) {
  .navbar-expand-3xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-3xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-3xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-3xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-3xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-3xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-3xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-3xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-3xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-3xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas {
  position: static;
  z-index: auto;
  flex-grow: 1;
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  transition: none;
}
.navbar-expand .offcanvas .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #FFFFFF;
  --bs-navbar-brand-color: #FFFFFF;
  --bs-navbar-brand-hover-color: #FFFFFF;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

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

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius);
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
  color: var(--bs-card-color);
}

.card-title {
  margin-bottom: var(--bs-card-title-spacer-y);
  color: var(--bs-card-title-color);
}

.card-subtitle {
  margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
  margin-bottom: 0;
  color: var(--bs-card-subtitle-color);
}

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

.card-link + .card-link {
  margin-left: var(--bs-card-spacer-x);
}

.card-header {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  margin-bottom: 0;
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-footer:last-child {
  border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
  border-bottom: 0;
}
.card-header-tabs .nav-link.active {
  background-color: var(--bs-card-bg);
  border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--bs-card-img-overlay-padding);
  border-radius: var(--bs-card-inner-border-radius);
}

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

.card-img,
.card-img-top {
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

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

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

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

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush > .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}
.accordion-flush > .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush > .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush > .accordion-item > .accordion-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='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --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: var(--bs-secondary-color);
  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);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: var(--bs-border-color);
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: var(--bs-tertiary-bg);
  --bs-pagination-hover-border-color: var(--bs-border-color);
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: var(--bs-secondary-bg);
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-pagination-active-color: #FFFFFF;
  --bs-pagination-active-bg: #0d6efd;
  --bs-pagination-active-border-color: #0d6efd;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: var(--bs-border-color);
  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);
}

.badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.35em;
  --bs-badge-font-size: 0.75em;
  --bs-badge-font-weight: 700;
  --bs-badge-color: #FFFFFF;
  --bs-badge-border-radius: var(--bs-border-radius);
  display: inline-block;
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  line-height: 1;
  color: var(--bs-badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--bs-badge-border-radius);
}
.badge:empty {
  display: none;
}

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

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --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: 700;
  color: var(--bs-alert-link-color);
}

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

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

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #FFFFFF;
  --bs-progress-bar-bg: #0d6efd;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

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

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #FFFFFF;
  --bs-list-group-active-bg: #0d6efd;
  --bs-list-group-active-border-color: #0d6efd;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

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

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: var(--bs-list-group-action-hover-color);
  text-decoration: none;
  background-color: var(--bs-list-group-action-hover-bg);
}
.list-group-item-action:active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-2xl {
    flex-direction: row;
  }
  .list-group-horizontal-2xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-2xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-2xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-2xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-2xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1600px) {
  .list-group-horizontal-3xl {
    flex-direction: row;
  }
  .list-group-horizontal-3xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-3xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-3xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-3xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-3xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 var(--bs-list-group-border-width);
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  --bs-list-group-color: var(--bs-primary-text-emphasis);
  --bs-list-group-bg: var(--bs-primary-bg-subtle);
  --bs-list-group-border-color: var(--bs-primary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
  --bs-list-group-active-color: var(--bs-primary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
  --bs-list-group-color: var(--bs-secondary-text-emphasis);
  --bs-list-group-bg: var(--bs-secondary-bg-subtle);
  --bs-list-group-border-color: var(--bs-secondary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
  --bs-list-group-color: var(--bs-success-text-emphasis);
  --bs-list-group-bg: var(--bs-success-bg-subtle);
  --bs-list-group-border-color: var(--bs-success-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
  --bs-list-group-active-color: var(--bs-success-bg-subtle);
  --bs-list-group-active-bg: var(--bs-success-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
  --bs-list-group-color: var(--bs-info-text-emphasis);
  --bs-list-group-bg: var(--bs-info-bg-subtle);
  --bs-list-group-border-color: var(--bs-info-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
  --bs-list-group-active-color: var(--bs-info-bg-subtle);
  --bs-list-group-active-bg: var(--bs-info-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
  --bs-list-group-color: var(--bs-warning-text-emphasis);
  --bs-list-group-bg: var(--bs-warning-bg-subtle);
  --bs-list-group-border-color: var(--bs-warning-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
  --bs-list-group-active-color: var(--bs-warning-bg-subtle);
  --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
  --bs-list-group-color: var(--bs-danger-text-emphasis);
  --bs-list-group-bg: var(--bs-danger-bg-subtle);
  --bs-list-group-border-color: var(--bs-danger-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
  --bs-list-group-active-color: var(--bs-danger-bg-subtle);
  --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
  --bs-list-group-color: var(--bs-light-text-emphasis);
  --bs-list-group-bg: var(--bs-light-bg-subtle);
  --bs-list-group-border-color: var(--bs-light-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
  --bs-list-group-active-color: var(--bs-light-bg-subtle);
  --bs-list-group-active-bg: var(--bs-light-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
  --bs-list-group-color: var(--bs-dark-text-emphasis);
  --bs-list-group-bg: var(--bs-dark-bg-subtle);
  --bs-list-group-border-color: var(--bs-dark-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
  --bs-list-group-active-color: var(--bs-dark-bg-subtle);
  --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

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

.btn-close-white {
  filter: var(--bs-btn-close-white-filter);
}

[data-bs-theme=dark] .btn-close {
  filter: var(--bs-btn-close-white-filter);
}

.toast {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-color: ;
  --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-border-width: var(--bs-border-width);
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: var(--bs-border-radius);
  --bs-toast-box-shadow: var(--bs-box-shadow);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-border-color: var(--bs-border-color-translucent);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
  display: flex;
  align-items: center;
  padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
  color: var(--bs-toast-header-color);
  background-color: var(--bs-toast-header-bg);
  background-clip: padding-box;
  border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
  border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
  border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}
.toast-header .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
}

.toast-body {
  padding: var(--bs-toast-padding-x);
  word-wrap: break-word;
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --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: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none;
}
.modal.fade .modal-dialog {
  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: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-2xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-2xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-2xl-down .modal-header,
  .modal-fullscreen-2xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-2xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1599.98px) {
  .modal-fullscreen-3xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-3xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-3xl-down .modal-header,
  .modal-fullscreen-3xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-3xl-down .modal-body {
    overflow-y: auto;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-top-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-right-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-bottom-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-left-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.tooltip-inner {
  max-width: var(--bs-tooltip-max-width);
  padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
  color: var(--bs-tooltip-color);
  text-align: center;
  background-color: var(--bs-tooltip-bg);
  border-radius: var(--bs-tooltip-border-radius);
}

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
  --bs-popover-box-shadow: var(--bs-box-shadow);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 1rem;
  --bs-popover-header-color: inherit;
  --bs-popover-header-bg: var(--bs-secondary-bg);
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: var(--bs-body-color);
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: var(--bs-popover-border-width);
  border-top-color: var(--bs-popover-bg);
}

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: var(--bs-popover-border-width);
  border-bottom-color: var(--bs-popover-bg);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: var(--bs-popover-arrow-width);
  margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
  content: "";
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
  color: var(--bs-popover-body-color);
}

.carousel {
  position: relative;
}

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

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

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

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

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

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
  .carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #FFFFFF;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #FFFFFF;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

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

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

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")*/;
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFFFFF'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")*/;
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #FFFFFF;
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 1.25rem;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: #FFFFFF;
  text-align: center;
}

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

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

.spinner-grow,
.spinner-border {
  display: inline-block;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

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

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0;
}

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s;
  }
}
.offcanvas, .offcanvas-3xl, .offcanvas-2xl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --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.5;
}

@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: 1199.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: 1199.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1199.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: 1200px) {
  .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: 1399.98px) {
  .offcanvas-2xl {
    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-2xl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-2xl.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-2xl.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-2xl.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-2xl.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-2xl.showing, .offcanvas-2xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-2xl.showing, .offcanvas-2xl.hiding, .offcanvas-2xl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-2xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-2xl .offcanvas-header {
    display: none;
  }
  .offcanvas-2xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1599.98px) {
  .offcanvas-3xl {
    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-3xl {
    transition: none;
  }
}
@media (max-width: 1599.98px) {
  .offcanvas-3xl.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-3xl.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-3xl.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-3xl.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-3xl.showing, .offcanvas-3xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-3xl.showing, .offcanvas-3xl.hiding, .offcanvas-3xl.show {
    visibility: visible;
  }
}
@media (min-width: 1600px) {
  .offcanvas-3xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-3xl .offcanvas-header {
    display: none;
  }
  .offcanvas-3xl .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;
}

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

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

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

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

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

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

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

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

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

.text-bg-success {
  color: #FFFFFF !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: #000000 !important;
  background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #FFFFFF !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: #FFFFFF !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(10, 88, 202, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(10, 88, 202, 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(86, 94, 100, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(86, 94, 100, 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(255, 205, 57, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(255, 205, 57, 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: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-2xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-2xl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1600px) {
  .sticky-3xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-3xl-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: 0.25rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.row-gap-5 {
  row-gap: 3rem !important;
}

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

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

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

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

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

.column-gap-5 {
  column-gap: 3rem !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !important;
}

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

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

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.text-primary-emphasis {
  color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
  color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
  color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
  color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
  color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
  color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
  color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
  color: var(--bs-dark-text-emphasis) !important;
}

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

.link-opacity-10-hover:hover {
  --bs-link-opacity: 0.1;
}

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

.link-opacity-25-hover:hover {
  --bs-link-opacity: 0.25;
}

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

.link-opacity-50-hover:hover {
  --bs-link-opacity: 0.5;
}

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

.link-opacity-75-hover:hover {
  --bs-link-opacity: 0.75;
}

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

.link-opacity-100-hover:hover {
  --bs-link-opacity: 1;
}

.link-offset-1 {
  text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
  text-underline-offset: 0.125em !important;
}

.link-offset-2 {
  text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
  text-underline-offset: 0.25em !important;
}

.link-offset-3 {
  text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
  text-underline-offset: 0.375em !important;
}

.link-underline-primary {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

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

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

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

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

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

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

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

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

.link-underline-opacity-0 {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
  --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
  --bs-link-underline-opacity: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.bg-primary-subtle {
  background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
  background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
  background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
  background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
  background-color: var(--bs-dark-bg-subtle) !important;
}

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

.user-select-all {
  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: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-sm-3 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-sm-5 {
    row-gap: 3rem !important;
  }
  .column-gap-sm-0 {
    column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-sm-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-sm-3 {
    column-gap: 1rem !important;
  }
  .column-gap-sm-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-sm-5 {
    column-gap: 3rem !important;
  }
  .text-sm-start {
    text-align: left !important;
  }
  .text-sm-end {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }
  .float-md-end {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
  .object-fit-md-contain {
    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: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-md-3 {
    row-gap: 1rem !important;
  }
  .row-gap-md-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-md-5 {
    row-gap: 3rem !important;
  }
  .column-gap-md-0 {
    column-gap: 0 !important;
  }
  .column-gap-md-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-md-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-md-3 {
    column-gap: 1rem !important;
  }
  .column-gap-md-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-md-5 {
    column-gap: 3rem !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }
  .float-lg-end {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
  .object-fit-lg-contain {
    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: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-lg-3 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-lg-5 {
    row-gap: 3rem !important;
  }
  .column-gap-lg-0 {
    column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-lg-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-lg-3 {
    column-gap: 1rem !important;
  }
  .column-gap-lg-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-lg-5 {
    column-gap: 3rem !important;
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .object-fit-xl-contain {
    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: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-xl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-xl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-xl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-xl-5 {
    column-gap: 3rem !important;
  }
  .text-xl-start {
    text-align: left !important;
  }
  .text-xl-end {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-2xl-start {
    float: left !important;
  }
  .float-2xl-end {
    float: right !important;
  }
  .float-2xl-none {
    float: none !important;
  }
  .object-fit-2xl-contain {
    object-fit: contain !important;
  }
  .object-fit-2xl-cover {
    object-fit: cover !important;
  }
  .object-fit-2xl-fill {
    object-fit: fill !important;
  }
  .object-fit-2xl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-2xl-none {
    object-fit: none !important;
  }
  .d-2xl-inline {
    display: inline !important;
  }
  .d-2xl-inline-block {
    display: inline-block !important;
  }
  .d-2xl-block {
    display: block !important;
  }
  .d-2xl-grid {
    display: grid !important;
  }
  .d-2xl-inline-grid {
    display: inline-grid !important;
  }
  .d-2xl-table {
    display: table !important;
  }
  .d-2xl-table-row {
    display: table-row !important;
  }
  .d-2xl-table-cell {
    display: table-cell !important;
  }
  .d-2xl-flex {
    display: flex !important;
  }
  .d-2xl-inline-flex {
    display: inline-flex !important;
  }
  .d-2xl-none {
    display: none !important;
  }
  .flex-2xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-2xl-row {
    flex-direction: row !important;
  }
  .flex-2xl-column {
    flex-direction: column !important;
  }
  .flex-2xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-2xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-2xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-2xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-2xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-2xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-2xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-2xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-2xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-2xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-2xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-2xl-center {
    justify-content: center !important;
  }
  .justify-content-2xl-between {
    justify-content: space-between !important;
  }
  .justify-content-2xl-around {
    justify-content: space-around !important;
  }
  .justify-content-2xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-2xl-start {
    align-items: flex-start !important;
  }
  .align-items-2xl-end {
    align-items: flex-end !important;
  }
  .align-items-2xl-center {
    align-items: center !important;
  }
  .align-items-2xl-baseline {
    align-items: baseline !important;
  }
  .align-items-2xl-stretch {
    align-items: stretch !important;
  }
  .align-content-2xl-start {
    align-content: flex-start !important;
  }
  .align-content-2xl-end {
    align-content: flex-end !important;
  }
  .align-content-2xl-center {
    align-content: center !important;
  }
  .align-content-2xl-between {
    align-content: space-between !important;
  }
  .align-content-2xl-around {
    align-content: space-around !important;
  }
  .align-content-2xl-stretch {
    align-content: stretch !important;
  }
  .align-self-2xl-auto {
    align-self: auto !important;
  }
  .align-self-2xl-start {
    align-self: flex-start !important;
  }
  .align-self-2xl-end {
    align-self: flex-end !important;
  }
  .align-self-2xl-center {
    align-self: center !important;
  }
  .align-self-2xl-baseline {
    align-self: baseline !important;
  }
  .align-self-2xl-stretch {
    align-self: stretch !important;
  }
  .order-2xl-first {
    order: -1 !important;
  }
  .order-2xl-0 {
    order: 0 !important;
  }
  .order-2xl-1 {
    order: 1 !important;
  }
  .order-2xl-2 {
    order: 2 !important;
  }
  .order-2xl-3 {
    order: 3 !important;
  }
  .order-2xl-4 {
    order: 4 !important;
  }
  .order-2xl-5 {
    order: 5 !important;
  }
  .order-2xl-last {
    order: 6 !important;
  }
  .m-2xl-0 {
    margin: 0 !important;
  }
  .m-2xl-1 {
    margin: 0.25rem !important;
  }
  .m-2xl-2 {
    margin: 0.5rem !important;
  }
  .m-2xl-3 {
    margin: 1rem !important;
  }
  .m-2xl-4 {
    margin: 1.5rem !important;
  }
  .m-2xl-5 {
    margin: 3rem !important;
  }
  .m-2xl-auto {
    margin: auto !important;
  }
  .mx-2xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-2xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-2xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-2xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-2xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-2xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-2xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-2xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-2xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-2xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-2xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-2xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-2xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-2xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-2xl-0 {
    margin-top: 0 !important;
  }
  .mt-2xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-2xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-2xl-3 {
    margin-top: 1rem !important;
  }
  .mt-2xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-2xl-5 {
    margin-top: 3rem !important;
  }
  .mt-2xl-auto {
    margin-top: auto !important;
  }
  .me-2xl-0 {
    margin-right: 0 !important;
  }
  .me-2xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-2xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-2xl-3 {
    margin-right: 1rem !important;
  }
  .me-2xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-2xl-5 {
    margin-right: 3rem !important;
  }
  .me-2xl-auto {
    margin-right: auto !important;
  }
  .mb-2xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-2xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-2xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-2xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-2xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-2xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-2xl-auto {
    margin-bottom: auto !important;
  }
  .ms-2xl-0 {
    margin-left: 0 !important;
  }
  .ms-2xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-2xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-2xl-3 {
    margin-left: 1rem !important;
  }
  .ms-2xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-2xl-5 {
    margin-left: 3rem !important;
  }
  .ms-2xl-auto {
    margin-left: auto !important;
  }
  .p-2xl-0 {
    padding: 0 !important;
  }
  .p-2xl-1 {
    padding: 0.25rem !important;
  }
  .p-2xl-2 {
    padding: 0.5rem !important;
  }
  .p-2xl-3 {
    padding: 1rem !important;
  }
  .p-2xl-4 {
    padding: 1.5rem !important;
  }
  .p-2xl-5 {
    padding: 3rem !important;
  }
  .px-2xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-2xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-2xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-2xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-2xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-2xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-2xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-2xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-2xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-2xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-2xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-2xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-2xl-0 {
    padding-top: 0 !important;
  }
  .pt-2xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-2xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-2xl-3 {
    padding-top: 1rem !important;
  }
  .pt-2xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-2xl-5 {
    padding-top: 3rem !important;
  }
  .pe-2xl-0 {
    padding-right: 0 !important;
  }
  .pe-2xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-2xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-2xl-3 {
    padding-right: 1rem !important;
  }
  .pe-2xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-2xl-5 {
    padding-right: 3rem !important;
  }
  .pb-2xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-2xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-2xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-2xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-2xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-2xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-2xl-0 {
    padding-left: 0 !important;
  }
  .ps-2xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-2xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-2xl-3 {
    padding-left: 1rem !important;
  }
  .ps-2xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-2xl-5 {
    padding-left: 3rem !important;
  }
  .gap-2xl-0 {
    gap: 0 !important;
  }
  .gap-2xl-1 {
    gap: 0.25rem !important;
  }
  .gap-2xl-2 {
    gap: 0.5rem !important;
  }
  .gap-2xl-3 {
    gap: 1rem !important;
  }
  .gap-2xl-4 {
    gap: 1.5rem !important;
  }
  .gap-2xl-5 {
    gap: 3rem !important;
  }
  .row-gap-2xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-2xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-2xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-2xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-2xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-2xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-2xl-0 {
    column-gap: 0 !important;
  }
  .column-gap-2xl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-2xl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-2xl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-2xl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-2xl-5 {
    column-gap: 3rem !important;
  }
  .text-2xl-start {
    text-align: left !important;
  }
  .text-2xl-end {
    text-align: right !important;
  }
  .text-2xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1600px) {
  .float-3xl-start {
    float: left !important;
  }
  .float-3xl-end {
    float: right !important;
  }
  .float-3xl-none {
    float: none !important;
  }
  .object-fit-3xl-contain {
    object-fit: contain !important;
  }
  .object-fit-3xl-cover {
    object-fit: cover !important;
  }
  .object-fit-3xl-fill {
    object-fit: fill !important;
  }
  .object-fit-3xl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-3xl-none {
    object-fit: none !important;
  }
  .d-3xl-inline {
    display: inline !important;
  }
  .d-3xl-inline-block {
    display: inline-block !important;
  }
  .d-3xl-block {
    display: block !important;
  }
  .d-3xl-grid {
    display: grid !important;
  }
  .d-3xl-inline-grid {
    display: inline-grid !important;
  }
  .d-3xl-table {
    display: table !important;
  }
  .d-3xl-table-row {
    display: table-row !important;
  }
  .d-3xl-table-cell {
    display: table-cell !important;
  }
  .d-3xl-flex {
    display: flex !important;
  }
  .d-3xl-inline-flex {
    display: inline-flex !important;
  }
  .d-3xl-none {
    display: none !important;
  }
  .flex-3xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-3xl-row {
    flex-direction: row !important;
  }
  .flex-3xl-column {
    flex-direction: column !important;
  }
  .flex-3xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-3xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-3xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-3xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-3xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-3xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-3xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-3xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-3xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-3xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-3xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-3xl-center {
    justify-content: center !important;
  }
  .justify-content-3xl-between {
    justify-content: space-between !important;
  }
  .justify-content-3xl-around {
    justify-content: space-around !important;
  }
  .justify-content-3xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-3xl-start {
    align-items: flex-start !important;
  }
  .align-items-3xl-end {
    align-items: flex-end !important;
  }
  .align-items-3xl-center {
    align-items: center !important;
  }
  .align-items-3xl-baseline {
    align-items: baseline !important;
  }
  .align-items-3xl-stretch {
    align-items: stretch !important;
  }
  .align-content-3xl-start {
    align-content: flex-start !important;
  }
  .align-content-3xl-end {
    align-content: flex-end !important;
  }
  .align-content-3xl-center {
    align-content: center !important;
  }
  .align-content-3xl-between {
    align-content: space-between !important;
  }
  .align-content-3xl-around {
    align-content: space-around !important;
  }
  .align-content-3xl-stretch {
    align-content: stretch !important;
  }
  .align-self-3xl-auto {
    align-self: auto !important;
  }
  .align-self-3xl-start {
    align-self: flex-start !important;
  }
  .align-self-3xl-end {
    align-self: flex-end !important;
  }
  .align-self-3xl-center {
    align-self: center !important;
  }
  .align-self-3xl-baseline {
    align-self: baseline !important;
  }
  .align-self-3xl-stretch {
    align-self: stretch !important;
  }
  .order-3xl-first {
    order: -1 !important;
  }
  .order-3xl-0 {
    order: 0 !important;
  }
  .order-3xl-1 {
    order: 1 !important;
  }
  .order-3xl-2 {
    order: 2 !important;
  }
  .order-3xl-3 {
    order: 3 !important;
  }
  .order-3xl-4 {
    order: 4 !important;
  }
  .order-3xl-5 {
    order: 5 !important;
  }
  .order-3xl-last {
    order: 6 !important;
  }
  .m-3xl-0 {
    margin: 0 !important;
  }
  .m-3xl-1 {
    margin: 0.25rem !important;
  }
  .m-3xl-2 {
    margin: 0.5rem !important;
  }
  .m-3xl-3 {
    margin: 1rem !important;
  }
  .m-3xl-4 {
    margin: 1.5rem !important;
  }
  .m-3xl-5 {
    margin: 3rem !important;
  }
  .m-3xl-auto {
    margin: auto !important;
  }
  .mx-3xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-3xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-3xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-3xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-3xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-3xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-3xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-3xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-3xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-3xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-3xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-3xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-3xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-3xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-3xl-0 {
    margin-top: 0 !important;
  }
  .mt-3xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-3xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-3xl-3 {
    margin-top: 1rem !important;
  }
  .mt-3xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-3xl-5 {
    margin-top: 3rem !important;
  }
  .mt-3xl-auto {
    margin-top: auto !important;
  }
  .me-3xl-0 {
    margin-right: 0 !important;
  }
  .me-3xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-3xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-3xl-3 {
    margin-right: 1rem !important;
  }
  .me-3xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-3xl-5 {
    margin-right: 3rem !important;
  }
  .me-3xl-auto {
    margin-right: auto !important;
  }
  .mb-3xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-3xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-3xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-3xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-3xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-3xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-3xl-auto {
    margin-bottom: auto !important;
  }
  .ms-3xl-0 {
    margin-left: 0 !important;
  }
  .ms-3xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-3xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-3xl-3 {
    margin-left: 1rem !important;
  }
  .ms-3xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-3xl-5 {
    margin-left: 3rem !important;
  }
  .ms-3xl-auto {
    margin-left: auto !important;
  }
  .p-3xl-0 {
    padding: 0 !important;
  }
  .p-3xl-1 {
    padding: 0.25rem !important;
  }
  .p-3xl-2 {
    padding: 0.5rem !important;
  }
  .p-3xl-3 {
    padding: 1rem !important;
  }
  .p-3xl-4 {
    padding: 1.5rem !important;
  }
  .p-3xl-5 {
    padding: 3rem !important;
  }
  .px-3xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-3xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-3xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-3xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-3xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-3xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-3xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-3xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-3xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-3xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-3xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-3xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-3xl-0 {
    padding-top: 0 !important;
  }
  .pt-3xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-3xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-3xl-3 {
    padding-top: 1rem !important;
  }
  .pt-3xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-3xl-5 {
    padding-top: 3rem !important;
  }
  .pe-3xl-0 {
    padding-right: 0 !important;
  }
  .pe-3xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-3xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-3xl-3 {
    padding-right: 1rem !important;
  }
  .pe-3xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-3xl-5 {
    padding-right: 3rem !important;
  }
  .pb-3xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-3xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-3xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-3xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-3xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-3xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-3xl-0 {
    padding-left: 0 !important;
  }
  .ps-3xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-3xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-3xl-3 {
    padding-left: 1rem !important;
  }
  .ps-3xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-3xl-5 {
    padding-left: 3rem !important;
  }
  .gap-3xl-0 {
    gap: 0 !important;
  }
  .gap-3xl-1 {
    gap: 0.25rem !important;
  }
  .gap-3xl-2 {
    gap: 0.5rem !important;
  }
  .gap-3xl-3 {
    gap: 1rem !important;
  }
  .gap-3xl-4 {
    gap: 1.5rem !important;
  }
  .gap-3xl-5 {
    gap: 3rem !important;
  }
  .row-gap-3xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-3xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-3xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-3xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-3xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-3xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-3xl-0 {
    column-gap: 0 !important;
  }
  .column-gap-3xl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-3xl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-3xl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-3xl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-3xl-5 {
    column-gap: 3rem !important;
  }
  .text-3xl-start {
    text-align: left !important;
  }
  .text-3xl-end {
    text-align: right !important;
  }
  .text-3xl-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;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.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 {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

html, body, div, span, applet, object, iframe,
h1,
.h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small,
.small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, .mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

html {
  margin: 0 !important;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

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

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

.pbvh-1 {
  padding-bottom: 1vh !important;
}

.ptvh-1 {
  padding-top: 1vh !important;
}

.mbvh-1 {
  padding-bottom: 1vh !important;
}

.mtvh-1 {
  padding-top: 1vh !important;
}

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

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

.pbvh-2 {
  padding-bottom: 2vh !important;
}

.ptvh-2 {
  padding-top: 2vh !important;
}

.mbvh-2 {
  padding-bottom: 2vh !important;
}

.mtvh-2 {
  padding-top: 2vh !important;
}

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

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

.pbvh-3 {
  padding-bottom: 3vh !important;
}

.ptvh-3 {
  padding-top: 3vh !important;
}

.mbvh-3 {
  padding-bottom: 3vh !important;
}

.mtvh-3 {
  padding-top: 3vh !important;
}

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

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

.pbvh-4 {
  padding-bottom: 4vh !important;
}

.ptvh-4 {
  padding-top: 4vh !important;
}

.mbvh-4 {
  padding-bottom: 4vh !important;
}

.mtvh-4 {
  padding-top: 4vh !important;
}

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

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

.pbvh-5 {
  padding-bottom: 5vh !important;
}

.ptvh-5 {
  padding-top: 5vh !important;
}

.mbvh-5 {
  padding-bottom: 5vh !important;
}

.mtvh-5 {
  padding-top: 5vh !important;
}

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

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

.pbvh-6 {
  padding-bottom: 6vh !important;
}

.ptvh-6 {
  padding-top: 6vh !important;
}

.mbvh-6 {
  padding-bottom: 6vh !important;
}

.mtvh-6 {
  padding-top: 6vh !important;
}

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

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

.pbvh-7 {
  padding-bottom: 7vh !important;
}

.ptvh-7 {
  padding-top: 7vh !important;
}

.mbvh-7 {
  padding-bottom: 7vh !important;
}

.mtvh-7 {
  padding-top: 7vh !important;
}

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

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

.pbvh-8 {
  padding-bottom: 8vh !important;
}

.ptvh-8 {
  padding-top: 8vh !important;
}

.mbvh-8 {
  padding-bottom: 8vh !important;
}

.mtvh-8 {
  padding-top: 8vh !important;
}

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

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

.pbvh-9 {
  padding-bottom: 9vh !important;
}

.ptvh-9 {
  padding-top: 9vh !important;
}

.mbvh-9 {
  padding-bottom: 9vh !important;
}

.mtvh-9 {
  padding-top: 9vh !important;
}

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

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

.pbvh-10 {
  padding-bottom: 10vh !important;
}

.ptvh-10 {
  padding-top: 10vh !important;
}

.mbvh-10 {
  padding-bottom: 10vh !important;
}

.mtvh-10 {
  padding-top: 10vh !important;
}

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

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

.pbvh-11 {
  padding-bottom: 11vh !important;
}

.ptvh-11 {
  padding-top: 11vh !important;
}

.mbvh-11 {
  padding-bottom: 11vh !important;
}

.mtvh-11 {
  padding-top: 11vh !important;
}

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

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

.pbvh-12 {
  padding-bottom: 12vh !important;
}

.ptvh-12 {
  padding-top: 12vh !important;
}

.mbvh-12 {
  padding-bottom: 12vh !important;
}

.mtvh-12 {
  padding-top: 12vh !important;
}

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

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

.pbvh-13 {
  padding-bottom: 13vh !important;
}

.ptvh-13 {
  padding-top: 13vh !important;
}

.mbvh-13 {
  padding-bottom: 13vh !important;
}

.mtvh-13 {
  padding-top: 13vh !important;
}

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

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

.pbvh-14 {
  padding-bottom: 14vh !important;
}

.ptvh-14 {
  padding-top: 14vh !important;
}

.mbvh-14 {
  padding-bottom: 14vh !important;
}

.mtvh-14 {
  padding-top: 14vh !important;
}

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

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

.pbvh-15 {
  padding-bottom: 15vh !important;
}

.ptvh-15 {
  padding-top: 15vh !important;
}

.mbvh-15 {
  padding-bottom: 15vh !important;
}

.mtvh-15 {
  padding-top: 15vh !important;
}

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

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

.pbvh-16 {
  padding-bottom: 16vh !important;
}

.ptvh-16 {
  padding-top: 16vh !important;
}

.mbvh-16 {
  padding-bottom: 16vh !important;
}

.mtvh-16 {
  padding-top: 16vh !important;
}

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

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

.pbvh-17 {
  padding-bottom: 17vh !important;
}

.ptvh-17 {
  padding-top: 17vh !important;
}

.mbvh-17 {
  padding-bottom: 17vh !important;
}

.mtvh-17 {
  padding-top: 17vh !important;
}

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

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

.pbvh-18 {
  padding-bottom: 18vh !important;
}

.ptvh-18 {
  padding-top: 18vh !important;
}

.mbvh-18 {
  padding-bottom: 18vh !important;
}

.mtvh-18 {
  padding-top: 18vh !important;
}

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

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

.pbvh-19 {
  padding-bottom: 19vh !important;
}

.ptvh-19 {
  padding-top: 19vh !important;
}

.mbvh-19 {
  padding-bottom: 19vh !important;
}

.mtvh-19 {
  padding-top: 19vh !important;
}

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

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

.pbvh-20 {
  padding-bottom: 20vh !important;
}

.ptvh-20 {
  padding-top: 20vh !important;
}

.mbvh-20 {
  padding-bottom: 20vh !important;
}

.mtvh-20 {
  padding-top: 20vh !important;
}

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

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

.pbvh-21 {
  padding-bottom: 21vh !important;
}

.ptvh-21 {
  padding-top: 21vh !important;
}

.mbvh-21 {
  padding-bottom: 21vh !important;
}

.mtvh-21 {
  padding-top: 21vh !important;
}

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

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

.pbvh-22 {
  padding-bottom: 22vh !important;
}

.ptvh-22 {
  padding-top: 22vh !important;
}

.mbvh-22 {
  padding-bottom: 22vh !important;
}

.mtvh-22 {
  padding-top: 22vh !important;
}

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

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

.pbvh-23 {
  padding-bottom: 23vh !important;
}

.ptvh-23 {
  padding-top: 23vh !important;
}

.mbvh-23 {
  padding-bottom: 23vh !important;
}

.mtvh-23 {
  padding-top: 23vh !important;
}

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

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

.pbvh-24 {
  padding-bottom: 24vh !important;
}

.ptvh-24 {
  padding-top: 24vh !important;
}

.mbvh-24 {
  padding-bottom: 24vh !important;
}

.mtvh-24 {
  padding-top: 24vh !important;
}

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

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

.pbvh-25 {
  padding-bottom: 25vh !important;
}

.ptvh-25 {
  padding-top: 25vh !important;
}

.mbvh-25 {
  padding-bottom: 25vh !important;
}

.mtvh-25 {
  padding-top: 25vh !important;
}

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

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

.pbvh-26 {
  padding-bottom: 26vh !important;
}

.ptvh-26 {
  padding-top: 26vh !important;
}

.mbvh-26 {
  padding-bottom: 26vh !important;
}

.mtvh-26 {
  padding-top: 26vh !important;
}

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

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

.pbvh-27 {
  padding-bottom: 27vh !important;
}

.ptvh-27 {
  padding-top: 27vh !important;
}

.mbvh-27 {
  padding-bottom: 27vh !important;
}

.mtvh-27 {
  padding-top: 27vh !important;
}

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

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

.pbvh-28 {
  padding-bottom: 28vh !important;
}

.ptvh-28 {
  padding-top: 28vh !important;
}

.mbvh-28 {
  padding-bottom: 28vh !important;
}

.mtvh-28 {
  padding-top: 28vh !important;
}

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

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

.pbvh-29 {
  padding-bottom: 29vh !important;
}

.ptvh-29 {
  padding-top: 29vh !important;
}

.mbvh-29 {
  padding-bottom: 29vh !important;
}

.mtvh-29 {
  padding-top: 29vh !important;
}

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

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

.pbvh-30 {
  padding-bottom: 30vh !important;
}

.ptvh-30 {
  padding-top: 30vh !important;
}

.mbvh-30 {
  padding-bottom: 30vh !important;
}

.mtvh-30 {
  padding-top: 30vh !important;
}

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

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

.pbvh-31 {
  padding-bottom: 31vh !important;
}

.ptvh-31 {
  padding-top: 31vh !important;
}

.mbvh-31 {
  padding-bottom: 31vh !important;
}

.mtvh-31 {
  padding-top: 31vh !important;
}

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

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

.pbvh-32 {
  padding-bottom: 32vh !important;
}

.ptvh-32 {
  padding-top: 32vh !important;
}

.mbvh-32 {
  padding-bottom: 32vh !important;
}

.mtvh-32 {
  padding-top: 32vh !important;
}

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

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

.pbvh-33 {
  padding-bottom: 33vh !important;
}

.ptvh-33 {
  padding-top: 33vh !important;
}

.mbvh-33 {
  padding-bottom: 33vh !important;
}

.mtvh-33 {
  padding-top: 33vh !important;
}

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

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

.pbvh-34 {
  padding-bottom: 34vh !important;
}

.ptvh-34 {
  padding-top: 34vh !important;
}

.mbvh-34 {
  padding-bottom: 34vh !important;
}

.mtvh-34 {
  padding-top: 34vh !important;
}

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

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

.pbvh-35 {
  padding-bottom: 35vh !important;
}

.ptvh-35 {
  padding-top: 35vh !important;
}

.mbvh-35 {
  padding-bottom: 35vh !important;
}

.mtvh-35 {
  padding-top: 35vh !important;
}

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

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

.pbvh-36 {
  padding-bottom: 36vh !important;
}

.ptvh-36 {
  padding-top: 36vh !important;
}

.mbvh-36 {
  padding-bottom: 36vh !important;
}

.mtvh-36 {
  padding-top: 36vh !important;
}

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

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

.pbvh-37 {
  padding-bottom: 37vh !important;
}

.ptvh-37 {
  padding-top: 37vh !important;
}

.mbvh-37 {
  padding-bottom: 37vh !important;
}

.mtvh-37 {
  padding-top: 37vh !important;
}

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

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

.pbvh-38 {
  padding-bottom: 38vh !important;
}

.ptvh-38 {
  padding-top: 38vh !important;
}

.mbvh-38 {
  padding-bottom: 38vh !important;
}

.mtvh-38 {
  padding-top: 38vh !important;
}

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

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

.pbvh-39 {
  padding-bottom: 39vh !important;
}

.ptvh-39 {
  padding-top: 39vh !important;
}

.mbvh-39 {
  padding-bottom: 39vh !important;
}

.mtvh-39 {
  padding-top: 39vh !important;
}

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

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

.pbvh-40 {
  padding-bottom: 40vh !important;
}

.ptvh-40 {
  padding-top: 40vh !important;
}

.mbvh-40 {
  padding-bottom: 40vh !important;
}

.mtvh-40 {
  padding-top: 40vh !important;
}

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

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

.pbvh-41 {
  padding-bottom: 41vh !important;
}

.ptvh-41 {
  padding-top: 41vh !important;
}

.mbvh-41 {
  padding-bottom: 41vh !important;
}

.mtvh-41 {
  padding-top: 41vh !important;
}

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

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

.pbvh-42 {
  padding-bottom: 42vh !important;
}

.ptvh-42 {
  padding-top: 42vh !important;
}

.mbvh-42 {
  padding-bottom: 42vh !important;
}

.mtvh-42 {
  padding-top: 42vh !important;
}

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

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

.pbvh-43 {
  padding-bottom: 43vh !important;
}

.ptvh-43 {
  padding-top: 43vh !important;
}

.mbvh-43 {
  padding-bottom: 43vh !important;
}

.mtvh-43 {
  padding-top: 43vh !important;
}

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

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

.pbvh-44 {
  padding-bottom: 44vh !important;
}

.ptvh-44 {
  padding-top: 44vh !important;
}

.mbvh-44 {
  padding-bottom: 44vh !important;
}

.mtvh-44 {
  padding-top: 44vh !important;
}

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

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

.pbvh-45 {
  padding-bottom: 45vh !important;
}

.ptvh-45 {
  padding-top: 45vh !important;
}

.mbvh-45 {
  padding-bottom: 45vh !important;
}

.mtvh-45 {
  padding-top: 45vh !important;
}

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

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

.pbvh-46 {
  padding-bottom: 46vh !important;
}

.ptvh-46 {
  padding-top: 46vh !important;
}

.mbvh-46 {
  padding-bottom: 46vh !important;
}

.mtvh-46 {
  padding-top: 46vh !important;
}

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

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

.pbvh-47 {
  padding-bottom: 47vh !important;
}

.ptvh-47 {
  padding-top: 47vh !important;
}

.mbvh-47 {
  padding-bottom: 47vh !important;
}

.mtvh-47 {
  padding-top: 47vh !important;
}

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

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

.pbvh-48 {
  padding-bottom: 48vh !important;
}

.ptvh-48 {
  padding-top: 48vh !important;
}

.mbvh-48 {
  padding-bottom: 48vh !important;
}

.mtvh-48 {
  padding-top: 48vh !important;
}

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

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

.pbvh-49 {
  padding-bottom: 49vh !important;
}

.ptvh-49 {
  padding-top: 49vh !important;
}

.mbvh-49 {
  padding-bottom: 49vh !important;
}

.mtvh-49 {
  padding-top: 49vh !important;
}

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

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

.pbvh-50 {
  padding-bottom: 50vh !important;
}

.ptvh-50 {
  padding-top: 50vh !important;
}

.mbvh-50 {
  padding-bottom: 50vh !important;
}

.mtvh-50 {
  padding-top: 50vh !important;
}

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

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

.pbvh-51 {
  padding-bottom: 51vh !important;
}

.ptvh-51 {
  padding-top: 51vh !important;
}

.mbvh-51 {
  padding-bottom: 51vh !important;
}

.mtvh-51 {
  padding-top: 51vh !important;
}

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

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

.pbvh-52 {
  padding-bottom: 52vh !important;
}

.ptvh-52 {
  padding-top: 52vh !important;
}

.mbvh-52 {
  padding-bottom: 52vh !important;
}

.mtvh-52 {
  padding-top: 52vh !important;
}

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

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

.pbvh-53 {
  padding-bottom: 53vh !important;
}

.ptvh-53 {
  padding-top: 53vh !important;
}

.mbvh-53 {
  padding-bottom: 53vh !important;
}

.mtvh-53 {
  padding-top: 53vh !important;
}

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

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

.pbvh-54 {
  padding-bottom: 54vh !important;
}

.ptvh-54 {
  padding-top: 54vh !important;
}

.mbvh-54 {
  padding-bottom: 54vh !important;
}

.mtvh-54 {
  padding-top: 54vh !important;
}

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

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

.pbvh-55 {
  padding-bottom: 55vh !important;
}

.ptvh-55 {
  padding-top: 55vh !important;
}

.mbvh-55 {
  padding-bottom: 55vh !important;
}

.mtvh-55 {
  padding-top: 55vh !important;
}

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

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

.pbvh-56 {
  padding-bottom: 56vh !important;
}

.ptvh-56 {
  padding-top: 56vh !important;
}

.mbvh-56 {
  padding-bottom: 56vh !important;
}

.mtvh-56 {
  padding-top: 56vh !important;
}

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

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

.pbvh-57 {
  padding-bottom: 57vh !important;
}

.ptvh-57 {
  padding-top: 57vh !important;
}

.mbvh-57 {
  padding-bottom: 57vh !important;
}

.mtvh-57 {
  padding-top: 57vh !important;
}

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

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

.pbvh-58 {
  padding-bottom: 58vh !important;
}

.ptvh-58 {
  padding-top: 58vh !important;
}

.mbvh-58 {
  padding-bottom: 58vh !important;
}

.mtvh-58 {
  padding-top: 58vh !important;
}

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

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

.pbvh-59 {
  padding-bottom: 59vh !important;
}

.ptvh-59 {
  padding-top: 59vh !important;
}

.mbvh-59 {
  padding-bottom: 59vh !important;
}

.mtvh-59 {
  padding-top: 59vh !important;
}

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

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

.pbvh-60 {
  padding-bottom: 60vh !important;
}

.ptvh-60 {
  padding-top: 60vh !important;
}

.mbvh-60 {
  padding-bottom: 60vh !important;
}

.mtvh-60 {
  padding-top: 60vh !important;
}

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

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

.pbvh-61 {
  padding-bottom: 61vh !important;
}

.ptvh-61 {
  padding-top: 61vh !important;
}

.mbvh-61 {
  padding-bottom: 61vh !important;
}

.mtvh-61 {
  padding-top: 61vh !important;
}

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

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

.pbvh-62 {
  padding-bottom: 62vh !important;
}

.ptvh-62 {
  padding-top: 62vh !important;
}

.mbvh-62 {
  padding-bottom: 62vh !important;
}

.mtvh-62 {
  padding-top: 62vh !important;
}

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

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

.pbvh-63 {
  padding-bottom: 63vh !important;
}

.ptvh-63 {
  padding-top: 63vh !important;
}

.mbvh-63 {
  padding-bottom: 63vh !important;
}

.mtvh-63 {
  padding-top: 63vh !important;
}

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

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

.pbvh-64 {
  padding-bottom: 64vh !important;
}

.ptvh-64 {
  padding-top: 64vh !important;
}

.mbvh-64 {
  padding-bottom: 64vh !important;
}

.mtvh-64 {
  padding-top: 64vh !important;
}

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

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

.pbvh-65 {
  padding-bottom: 65vh !important;
}

.ptvh-65 {
  padding-top: 65vh !important;
}

.mbvh-65 {
  padding-bottom: 65vh !important;
}

.mtvh-65 {
  padding-top: 65vh !important;
}

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

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

.pbvh-66 {
  padding-bottom: 66vh !important;
}

.ptvh-66 {
  padding-top: 66vh !important;
}

.mbvh-66 {
  padding-bottom: 66vh !important;
}

.mtvh-66 {
  padding-top: 66vh !important;
}

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

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

.pbvh-67 {
  padding-bottom: 67vh !important;
}

.ptvh-67 {
  padding-top: 67vh !important;
}

.mbvh-67 {
  padding-bottom: 67vh !important;
}

.mtvh-67 {
  padding-top: 67vh !important;
}

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

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

.pbvh-68 {
  padding-bottom: 68vh !important;
}

.ptvh-68 {
  padding-top: 68vh !important;
}

.mbvh-68 {
  padding-bottom: 68vh !important;
}

.mtvh-68 {
  padding-top: 68vh !important;
}

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

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

.pbvh-69 {
  padding-bottom: 69vh !important;
}

.ptvh-69 {
  padding-top: 69vh !important;
}

.mbvh-69 {
  padding-bottom: 69vh !important;
}

.mtvh-69 {
  padding-top: 69vh !important;
}

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

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

.pbvh-70 {
  padding-bottom: 70vh !important;
}

.ptvh-70 {
  padding-top: 70vh !important;
}

.mbvh-70 {
  padding-bottom: 70vh !important;
}

.mtvh-70 {
  padding-top: 70vh !important;
}

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

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

.pbvh-71 {
  padding-bottom: 71vh !important;
}

.ptvh-71 {
  padding-top: 71vh !important;
}

.mbvh-71 {
  padding-bottom: 71vh !important;
}

.mtvh-71 {
  padding-top: 71vh !important;
}

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

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

.pbvh-72 {
  padding-bottom: 72vh !important;
}

.ptvh-72 {
  padding-top: 72vh !important;
}

.mbvh-72 {
  padding-bottom: 72vh !important;
}

.mtvh-72 {
  padding-top: 72vh !important;
}

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

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

.pbvh-73 {
  padding-bottom: 73vh !important;
}

.ptvh-73 {
  padding-top: 73vh !important;
}

.mbvh-73 {
  padding-bottom: 73vh !important;
}

.mtvh-73 {
  padding-top: 73vh !important;
}

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

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

.pbvh-74 {
  padding-bottom: 74vh !important;
}

.ptvh-74 {
  padding-top: 74vh !important;
}

.mbvh-74 {
  padding-bottom: 74vh !important;
}

.mtvh-74 {
  padding-top: 74vh !important;
}

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

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

.pbvh-75 {
  padding-bottom: 75vh !important;
}

.ptvh-75 {
  padding-top: 75vh !important;
}

.mbvh-75 {
  padding-bottom: 75vh !important;
}

.mtvh-75 {
  padding-top: 75vh !important;
}

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

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

.pbvh-76 {
  padding-bottom: 76vh !important;
}

.ptvh-76 {
  padding-top: 76vh !important;
}

.mbvh-76 {
  padding-bottom: 76vh !important;
}

.mtvh-76 {
  padding-top: 76vh !important;
}

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

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

.pbvh-77 {
  padding-bottom: 77vh !important;
}

.ptvh-77 {
  padding-top: 77vh !important;
}

.mbvh-77 {
  padding-bottom: 77vh !important;
}

.mtvh-77 {
  padding-top: 77vh !important;
}

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

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

.pbvh-78 {
  padding-bottom: 78vh !important;
}

.ptvh-78 {
  padding-top: 78vh !important;
}

.mbvh-78 {
  padding-bottom: 78vh !important;
}

.mtvh-78 {
  padding-top: 78vh !important;
}

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

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

.pbvh-79 {
  padding-bottom: 79vh !important;
}

.ptvh-79 {
  padding-top: 79vh !important;
}

.mbvh-79 {
  padding-bottom: 79vh !important;
}

.mtvh-79 {
  padding-top: 79vh !important;
}

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

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

.pbvh-80 {
  padding-bottom: 80vh !important;
}

.ptvh-80 {
  padding-top: 80vh !important;
}

.mbvh-80 {
  padding-bottom: 80vh !important;
}

.mtvh-80 {
  padding-top: 80vh !important;
}

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

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

.pbvh-81 {
  padding-bottom: 81vh !important;
}

.ptvh-81 {
  padding-top: 81vh !important;
}

.mbvh-81 {
  padding-bottom: 81vh !important;
}

.mtvh-81 {
  padding-top: 81vh !important;
}

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

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

.pbvh-82 {
  padding-bottom: 82vh !important;
}

.ptvh-82 {
  padding-top: 82vh !important;
}

.mbvh-82 {
  padding-bottom: 82vh !important;
}

.mtvh-82 {
  padding-top: 82vh !important;
}

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

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

.pbvh-83 {
  padding-bottom: 83vh !important;
}

.ptvh-83 {
  padding-top: 83vh !important;
}

.mbvh-83 {
  padding-bottom: 83vh !important;
}

.mtvh-83 {
  padding-top: 83vh !important;
}

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

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

.pbvh-84 {
  padding-bottom: 84vh !important;
}

.ptvh-84 {
  padding-top: 84vh !important;
}

.mbvh-84 {
  padding-bottom: 84vh !important;
}

.mtvh-84 {
  padding-top: 84vh !important;
}

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

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

.pbvh-85 {
  padding-bottom: 85vh !important;
}

.ptvh-85 {
  padding-top: 85vh !important;
}

.mbvh-85 {
  padding-bottom: 85vh !important;
}

.mtvh-85 {
  padding-top: 85vh !important;
}

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

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

.pbvh-86 {
  padding-bottom: 86vh !important;
}

.ptvh-86 {
  padding-top: 86vh !important;
}

.mbvh-86 {
  padding-bottom: 86vh !important;
}

.mtvh-86 {
  padding-top: 86vh !important;
}

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

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

.pbvh-87 {
  padding-bottom: 87vh !important;
}

.ptvh-87 {
  padding-top: 87vh !important;
}

.mbvh-87 {
  padding-bottom: 87vh !important;
}

.mtvh-87 {
  padding-top: 87vh !important;
}

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

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

.pbvh-88 {
  padding-bottom: 88vh !important;
}

.ptvh-88 {
  padding-top: 88vh !important;
}

.mbvh-88 {
  padding-bottom: 88vh !important;
}

.mtvh-88 {
  padding-top: 88vh !important;
}

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

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

.pbvh-89 {
  padding-bottom: 89vh !important;
}

.ptvh-89 {
  padding-top: 89vh !important;
}

.mbvh-89 {
  padding-bottom: 89vh !important;
}

.mtvh-89 {
  padding-top: 89vh !important;
}

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

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

.pbvh-90 {
  padding-bottom: 90vh !important;
}

.ptvh-90 {
  padding-top: 90vh !important;
}

.mbvh-90 {
  padding-bottom: 90vh !important;
}

.mtvh-90 {
  padding-top: 90vh !important;
}

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

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

.pbvh-91 {
  padding-bottom: 91vh !important;
}

.ptvh-91 {
  padding-top: 91vh !important;
}

.mbvh-91 {
  padding-bottom: 91vh !important;
}

.mtvh-91 {
  padding-top: 91vh !important;
}

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

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

.pbvh-92 {
  padding-bottom: 92vh !important;
}

.ptvh-92 {
  padding-top: 92vh !important;
}

.mbvh-92 {
  padding-bottom: 92vh !important;
}

.mtvh-92 {
  padding-top: 92vh !important;
}

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

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

.pbvh-93 {
  padding-bottom: 93vh !important;
}

.ptvh-93 {
  padding-top: 93vh !important;
}

.mbvh-93 {
  padding-bottom: 93vh !important;
}

.mtvh-93 {
  padding-top: 93vh !important;
}

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

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

.pbvh-94 {
  padding-bottom: 94vh !important;
}

.ptvh-94 {
  padding-top: 94vh !important;
}

.mbvh-94 {
  padding-bottom: 94vh !important;
}

.mtvh-94 {
  padding-top: 94vh !important;
}

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

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

.pbvh-95 {
  padding-bottom: 95vh !important;
}

.ptvh-95 {
  padding-top: 95vh !important;
}

.mbvh-95 {
  padding-bottom: 95vh !important;
}

.mtvh-95 {
  padding-top: 95vh !important;
}

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

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

.pbvh-96 {
  padding-bottom: 96vh !important;
}

.ptvh-96 {
  padding-top: 96vh !important;
}

.mbvh-96 {
  padding-bottom: 96vh !important;
}

.mtvh-96 {
  padding-top: 96vh !important;
}

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

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

.pbvh-97 {
  padding-bottom: 97vh !important;
}

.ptvh-97 {
  padding-top: 97vh !important;
}

.mbvh-97 {
  padding-bottom: 97vh !important;
}

.mtvh-97 {
  padding-top: 97vh !important;
}

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

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

.pbvh-98 {
  padding-bottom: 98vh !important;
}

.ptvh-98 {
  padding-top: 98vh !important;
}

.mbvh-98 {
  padding-bottom: 98vh !important;
}

.mtvh-98 {
  padding-top: 98vh !important;
}

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

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

.pbvh-99 {
  padding-bottom: 99vh !important;
}

.ptvh-99 {
  padding-top: 99vh !important;
}

.mbvh-99 {
  padding-bottom: 99vh !important;
}

.mtvh-99 {
  padding-top: 99vh !important;
}

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

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

.pbvh-100 {
  padding-bottom: 100vh !important;
}

.ptvh-100 {
  padding-top: 100vh !important;
}

.mbvh-100 {
  padding-bottom: 100vh !important;
}

.mtvh-100 {
  padding-top: 100vh !important;
}

html body .block-horizontal-service-scopes .service-scope, html body .block-positions-carousel, html body .block-fullwidth-image .big-video, html body .block-fullwidth-image .big-image, html body .block-fullwidth-image, html body .block-fullwidth-simple-content, html body:not(.fully-vertical) .block-horizontal-animated-container, html body .block-hero-claim #home-background, html body .block-hero-claim #hero-bright-panel, .block-page-hero, html body .block-2-quotes-carousel {
  width: 100vw;
  height: 100vh;
}

html body .block-horizontal-service-scopes .service-scope .service-text, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type, html body .block-hero-claim #hero-claim {
  display: flex;
  height: 100%;
  width: 100%;
  flex-direction: column;
  align-items: center;
  text-align: center;
  justify-content: center;
}

b, strong {
  font-weight: 500;
}

.text {
  font-weight: 300;
}
.content p:not(:last-of-type) {
  margin-bottom: 1.75rem;
}

html,
body {
  background-color: #121212;
  scroll-behavior: smooth;
  font-size: 16px;
}
@media (max-width: 991.98px) {
  html,
  body {
    font-size: 16px;
  }
}
@media (max-width: 575.98px) {
  html,
  body {
    font-size: 16px;
  }
}

/* Hide scrollbars*/
/* Firefox */
* {
  scrollbar-width: none !important;
  scrollbar-color: #000000 #ffffff;
  /* IE and Edge */
  -ms-overflow-style: none;
}

/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
  width: 0;
  display: none;
}

*::-webkit-scrollbar-track {
  background: #ffffff;
}

*::-webkit-scrollbar-thumb {
  background-color: #000000;
  border-radius: 0px;
  border: 0px solid #ffffff;
}

html {
  height: 100vh;
}
html body {
  padding: 0;
  margin: 0 auto;
  overflow-x: hidden;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  font-weight: 300;
  color: #000000;
}
html body *:not(.fa):not(i) {
  font-family: "neue-montreal", serif;
}

.has-scroll-smooth body {
  position: fixed;
  width: 100vw;
}

a:not(.block-link) {
  color: #000000;
  text-decoration: none;
}
a:not(.block-link):hover {
  color: #E5E5E5;
  text-decoration: underline;
}

a.block-link, a.block-link:hover, a.block-link:active {
  text-decoration: none;
}

.container {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
}
@media (max-width: 767.98px) {
  .container {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-xl {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1660px;
}
@media (max-width: 767.98px) {
  .container-xl {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-lg {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1485px;
}
@media (max-width: 767.98px) {
  .container-lg {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-md {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1385px;
}
@media (max-width: 767.98px) {
  .container-md {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-mdalt {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1295px;
}
@media (max-width: 767.98px) {
  .container-mdalt {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-sm {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1210px;
}
@media (max-width: 767.98px) {
  .container-sm {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-xs {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1060px;
}
@media (max-width: 767.98px) {
  .container-xs {
    max-width: unset;
    padding: 0 30px;
  }
}
.container-padded {
  max-width: 1980px;
  padding: 0 30px;
  margin: 0 auto;
  padding: 0 50px;
}
@media (max-width: 767.98px) {
  .container-padded {
    max-width: unset;
    padding: 0 30px;
  }
}

section {
  position: relative;
}

.otgs-development-site-front-end {
  display: none !important;
}

.grey-bg {
  background-color: #F8F7F5;
}

.section-main-text {
  width: 60%;
  text-align: right;
}

.fading-text {
  text-align: right;
  width: auto;
}
.fading-text:not(.first-letter-normal):first-letter, .fading-text p:not(.first-letter-normal):first-letter {
  font-family: "Bodoni Moda", serif;
  /*font-size: 5rem;*/
  font-style: normal;
  font-weight: 400;
}
@media (max-width: 1199.98px) {
  .fading-text:not(.first-letter-normal):first-letter, .fading-text p:not(.first-letter-normal):first-letter {
    /* font-size: 4rem;*/
  }
}
@media (max-width: 767.98px) {
  .fading-text:not(.first-letter-normal):first-letter, .fading-text p:not(.first-letter-normal):first-letter {
    /*font-size: 3rem;*/
  }
}
.fading-text:not(.first-letter-normal) > span:first-child, .fading-text p:not(.first-letter-normal) > span:first-child {
  padding-top: 2.5rem;
}
@media (max-width: 767.98px) {
  .fading-text:not(.first-letter-normal) > span:first-child, .fading-text p:not(.first-letter-normal) > span:first-child {
    padding-top: 1.25rem;
  }
}
.fading-text .text-type-pre {
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%;
  letter-spacing: 0;
  direction: rtl;
  display: block;
}
@media (max-width: 1199.98px) {
  .fading-text .text-type-pre {
    font-size: 1.375rem;
    line-height: 160%;
  }
}
@media (max-width: 767.98px) {
  .fading-text .text-type-pre {
    font-size: 1.25rem;
  }
}
@media all and (max-height: 700px) {
  .fading-text .text-type-pre {
    font-size: 1.25rem;
  }
}
.fading-text .text-type-post {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
}
@media (max-width: 1199.98px) {
  .fading-text .text-type-post {
    font-size: 1.375rem;
    line-height: 160%;
  }
}
@media (max-width: 767.98px) {
  .fading-text .text-type-post {
    font-size: 1.25rem;
  }
}
@media all and (max-height: 700px) {
  .fading-text .text-type-post {
    font-size: 1.25rem;
  }
}
.fading-text .long-line {
  position: relative;
  top: -5px;
  display: inline-block;
  width: 200px;
  overflow: hidden;
  text-indent: -99px;
  border-bottom: 1px solid #FFFFFF;
  height: 0;
}
@media (max-width: 1199.98px) {
  .fading-text .long-line {
    width: 150px;
  }
}
.fading-text:not(.first-letter-normal):first-letter,
.fading-text p:not(.first-letter-normal):first-letter,
.fading-text .text-type-post {
  font-family: "Prata", serif !important;
  direction: rtl;
  display: block;
}
.fading-text a {
  color: #000000;
  position: relative;
}
.fading-text a:before, .fading-text a:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.fading-text a:before {
  transform: scaleX(0);
  transform-origin: left;
}
.fading-text a:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.fading-text a:hover {
  color: #000000;
  text-decoration: none;
}
.fading-text a:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.fading-text a:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}

.block-page-hero.page_404 .title-subtitle-wrapper {
  padding-bottom: 50px;
}
@media (max-width: 991.98px) {
  .block-page-hero.page_404 .title-subtitle-wrapper .title h1, .block-page-hero.page_404 .title-subtitle-wrapper .title .h1, .block-page-hero.page_404 .title-subtitle-wrapper .title h2, .block-page-hero.page_404 .title-subtitle-wrapper .title .h2, .block-page-hero.page_404 .title-subtitle-wrapper .title h3, .block-page-hero.page_404 .title-subtitle-wrapper .title .h3, .block-page-hero.page_404 .title-subtitle-wrapper .title h4, .block-page-hero.page_404 .title-subtitle-wrapper .title .h4, .block-page-hero.page_404 .title-subtitle-wrapper .title h5, .block-page-hero.page_404 .title-subtitle-wrapper .title .h5, .block-page-hero.page_404 .title-subtitle-wrapper .title h6, .block-page-hero.page_404 .title-subtitle-wrapper .title .h6 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
.block-page-hero.page_404 .title-subtitle-wrapper .subtitle {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
  transform: none;
  left: 0;
}
@media (max-width: 991.98px) {
  .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h1, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h1, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h2, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h2, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h3, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h3, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h4, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h4, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h5, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h5, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle h6, .block-page-hero.page_404 .title-subtitle-wrapper .subtitle .h6 {
    max-width: unset !important;
  }
}
.block-page-hero.page_404 .content_404 {
  position: static;
  transform: none;
  color: #FFFFFF;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.block-page-hero.page_404 .content_404 p {
  font-family: "neue-montreal", serif;
  font-style: normal;
  font-weight: 300;
  font-size: 1.5rem;
  line-height: 1.8125rem;
  letter-spacing: 0;
  padding: 0 30px;
}
.block-page-hero.page_404 .content_404 .cta {
  margin-top: 108px;
  width: auto;
}

.simple-page {
  padding: 100px 30px;
  max-width: 1440px;
  margin: 0 auto;
}
.simple-page h1, .simple-page .h1, .simple-page h2, .simple-page .h2, .simple-page h3, .simple-page .h3, .simple-page h4, .simple-page .h4, .simple-page h5, .simple-page .h5, .simple-page h6, .simple-page .h6 {
  margin-bottom: 1.875rem;
}
.simple-page h1, .simple-page .h1 {
  font-family: "Bodoni Moda", serif;
  font-size: 4.375rem;
  line-height: 5.625rem;
  font-weight: 400;
}
@media (max-width: 991.98px) {
  .simple-page h1, .simple-page .h1 {
    font-size: 3.75rem;
    line-height: 4.375rem;
    margin-bottom: 2rem;
  }
}
@media (max-width: 575.98px) {
  .simple-page h1, .simple-page .h1 {
    font-size: 3.125rem;
    line-height: 3.75rem;
  }
}
.simple-page h2, .simple-page .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 3.125rem;
  line-height: 3.75rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
}
@media (max-width: 991.98px) {
  .simple-page h2, .simple-page .h2 {
    font-size: 2.5rem;
    line-height: 3.125rem;
    margin-bottom: 2rem;
  }
}
@media (max-width: 575.98px) {
  .simple-page h2, .simple-page .h2 {
    font-size: 1.875rem;
    line-height: 2.5rem;
  }
}
.simple-page h3, .simple-page .h3 {
  font-family: "Bodoni Moda", serif;
  font-size: 1.875rem;
  line-height: 2.5rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
}
@media (max-width: 991.98px) {
  .simple-page h3, .simple-page .h3 {
    font-size: 1.625rem;
    line-height: 2.25rem;
    margin-bottom: 2rem;
  }
}
@media (max-width: 575.98px) {
  .simple-page h3, .simple-page .h3 {
    font-size: 1.5rem;
    line-height: 2.125rem;
  }
}
.simple-page p, .simple-page li {
  text-align: justify;
  font-family: "neue-montreal", serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.025rem */
  letter-spacing: 0;
}
.simple-page p, .simple-page li {
  margin-bottom: 1.5rem;
}
.simple-page ul, .simple-page ol {
  padding-left: 2.5rem;
}
.simple-page ul {
  list-style-type: disc;
}
.simple-page ol {
  list-style-type: decimal;
}
.simple-page a {
  color: #000000;
  position: relative;
}
.simple-page a:before, .simple-page a:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.simple-page a:before {
  transform: scaleX(0);
  transform-origin: left;
}
.simple-page a:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.simple-page a:hover {
  color: #000000;
  text-decoration: none;
}
.simple-page a:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.simple-page a:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.simple-page a {
  color: #FFFFFF;
}
.simple-page a:before, .simple-page a:after {
  background-color: #FFFFFF;
}
.simple-page a:hover {
  color: #FFFFFF;
}

.grecaptcha-badge {
  visibility: hidden;
}

.captcha-disclaimer, .captcha-disclaimer * {
  font-size: 1.125rem;
}
.captcha-disclaimer a {
  color: #000000;
  position: relative;
}
.captcha-disclaimer a:before, .captcha-disclaimer a:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.captcha-disclaimer a:before {
  transform: scaleX(0);
  transform-origin: left;
}
.captcha-disclaimer a:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.captcha-disclaimer a:hover {
  color: #000000;
  text-decoration: none;
}
.captcha-disclaimer a:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.captcha-disclaimer a:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.captcha-disclaimer a {
  color: #FFFFFF;
}
.captcha-disclaimer a:before, .captcha-disclaimer a:after {
  background-color: #FFFFFF;
}
.captcha-disclaimer a:hover {
  color: #FFFFFF;
}
.captcha-disclaimer a {
  display: inline-block;
  line-height: 1.3125rem;
}

@-webkit-keyframes curtain {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(100%);
  }
}
@keyframes curtain {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(100%);
  }
}
header {
  mix-blend-mode: difference;
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
header .header {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 992px) {
  header .header a svg {
    height: 55px;
    width: 250px;
  }
}
header #nav-toggler {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  cursor: pointer;
}
header #nav-toggler .open,
header #nav-toggler .close {
  position: absolute;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
header #nav-toggler .open {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}
header #nav-toggler .close {
  opacity: 0;
  transform: rotate(0deg) scale(0.4);
}

.megamenu {
  position: relative;
  z-index: 2;
  width: 140%;
  margin-left: -20vw;
  height: 100%;
  transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  transform: scale(0.8);
  opacity: 0.5;
}
.megamenu .slick-arrow {
  width: 33% !important;
  transform: none !important;
  top: 0 !important;
  z-index: 6;
  height: 100vh !important;
}
.megamenu .slick-arrow:before {
  display: none !important;
}
.megamenu a {
  font-family: "Bodoni Moda", serif !important;
  font-weight: 400;
  transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  color: rgba(255, 255, 255, 0.1) !important;
}
.megamenu .slick-list {
  height: 100%;
  padding: 20vw 0 !important;
  /*ee42*/
}
.megamenu .slick-list a {
  font-size: 6.25rem;
  line-height: 8.75rem;
  letter-spacing: 3px;
}
.megamenu .slick-list .slick-center a {
  color: #FFFFFF !important;
}
.megamenu .slick-list .slick-track {
  height: 100%;
}
.megamenu .slick-list .slick-track .slick-slide {
  align-items: center;
  display: flex;
  justify-content: center;
}
.megamenu .slick-list .slick-track .slick-slide > div {
  width: 100%;
  text-align: center;
  background-color: #121212;
}
.megamenu, .megamenu * {
  color: #FFFFFF !important;
  text-decoration: none !important;
}
@media (max-width: 991.98px) {
  .megamenu {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .megamenu a {
    font-size: 3.125rem;
    line-height: 4.5rem;
    letter-spacing: 0;
    margin: 22px 0;
    background-color: #121212;
    position: relative;
    color: rgba(255, 255, 255, 0.6) !important;
  }
}
@media (max-width: 991.98px) and (max-height: 700px) {
  .megamenu a {
    margin: 10px 0;
  }
}
@media (max-width: 991.98px) and (max-height: 550px) {
  .megamenu a {
    margin: 0;
  }
}
@media (max-width: 991.98px) {
  .megamenu a:hover, .megamenu a.active {
    color: white !important;
  }
  .megamenu a.active:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    height: 120px;
    bottom: 0;
    width: 1px;
    background: #FFFFFF;
    z-index: -1;
    transform: translate(-50%, -50%) skewX(-25deg);
  }
}
.megamenu-overlay {
  z-index: 998;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100vh;
  opacity: 0;
  background: #121212;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.location-details {
  display: flex;
  text-align: center;
  font-size: 0.75rem;
  font-weight: 400;
  text-transform: uppercase;
  flex-direction: row-reverse;
  opacity: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.location-details > * {
  color: transparent !important;
}
.location-details a {
  text-decoration: none !important;
  opacity: 0;
}
.location-details svg {
  max-width: 14px;
}
.location-details .page-name {
  font-size: 20px;
}
@media (min-width: 992px) {
  .location-details + .toggler {
    min-width: 106px;
  }
}
.location-details .separator {
  display: inline-block;
  margin: 0 6px;
}

.page.title-always-visible header .location-details, .page.title-enabled header .location-details,
.single.title-always-visible header .location-details,
.single.title-enabled header .location-details {
  opacity: 1;
}
.page.title-always-visible header .location-details > *, .page.title-enabled header .location-details > *,
.single.title-always-visible header .location-details > *,
.single.title-enabled header .location-details > * {
  opacity: 0.6;
  color: #FFFFFF !important;
}
.page.title-always-visible header .location-details a:hover, .page.title-enabled header .location-details a:hover,
.single.title-always-visible header .location-details a:hover,
.single.title-enabled header .location-details a:hover {
  opacity: 1;
}
.page.nav-open header .location-details,
.single.nav-open header .location-details {
  opacity: 0;
}

@media (min-width: 992px) {
  .backdrop {
    z-index: 1;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    transform: scale(1.8);
  }
  .backdrop #slash {
    width: 132px;
    height: 280px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .backdrop #slash .bar {
    height: 100%;
    bottom: 0;
    width: 2px;
    background: #FFFFFF;
    transform: skewX(-25deg);
  }
  .backdrop #slash:after {
    content: "";
    display: block;
    background: #121212;
    top: 0;
    width: 100%;
    height: 280px;
    position: absolute;
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-animation: curtain 0.6s linear forwards;
    animation: curtain 0.6s linear forwards;
  }
  .backdrop #slash.refresh:after {
    animation: none;
  }
}
.nav-open .backdrop {
  transform: scale(1);
}
.nav-open .header #nav-toggler .open {
  opacity: 0;
  transform: rotate(90deg) scale(0.4);
}
.nav-open .header #nav-toggler .close {
  opacity: 1;
  transform: rotate(90deg) scale(1);
}
.nav-open .megamenu {
  transform: scale(1);
  opacity: 1;
}
.nav-open .megamenu-overlay {
  opacity: 1;
  pointer-events: all;
}

footer {
  z-index: 60;
  position: relative;
}
footer, footer #footer {
  background-color: #121212;
}
footer #footer {
  z-index: 50;
}
@media (max-width: 991.98px) {
  footer #footer {
    flex-direction: column;
  }
}
footer #footer, footer #footer a, footer #footer li {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}
footer #footer .policy {
  padding-left: 2rem;
}
footer #footer .policy li {
  display: inline-block;
  padding-left: 2rem;
}
@media (max-width: 991.98px) {
  footer #footer .policy {
    order: 2;
    width: 100% !important;
    padding-left: 0;
    margin-top: 1.5rem;
    text-align: center;
  }
  footer #footer .policy li {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
footer #footer .social {
  text-align: center;
}
footer #footer .social li {
  display: inline-block;
  padding-left: 2rem;
}
footer #footer .social a {
  display: block;
}
@media (max-width: 991.98px) {
  footer #footer .social {
    order: 1;
    width: 100% !important;
    margin-top: 1.5rem;
  }
  footer #footer .social li {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
footer #footer .copyright {
  text-align: right;
  padding-right: 2rem;
}
footer #footer .copyright span {
  display: inline-block;
  padding: 0 1rem;
}
@media (max-width: 991.98px) {
  footer #footer .copyright {
    order: 3;
    width: 100% !important;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    text-align: center;
  }
}
footer .wpml-ls-statics-footer {
  display: none;
}
@media (max-width: 991.98px) {
  footer {
    height: 220px;
  }
  footer #footer {
    height: 220px !important;
    justify-content: flex-end !important;
  }
}

.footer-inset footer {
  mix-blend-mode: difference;
  margin-top: -92px;
  height: 92px;
  z-index: 200;
}
.footer-inset footer, .footer-inset footer #footer {
  background-color: transparent;
}
@media (max-width: 991.98px) {
  .footer-inset footer {
    height: 220px;
    margin-top: -220px;
  }
}

.component-background img {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  object-fit: cover;
  object-position: center;
}

.component-image {
  display: block;
}
.component-image img {
  width: 100%;
}

html body .mejs-container {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden;
}
html body .mejs-container .mejs-layers,
html body .mejs-container .mejs-controls {
  display: none !important;
}
html body .mejs-container video {
  /* Make video to at least 100% wide and tall */
  min-width: 100%;
  min-height: 100%;
  /* To prevent top/bottom black stripes due to responsive adjusting */
  /* Setting width & height to auto prevents the browser from stretching or squishing the video */
  width: auto !important;
  height: auto !important;
  /* mobile must set height 100% */
  /* Center the video */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 1199.98px) {
  html body .mejs-container video {
    object-fit: cover;
  }
}
@media (max-width: 767.98px) {
  html body .mejs-container video {
    height: 100% !important;
  }
}
@media all and (max-width: 900px) {
  html body .mejs-container video {
    max-width: unset;
  }
}

.cta,
a.cta {
  height: 2.5rem;
  width: 100%;
  max-width: 23.125rem;
  padding: 0.625rem 1.25rem;
  border-radius: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.1875rem;
  letter-spacing: 0;
  text-transform: uppercase;
  background-color: transparent;
  transition: 0.3s ease-in-out;
  position: relative;
}
.cta *,
a.cta * {
  transition: 0.3s ease-in-out;
}
.cta:before, .cta:after,
a.cta:before,
a.cta:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.cta:before,
a.cta:before {
  transform: scaleX(0);
  transform-origin: left;
}
.cta:after,
a.cta:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.cta:hover:before,
a.cta:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.cta:hover:after,
a.cta:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.cta, .cta:hover, .cta:active,
a.cta,
a.cta:hover,
a.cta:active {
  text-decoration: none;
}

.cta-main,
a.cta-main {
  height: 2.5rem;
  width: 100%;
  max-width: 23.125rem;
  padding: 0.625rem 1.25rem;
  border-radius: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.1875rem;
  letter-spacing: 0;
  text-transform: uppercase;
  background-color: transparent;
  transition: 0.3s ease-in-out;
  position: relative;
  border-color: #FFFFFF;
}
.cta-main *,
a.cta-main * {
  transition: 0.3s ease-in-out;
}
.cta-main:before, .cta-main:after,
a.cta-main:before,
a.cta-main:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.cta-main:before,
a.cta-main:before {
  transform: scaleX(0);
  transform-origin: left;
}
.cta-main:after,
a.cta-main:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.cta-main:hover:before,
a.cta-main:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.cta-main:hover:after,
a.cta-main:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.cta-main, .cta-main:hover, .cta-main:active,
a.cta-main,
a.cta-main:hover,
a.cta-main:active {
  text-decoration: none;
}
.cta-main,
.cta-main *, .cta-main:hover,
.cta-main:hover *, .cta-main:active,
.cta-main:active *,
a.cta-main,
a.cta-main *,
a.cta-main:hover,
a.cta-main:hover *,
a.cta-main:active,
a.cta-main:active * {
  color: #FFFFFF;
}
.cta-main,
.cta-main *, .cta-main:hover,
.cta-main:hover *, .cta-main:active,
.cta-main:active *,
a.cta-main,
a.cta-main *,
a.cta-main:hover,
a.cta-main:hover *,
a.cta-main:active,
a.cta-main:active * {
  stroke: #FFFFFF;
}
.cta-main:before, .cta-main:after,
a.cta-main:before,
a.cta-main:after {
  background-color: #FFFFFF;
}
.cta-main:hover,
.cta-main:hover *, .cta-main:hover:hover,
.cta-main:hover:hover *, .cta-main:hover:active,
.cta-main:hover:active *,
a.cta-main:hover,
a.cta-main:hover *,
a.cta-main:hover:hover,
a.cta-main:hover:hover *,
a.cta-main:hover:active,
a.cta-main:hover:active * {
  color: #FFFFFF;
}
.cta-main:hover,
.cta-main:hover *, .cta-main:hover:hover,
.cta-main:hover:hover *, .cta-main:hover:active,
.cta-main:hover:active *,
a.cta-main:hover,
a.cta-main:hover *,
a.cta-main:hover:hover,
a.cta-main:hover:hover *,
a.cta-main:hover:active,
a.cta-main:hover:active * {
  stroke: #FFFFFF;
}

.cta-alt,
a.cta-alt {
  height: 2.5rem;
  width: 100%;
  max-width: 23.125rem;
  padding: 0.625rem 1.25rem;
  border-radius: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.1875rem;
  letter-spacing: 0;
  text-transform: uppercase;
  background-color: transparent;
  transition: 0.3s ease-in-out;
  position: relative;
  border-color: #000000;
}
.cta-alt *,
a.cta-alt * {
  transition: 0.3s ease-in-out;
}
.cta-alt:before, .cta-alt:after,
a.cta-alt:before,
a.cta-alt:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.cta-alt:before,
a.cta-alt:before {
  transform: scaleX(0);
  transform-origin: left;
}
.cta-alt:after,
a.cta-alt:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.cta-alt:hover:before,
a.cta-alt:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.cta-alt:hover:after,
a.cta-alt:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.cta-alt, .cta-alt:hover, .cta-alt:active,
a.cta-alt,
a.cta-alt:hover,
a.cta-alt:active {
  text-decoration: none;
}
.cta-alt,
.cta-alt *, .cta-alt:hover,
.cta-alt:hover *, .cta-alt:active,
.cta-alt:active *,
a.cta-alt,
a.cta-alt *,
a.cta-alt:hover,
a.cta-alt:hover *,
a.cta-alt:active,
a.cta-alt:active * {
  color: #000000;
}
.cta-alt,
.cta-alt *, .cta-alt:hover,
.cta-alt:hover *, .cta-alt:active,
.cta-alt:active *,
a.cta-alt,
a.cta-alt *,
a.cta-alt:hover,
a.cta-alt:hover *,
a.cta-alt:active,
a.cta-alt:active * {
  stroke: #000000;
}
.cta-alt:before, .cta-alt:after,
a.cta-alt:before,
a.cta-alt:after {
  background-color: #000000;
}
.cta-alt:hover,
.cta-alt:hover *, .cta-alt:hover:hover,
.cta-alt:hover:hover *, .cta-alt:hover:active,
.cta-alt:hover:active *,
a.cta-alt:hover,
a.cta-alt:hover *,
a.cta-alt:hover:hover,
a.cta-alt:hover:hover *,
a.cta-alt:hover:active,
a.cta-alt:hover:active * {
  color: #000000;
}
.cta-alt:hover,
.cta-alt:hover *, .cta-alt:hover:hover,
.cta-alt:hover:hover *, .cta-alt:hover:active,
.cta-alt:hover:active *,
a.cta-alt:hover,
a.cta-alt:hover *,
a.cta-alt:hover:hover,
a.cta-alt:hover:hover *,
a.cta-alt:hover:active,
a.cta-alt:hover:active * {
  stroke: #000000;
}

#cv {
  display: none;
}

.wpcf7 label {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  width: auto;
}

.wpcf7-form br {
  display: none;
}
.wpcf7-form label {
  width: 100%;
}

.wpcf7-form {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
}
.wpcf7-form input:not([type=submit]), .wpcf7-form select, .wpcf7-form textarea {
  margin-bottom: 10px;
  color: #FFFFFF;
  display: inline-block;
  width: auto;
  margin-right: 10px;
  padding: 0;
  background-color: transparent;
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  border: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  font-weight: 300;
}
.wpcf7-form input:not([type=submit])::-webkit-input-placeholder, .wpcf7-form select::-webkit-input-placeholder, .wpcf7-form textarea::-webkit-input-placeholder {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.4);
}
.wpcf7-form input:not([type=submit]):-moz-placeholder, .wpcf7-form select:-moz-placeholder, .wpcf7-form textarea:-moz-placeholder {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.4);
}
.wpcf7-form input:not([type=submit])::-moz-placeholder, .wpcf7-form select::-moz-placeholder, .wpcf7-form textarea::-moz-placeholder {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.4);
}
.wpcf7-form input:not([type=submit]):-ms-input-placeholder, .wpcf7-form select:-ms-input-placeholder, .wpcf7-form textarea:-ms-input-placeholder {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.4);
}
.wpcf7-form input:not([type=submit])::placeholder, .wpcf7-form select::placeholder, .wpcf7-form textarea::placeholder {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 140%; /* 2.1rem */
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.4);
}
.wpcf7-form input:not([type=submit]):focus, .wpcf7-form input:not([type=submit]):focus-visible, .wpcf7-form select:focus, .wpcf7-form select:focus-visible, .wpcf7-form textarea:focus, .wpcf7-form textarea:focus-visible {
  outline: none;
}
.wpcf7-form input:not([type=submit]).wpcf7-not-valid, .wpcf7-form select.wpcf7-not-valid, .wpcf7-form textarea.wpcf7-not-valid {
  border-bottom-color: red;
}
.wpcf7-form input:not([type=file]) {
  max-width: 12rem;
}
.wpcf7-form input[type=file]::file-selector-button {
  opacity: 0;
  width: 0;
}
.wpcf7-form input[type=submit] {
  height: 2.5rem;
  width: 100%;
  max-width: 23.125rem;
  padding: 0.625rem 1.25rem;
  border-radius: 0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.1875rem;
  letter-spacing: 0;
  text-transform: uppercase;
  background-color: transparent;
  transition: 0.3s ease-in-out;
  position: relative;
  border-color: #FFFFFF;
  display: block;
  width: auto;
  padding: 10px;
  margin: 0;
  border: none;
}
.wpcf7-form input[type=submit] * {
  transition: 0.3s ease-in-out;
}
.wpcf7-form input[type=submit]:before, .wpcf7-form input[type=submit]:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.wpcf7-form input[type=submit]:before {
  transform: scaleX(0);
  transform-origin: left;
}
.wpcf7-form input[type=submit]:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.wpcf7-form input[type=submit]:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.wpcf7-form input[type=submit]:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.wpcf7-form input[type=submit], .wpcf7-form input[type=submit]:hover, .wpcf7-form input[type=submit]:active {
  text-decoration: none;
}
.wpcf7-form input[type=submit],
.wpcf7-form input[type=submit] *, .wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=submit]:hover *, .wpcf7-form input[type=submit]:active,
.wpcf7-form input[type=submit]:active * {
  color: #FFFFFF;
}
.wpcf7-form input[type=submit],
.wpcf7-form input[type=submit] *, .wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=submit]:hover *, .wpcf7-form input[type=submit]:active,
.wpcf7-form input[type=submit]:active * {
  stroke: #FFFFFF;
}
.wpcf7-form input[type=submit]:before, .wpcf7-form input[type=submit]:after {
  background-color: #FFFFFF;
}
.wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=submit]:hover *, .wpcf7-form input[type=submit]:hover:hover,
.wpcf7-form input[type=submit]:hover:hover *, .wpcf7-form input[type=submit]:hover:active,
.wpcf7-form input[type=submit]:hover:active * {
  color: #FFFFFF;
}
.wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=submit]:hover *, .wpcf7-form input[type=submit]:hover:hover,
.wpcf7-form input[type=submit]:hover:hover *, .wpcf7-form input[type=submit]:hover:active,
.wpcf7-form input[type=submit]:hover:active * {
  stroke: #FFFFFF;
}
.wpcf7-form label:hover {
  cursor: pointer;
}
.wpcf7-form .form-check {
  padding-left: 0;
}
.wpcf7-form .wpcf7-form-control-wrap {
  width: 100%;
}
.wpcf7-form .wpcf7-response-output {
  margin: 10px 0 30px 0 !important;
  border: none !important;
  padding: 0 !important;
}
.wpcf7-form .wpcf7-not-valid-tip {
  display: none;
}
.wpcf7-form .wpcf7-acceptance {
  width: 100%;
  margin: 0;
  display: inline-flex;
  align-items: center;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.75rem;
  margin-bottom: 10px;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item,
.wpcf7-form .wpcf7-acceptance label {
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-form-control-wrap,
.wpcf7-form .wpcf7-acceptance .wpcf7-form-control,
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
  display: block;
  margin: 0;
}
.wpcf7-form .wpcf7-acceptance input[type=checkbox] {
  width: 20px;
  height: 20px;
  background: transparent;
  margin-right: 12px;
  margin-bottom: 0;
  display: block;
  opacity: 0;
  border: 1px solid #FFFFFF;
  border-radius: 0;
}
.wpcf7-form .wpcf7-acceptance input[type=checkbox]:checked + .wpcf7-list-item-label:after {
  content: "✓";
  position: absolute;
  color: #000000;
  left: 0;
  top: 4px;
  height: 20px;
  width: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
.wpcf7-form .wpcf7-acceptance input[type=checkbox]:checked + span:before {
  background: #FFFFFF;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {
  font-size: 1.125rem;
  font-weight: 300;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a {
  color: #000000;
  position: relative;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:before, .wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: all 0.3s ease;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:before {
  transform: scaleX(0);
  transform-origin: left;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:after {
  transform: scaleX(1);
  transform-origin: right;
  transition-delay: 0.1s;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:hover {
  color: #000000;
  text-decoration: none;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:hover:before {
  transform: scaleX(1);
  transition-delay: 0.1s;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:hover:after {
  transform: scaleX(0);
  transition-delay: 0s;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a {
  color: #FFFFFF;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:before, .wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:after {
  background-color: #FFFFFF;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a:hover {
  color: #FFFFFF;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label a {
  font-weight: 300;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label:hover {
  cursor: pointer;
}
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label:before {
  width: 20px;
  height: 20px;
  position: absolute;
  left: 0;
  top: 4px;
  transition: 0.3s ease-in-out;
  border: 1px solid #FFFFFF;
  background: transparent;
}
.wpcf7-form .cta {
  margin-top: 65px;
  width: auto;
  padding: 0;
  position: relative;
}
.wpcf7-form .cta .wpcf7-spinner {
  position: absolute;
  right: 100%;
}

.block-projects-carousel {
  width: 100vw;
  height: 100vh;
}
@media (max-width: 991.98px) {
  .block-projects-carousel > div {
    padding-bottom: 200px;
    padding-top: 100px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel > div {
    padding-bottom: 20px;
    padding-top: 70px;
  }
}
.block-projects-carousel .slider-points {
  width: 120px;
}
.block-projects-carousel .slider-points span {
  font-size: 14px;
  color: #000000;
  font-weight: 400;
}
.block-projects-carousel .slider-points .total {
  opacity: 0.4;
}
.block-projects-carousel .slider-points .bar {
  height: 40px;
  width: 2px;
  display: block;
  background: #000000;
  margin: 20px 0;
}
.block-projects-carousel .slider-points .nav-arrow {
  cursor: pointer;
  margin: 40px 0;
  transition: transform 0.2s ease-in-out;
  transform: scale(1);
}
.block-projects-carousel .slider-points .nav-arrow:hover {
  transform: scale(1.1);
}
.block-projects-carousel .slider-points .nav-arrow.slick-disabled {
  pointer-events: none;
  opacity: 0.4;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  .block-projects-carousel .slider-points {
    width: 60px;
  }
}
@media (max-width: 1199.98px) {
  .block-projects-carousel .slider-points {
    position: absolute;
    bottom: 15vh;
    width: 200px;
  }
  .block-projects-carousel .slider-points .nav-arrow {
    margin: 0;
    transform: rotate(-90deg);
  }
  .block-projects-carousel .slider-points .nav-arrow:hover {
    transform: scale(1) rotate(-90deg);
  }
  .block-projects-carousel .slider-points .nav-arrow:first-child {
    margin-right: 20px;
  }
  .block-projects-carousel .slider-points .nav-arrow:last-child {
    margin-left: 20px;
  }
  .block-projects-carousel .slider-points .bar {
    width: 40px;
    height: 2px;
    margin: 0 20px;
  }
}
@media (max-width: 991.98px) {
  .block-projects-carousel .slider-points {
    bottom: 22vh;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slider-points {
    bottom: unset;
    top: 17vh;
  }
}
.block-projects-carousel__slider {
  width: 1200px;
  max-width: 100%;
}
.block-projects-carousel__slider .slick-arrow {
  top: auto;
  bottom: -120px;
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.04);
  border-radius: 50% 0 0 50%;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slider .slick-arrow:before {
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slider .slick-arrow:hover {
  background: #000000;
}
.block-projects-carousel__slider .slick-arrow:hover:before {
  border-color: #FFFFFF !important;
}
.block-projects-carousel__slider .slick-arrow.slick-disabled:hover {
  background: rgba(0, 0, 0, 0.04);
  cursor: default;
}
.block-projects-carousel__slider .slick-arrow.slick-disabled:hover:before {
  border-color: #000000 !important;
}
.block-projects-carousel__slider .slick-arrow.slick-prev {
  left: 50%;
  transform: translateX(calc(-100% - 50px));
  border-radius: 50% 0 0 50%;
}
.block-projects-carousel__slider .slick-arrow.slick-prev:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-135deg);
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slider .slick-arrow.slick-prev {
    transform: translateX(-100%);
  }
}
.block-projects-carousel__slider .slick-arrow.slick-next {
  right: 50%;
  transform: translateX(calc(100% - 50px));
  border-radius: 0 50% 50% 0;
}
.block-projects-carousel__slider .slick-arrow.slick-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slider .slick-arrow.slick-next {
    transform: translateX(100%);
  }
}
@media (max-width: 991.98px) {
  .block-projects-carousel__slider .slick-arrow {
    bottom: -90px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slider {
    width: 540px;
  }
  .block-projects-carousel__slider .slick-arrow {
    bottom: -40px;
  }
}
.block-projects-carousel__slide {
  position: relative;
  max-width: 100%;
}
.block-projects-carousel__slide .text {
  transition: 0s !important;
}
.block-projects-carousel__slide .text .title {
  opacity: 1;
  mix-blend-mode: difference;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-25%, -50%);
  color: #FFFFFF;
  text-align: right;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slide .text .title h2, .block-projects-carousel__slide .text .title .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-weight: 400;
  line-height: 100%; /* 5rem */
  letter-spacing: 0.25rem;
  max-width: 550px;
  width: 550px;
}
.block-projects-carousel__slide .text .title h3, .block-projects-carousel__slide .text .title .h3 {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.075rem;
}
.block-projects-carousel__slide .text .claim {
  opacity: 1;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(40%, -30%);
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
  align-items: center;
  color: #000000;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 2.7rem */
  letter-spacing: 0.075rem;
  text-transform: uppercase;
  max-width: 480px;
  display: flex;
  background: transparent;
  flex-wrap: wrap;
}
.block-projects-carousel__slide .text .claim h4 span, .block-projects-carousel__slide .text .claim .h4 span {
  padding: 0rem 0.3125rem;
  font-family: "Bodoni Moda", serif;
  background: #FFFFFF;
  display: block;
  margin-bottom: 8px;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
    max-width: 50vw;
    justify-content: flex-end;
  }
}
.block-projects-carousel__slide .thumb {
  background-size: cover;
  border: 20px solid white;
  transition: 0s !important;
}
.block-projects-carousel__slide .thumb .img-container {
  display: flex;
  justify-content: center;
  width: 100%;
  align-items: flex-start;
}
.block-projects-carousel__slide .thumb .img-container:hover {
  cursor: url("/wp-content/themes/vegans/images/svg/cursor.svg"), auto;
}
.block-projects-carousel__slide .thumb .img-container .img-height-constraint {
  height: 100%;
  overflow: hidden;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.block-projects-carousel__slide .thumb .img-container img {
  width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .thumb {
    border: 10px solid white;
  }
}
.block-projects-carousel__slide {
  position: relative;
  flex-direction: column;
}
.block-projects-carousel__slide > a {
  display: flex;
  flex-direction: column;
  align-items: center !important;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.block-projects-carousel__slide .text .title {
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slide .text .title {
    top: 30%;
    left: 40px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .title {
    top: 20%;
    left: 20px;
    transform: none;
  }
  .block-projects-carousel__slide .text .title h2, .block-projects-carousel__slide .text .title .h2 {
    font-size: 2.5rem;
    line-height: 100%; /* 2.5rem */
    letter-spacing: 0.125rem;
    max-width: 70vw;
    width: 70vw;
    text-align: left;
  }
  .block-projects-carousel__slide .text .title h3, .block-projects-carousel__slide .text .title .h3 {
    font-size: 0.875rem;
    letter-spacing: 0.04375rem;
  }
}
.block-projects-carousel__slide .text .claim {
  transform: translate(0);
  max-width: 75%;
  text-align: left;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slide .text .claim {
    top: 70%;
    right: 40px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .claim {
    top: 110%;
    right: 20px;
    transform: translateY(-50%);
  }
  .block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
    font-size: 1.125rem;
    line-height: 180%; /* 2.025rem */
    letter-spacing: 0.05625rem;
    max-width: 80vw;
  }
}
.block-projects-carousel__slide .thumb {
  width: 80%;
  max-width: 770px;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .thumb .img-container,
  .block-projects-carousel__slide .thumb .img-container img {
    aspect-ratio: 1 !important;
  }
  .block-projects-carousel__slide .thumb .img-container img {
    object-fit: cover;
    object-position: top left;
  }
}
.block-projects-carousel .slick-slide {
  opacity: 1 !important;
  z-index: 3 !important;
  transition: opacity 0s !important;
}
.block-projects-carousel .slick-slide.slick-active {
  z-index: 5 !important;
}
.block-projects-carousel .slick-slide.transition-from {
  z-index: 4 !important;
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slide {
    padding-bottom: 110px;
  }
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active), .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title, .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim, .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-active, .block-projects-carousel .slick-slider.from-bottom .slick-active {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top .slick-active .text,
.block-projects-carousel .slick-slider.from-top .slick-active .thumb, .block-projects-carousel .slick-slider.from-bottom .slick-active .text,
.block-projects-carousel .slick-slider.from-bottom .slick-active .thumb {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-active .thumb .img-container .img-height-constraint, .block-projects-carousel .slick-slider.from-bottom .slick-active .thumb .img-container .img-height-constraint {
  height: 0;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active {
  background: transparent;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .text,
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .thumb, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .text,
.block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .thumb {
  opacity: 1;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .thumb .img-container .img-height-constraint, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .thumb .img-container .img-height-constraint {
  height: 100%;
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide .thumb .img-container {
  align-items: flex-end !important;
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide .thumb .img-container .img-height-constraint {
  align-items: flex-end !important;
}
.block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
  transform: translate(0, 150px);
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
    transform: translate(0, 50px);
  }
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-top .slick-slide .thumb .img-container {
  align-items: flex-start !important;
}
.block-projects-carousel .slick-slider.from-top .slick-slide .thumb .img-container .img-height-constraint {
  align-items: flex-start !important;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim {
  transform: translate(0, -150px);
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim {
    transform: translate(0, -50px);
  }
}
@media (min-width: 1200px) {
  .block-projects-carousel .carousel-container {
    max-width: calc(100% - 60px);
    padding: 0 20px;
  }
}
.block-projects-carousel[data-standalone="1"] .slider-points {
  position: absolute;
  bottom: min(120px, 10vh);
  width: 200px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow {
  margin: 0;
  transform: rotate(-90deg);
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:hover {
  transform: scale(1) rotate(-90deg);
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:first-child {
  margin-right: 20px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:last-child {
  margin-left: 20px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .bar {
  width: 40px;
  height: 2px;
  margin: 0 20px;
}
@media (max-width: 991.98px) {
  .block-projects-carousel[data-standalone="1"] .slider-points {
    bottom: 220px;
  }
}

html body .block-fullwidth-title-cta {
  z-index: 50;
  color: #FFFFFF;
  background-color: #121212;
}
html body .block-fullwidth-title-cta h4, html body .block-fullwidth-title-cta .h4 {
  text-align: right;
  font-size: 5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
}
html body .block-fullwidth-title-cta h4 strong, html body .block-fullwidth-title-cta .h4 strong, html body .block-fullwidth-title-cta h4 span, html body .block-fullwidth-title-cta .h4 span {
  display: inline-block;
  margin-right: -2rem;
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 6rem */
  letter-spacing: 0.25rem;
}
@media (max-width: 575.98px) {
  html body .block-fullwidth-title-cta h4 strong, html body .block-fullwidth-title-cta .h4 strong, html body .block-fullwidth-title-cta h4 span, html body .block-fullwidth-title-cta .h4 span {
    margin-right: 0;
  }
}
html body .block-fullwidth-title-cta a {
  display: inline-block;
  width: auto;
  padding: 10px;
  margin-left: 50%;
  transform: translate(-50%, 5rem);
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 1.05rem */
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  html body .block-fullwidth-title-cta {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  html body .block-fullwidth-title-cta h4, html body .block-fullwidth-title-cta .h4, html body .block-fullwidth-title-cta h4 span, html body .block-fullwidth-title-cta .h4 span {
    font-size: 3.5rem;
    line-height: 120%;
  }
}
@media (max-width: 575.98px) {
  html body .block-fullwidth-title-cta h4, html body .block-fullwidth-title-cta .h4, html body .block-fullwidth-title-cta h4 span, html body .block-fullwidth-title-cta .h4 span, html body .block-fullwidth-title-cta h4 strong, html body .block-fullwidth-title-cta .h4 strong {
    font-size: 2.5rem;
    line-height: 120%;
  }
}

html body .block-2-col-title-cta {
  padding: 10%;
  height: auto;
  min-height: 90vh;
}
html body .block-2-col-title-cta .content-container {
  width: 100%;
  max-width: 1160px;
}
html body .block-2-col-title-cta h4, html body .block-2-col-title-cta .h4 {
  text-align: left;
}
html body .block-2-col-title-cta h4 span, html body .block-2-col-title-cta .h4 span {
  margin-right: 0;
}
html body .block-2-col-title-cta h4 strong, html body .block-2-col-title-cta .h4 strong {
  font-family: "Bodoni Moda", serif;
  font-weight: 400;
}
html body .block-2-col-title-cta a {
  transform: none;
  margin-top: 80px;
  margin-left: 0;
}
@media (max-width: 991.98px) {
  html body .block-2-col-title-cta {
    padding: 80px 10% 270px;
    min-height: 0;
  }
  html body .block-2-col-title-cta .inner-col:not(:last-child) {
    margin-bottom: 80px;
  }
  html body .block-2-col-title-cta h4, html body .block-2-col-title-cta .h4 {
    font-size: 2.5rem;
  }
  html body .block-2-col-title-cta a {
    margin-top: 40px;
  }
}
@media (max-width: 767.98px) {
  html body .block-2-col-title-cta {
    padding: 120px 20px 270px;
    height: 100vh;
  }
}
@media (max-width: 575.98px) {
  html body .block-2-col-title-cta {
    height: auto;
    padding: 50px 20px 100px;
  }
}

@media (max-width: 575.98px) {
  html body.footer-inset .block-2-col-title-cta {
    padding: 50px 20px min(30vh, 300px);
  }
}

html body .block-2-quotes-carousel {
  overflow: hidden;
}
@media (min-width: 992px) {
  html body .block-2-quotes-carousel #vertical-shifting-text {
    display: flex !important;
  }
  html body .block-2-quotes-carousel #text-stripe-positions {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel #vertical-shifting-text {
    width: 100vw !important;
    height: auto !important;
  }
  html body .block-2-quotes-carousel #vertical-shifting-text h1, html body .block-2-quotes-carousel #vertical-shifting-text .h1, html body .block-2-quotes-carousel #vertical-shifting-text h2, html body .block-2-quotes-carousel #vertical-shifting-text .h2, html body .block-2-quotes-carousel #vertical-shifting-text h3, html body .block-2-quotes-carousel #vertical-shifting-text .h3, html body .block-2-quotes-carousel #vertical-shifting-text h4, html body .block-2-quotes-carousel #vertical-shifting-text .h4, html body .block-2-quotes-carousel #vertical-shifting-text h5, html body .block-2-quotes-carousel #vertical-shifting-text .h5, html body .block-2-quotes-carousel #vertical-shifting-text h6, html body .block-2-quotes-carousel #vertical-shifting-text .h6 {
    font-size: 1.875rem !important;
  }
  html body .block-2-quotes-carousel #text-stripe-positions {
    display: block !important;
  }
}
html body .block-2-quotes-carousel #vertical-shifting-text {
  z-index: 100;
  padding-left: 15vw;
  margin-right: -1px;
}
html body .block-2-quotes-carousel #vertical-shifting-text > div {
  transform: rotate(-90deg);
  text-align: center;
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel #vertical-shifting-text > div {
    transform: unset;
  }
}
html body .block-2-quotes-carousel #vertical-shifting-text h2, html body .block-2-quotes-carousel #vertical-shifting-text .h2, html body .block-2-quotes-carousel #vertical-shifting-text h3, html body .block-2-quotes-carousel #vertical-shifting-text .h3 {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  color: #FFFFFF;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
}
html body .block-2-quotes-carousel #vertical-shifting-text .first, html body .block-2-quotes-carousel #vertical-shifting-text .first h2, html body .block-2-quotes-carousel #vertical-shifting-text .first .h2, html body .block-2-quotes-carousel #vertical-shifting-text .first h3, html body .block-2-quotes-carousel #vertical-shifting-text .first .h3 {
  font-family: "neue-montreal", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
}
html body .block-2-quotes-carousel #vertical-shifting-text .first {
  -webkit-animation: shifting-first 20s linear 1ms infinite;
  animation: shifting-first 20s linear 1ms infinite;
}
html body .block-2-quotes-carousel #vertical-shifting-text .second {
  -webkit-animation: shifting-second 20s linear 1ms infinite;
  animation: shifting-second 20s linear 1ms infinite;
}
@-webkit-keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
@media (max-width: 1199.98px) {
  html body .block-2-quotes-carousel #vertical-shifting-text {
    padding-left: 5vw;
  }
}
html body .block-2-quotes-carousel #text-stripe-positions {
  overflow: hidden;
  overflow: unset;
  margin-top: 0;
  margin-left: 0;
  padding-top: 5rem;
}
html body .block-2-quotes-carousel #text-stripe-positions p {
  white-space: nowrap;
  margin: 4rem 0 3rem -2rem;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
  -webkit-animation: scrolling 30s linear infinite;
  animation: scrolling 30s linear infinite;
  animation-direction: reverse;
}
@media (max-width: 1199.98px) {
  html body .block-2-quotes-carousel #text-stripe-positions p {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767.98px) {
  html body .block-2-quotes-carousel #text-stripe-positions p {
    font-size: 1.875rem;
  }
}
html body .block-2-quotes-carousel #text-stripe-positions p span {
  display: inline-block;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@-webkit-keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@media (max-width: 767.98px) {
  html body .block-2-quotes-carousel #text-stripe-positions {
    padding-top: 0;
  }
}
html body .block-2-quotes-carousel #text-stripe-positions p {
  color: #FFFFFF;
}
html body .block-2-quotes-carousel .slider-container {
  max-width: 960px;
  margin: 0 auto 0 0;
}
@media all and (max-width: 1500px) {
  html body .block-2-quotes-carousel .slider-container {
    max-width: 768px;
  }
}
@media (max-width: 767.98px) {
  html body .block-2-quotes-carousel .slider-container {
    width: 90vw;
    margin: 0 auto;
  }
}
html body .block-2-quotes-carousel .slide {
  color: #FFFFFF;
  display: flex !important;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 1199.98px) {
  html body .block-2-quotes-carousel .slide {
    min-width: 60vw;
  }
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel .slide {
    top: 60%;
  }
}
html body .block-2-quotes-carousel .slide .guillemet {
  display: inline-flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel .slide .guillemet {
    margin-bottom: 3rem;
  }
}
html body .block-2-quotes-carousel .slide .guillemet:first-child {
  align-items: flex-start;
}
html body .block-2-quotes-carousel .slide .guillemet:last-child {
  align-items: flex-end;
}
html body .block-2-quotes-carousel .slide .guillemet:last-child p {
  text-align: right;
}
html body .block-2-quotes-carousel .slide .guillemet:last-child p span {
  margin-left: auto;
}
html body .block-2-quotes-carousel .slide .guillemet p {
  max-width: 45%;
  color: #FFFFFF;
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 2.7rem */
  letter-spacing: 0.075rem;
}
@media (max-width: 1199.98px) {
  html body .block-2-quotes-carousel .slide .guillemet p {
    max-width: 60%;
  }
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel .slide .guillemet p {
    max-width: unset;
  }
}
@media (max-width: 767.98px) {
  html body .block-2-quotes-carousel .slide .guillemet p {
    font-size: 1.25rem;
  }
}
html body .block-2-quotes-carousel .slide .guillemet p span {
  display: block;
  width: 10rem;
  height: auto;
  margin-bottom: 1.25rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: center;
  background-color: #FFFFFF;
}
html body .block-2-quotes-carousel .slide .guillemet p strong {
  display: block;
  margin-top: 1rem;
  color: #FFF;
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.7rem */
  letter-spacing: 0.075rem;
}
@media (max-width: 991.98px) {
  html body .block-2-quotes-carousel {
    height: auto;
  }
  html body .block-2-quotes-carousel #text-stripe-positions {
    display: none !important;
  }
  html body .block-2-quotes-carousel .cont .row {
    padding: 50px 0 100px 0;
  }
  html body .block-2-quotes-carousel .cont .row #vertical-shifting-text {
    padding-bottom: 50px;
  }
}
html body .block-2-quotes-carousel._light {
  background: lightgrey;
}
html body .block-2-quotes-carousel._light * {
  color: #000000 !important;
}
html body .block-2-quotes-carousel._light .slick-arrow {
  border-color: #000000 !important;
}
html body .block-2-quotes-carousel._light .slick-arrow svg path {
  stroke: #000000;
}
html body .block-2-quotes-carousel._light .guillemet span {
  background: #000000 !important;
}
html body .block-2-quotes-carousel._light .guillemet span svg path {
  fill: lightgrey;
}
html body .block-2-quotes-carousel._light .slider-container .slick-dots li button:before {
  background: #000000 !important;
}

.block-page-hero {
  z-index: 20;
  background-color: #121212;
  min-height: 100vh;
  height: auto;
}
.block-page-hero .content {
  max-width: 660px;
  margin: -7rem auto 0 auto;
}
.block-page-hero .content:not(.first-letter-normal):first-letter, .block-page-hero .content p:not(.first-letter-normal):first-letter {
  font-family: "Bodoni Moda", serif;
  /*font-size: 5rem;*/
  font-style: normal;
  font-weight: 400;
}
@media (max-width: 1199.98px) {
  .block-page-hero .content:not(.first-letter-normal):first-letter, .block-page-hero .content p:not(.first-letter-normal):first-letter {
    /* font-size: 4rem;*/
  }
}
@media (max-width: 767.98px) {
  .block-page-hero .content:not(.first-letter-normal):first-letter, .block-page-hero .content p:not(.first-letter-normal):first-letter {
    /*font-size: 3rem;*/
  }
}
.block-page-hero .content:not(.first-letter-normal) > span:first-child, .block-page-hero .content p:not(.first-letter-normal) > span:first-child {
  padding-top: 2.5rem;
}
@media (max-width: 767.98px) {
  .block-page-hero .content:not(.first-letter-normal) > span:first-child, .block-page-hero .content p:not(.first-letter-normal) > span:first-child {
    padding-top: 1.25rem;
  }
}
.block-page-hero .content p {
  transform: none;
  text-align: justify;
}
@media (max-width: 991.98px) {
  .block-page-hero .content {
    margin: -2rem 7vw 0 7vw;
  }
  .block-page-hero .content p {
    margin: 0;
    width: 100%;
    max-width: 660px;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero .content {
    margin: 0 20px 0 20px;
  }
}
.block-page-hero .form {
  margin-left: 50%;
  padding-right: 5% !important;
  max-width: 80rem;
  max-width: 660px;
  padding: 0 !important;
  margin-top: 4rem;
  margin-left: auto;
  margin-right: 200px;
}
@media (max-width: 991.98px) {
  .block-page-hero .form {
    width: 90vw !important;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 991.98px) {
  .block-page-hero .form {
    margin: 4rem 7vw 0;
    width: auto !important;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero .form {
    margin: 4rem 20px 0;
  }
}
.block-page-hero .title-subtitle-wrapper {
  position: relative;
  top: 0;
  padding: 100px 0 200px;
  transform: none;
  left: 0;
  top: 0;
}
.block-page-hero > div {
  position: absolute;
  top: 3rem;
  left: 50%;
  transform: translateX(-50%);
  position: relative;
  left: unset;
  top: 50%;
  transform: translateY(-50%);
}
.block-page-hero > div .title h1, .block-page-hero > div .title .h1, .block-page-hero > div .title h2, .block-page-hero > div .title .h2, .block-page-hero > div .title h3, .block-page-hero > div .title .h3, .block-page-hero > div .title h4, .block-page-hero > div .title .h4, .block-page-hero > div .title h5, .block-page-hero > div .title .h5, .block-page-hero > div .title h6, .block-page-hero > div .title .h6 {
  opacity: 0.1;
  color: #FFFFFF;
  text-align: center;
  font-family: "Bodoni Moda", serif !important;
  font-size: 20vw;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  font-size: 17.5rem;
  margin-top: -50px;
}
@media (max-width: 767.98px) {
  .block-page-hero > div .title h1, .block-page-hero > div .title .h1, .block-page-hero > div .title h2, .block-page-hero > div .title .h2, .block-page-hero > div .title h3, .block-page-hero > div .title .h3, .block-page-hero > div .title h4, .block-page-hero > div .title .h4, .block-page-hero > div .title h5, .block-page-hero > div .title .h5, .block-page-hero > div .title h6, .block-page-hero > div .title .h6 {
    opacity: 0.2;
  }
}
@media (max-width: 991.98px) {
  .block-page-hero > div .title h1, .block-page-hero > div .title .h1, .block-page-hero > div .title h2, .block-page-hero > div .title .h2, .block-page-hero > div .title h3, .block-page-hero > div .title .h3, .block-page-hero > div .title h4, .block-page-hero > div .title .h4, .block-page-hero > div .title h5, .block-page-hero > div .title .h5, .block-page-hero > div .title h6, .block-page-hero > div .title .h6 {
    font-size: 15vw;
    margin-left: 7vw;
    text-align: center;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero > div .title h1, .block-page-hero > div .title .h1, .block-page-hero > div .title h2, .block-page-hero > div .title .h2, .block-page-hero > div .title h3, .block-page-hero > div .title .h3, .block-page-hero > div .title h4, .block-page-hero > div .title .h4, .block-page-hero > div .title h5, .block-page-hero > div .title .h5, .block-page-hero > div .title h6, .block-page-hero > div .title .h6 {
    margin: 0 20px;
    font-size: max(12vw, 80px);
  }
}
@media (max-width: 575.98px) {
  .block-page-hero > div .title h1, .block-page-hero > div .title .h1, .block-page-hero > div .title h2, .block-page-hero > div .title .h2, .block-page-hero > div .title h3, .block-page-hero > div .title .h3, .block-page-hero > div .title h4, .block-page-hero > div .title .h4, .block-page-hero > div .title h5, .block-page-hero > div .title .h5, .block-page-hero > div .title h6, .block-page-hero > div .title .h6 {
    font-size: 16vw;
    letter-spacing: 0;
    width: 90%;
    margin: 0 auto;
  }
}
.block-page-hero > div p {
  color: #FFFFFF;
  margin-left: auto;
  margin-right: auto;
}
.block-page-hero > div p:not(:last-child) {
  margin-bottom: 34px;
}
.block-page-hero > div h2, .block-page-hero > div .h2 {
  direction: rtl;
}
.block-page-hero > div .title + .subtitle {
  margin-top: -10rem;
}
@media (max-width: 1599.98px) {
  .block-page-hero > div .title + .subtitle {
    margin-top: -11vw;
  }
}
@media (max-width: 991.98px) {
  .block-page-hero > div .title + .subtitle {
    margin-top: -1rem;
  }
}
.block-page-hero > div .subtitle {
  position: relative;
  left: 50%;
  transform: translateX(-45%);
  width: 90vw;
  max-width: 1000px;
  direction: rtl;
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@media (max-width: 991.98px) {
  .block-page-hero > div .subtitle {
    margin: -1rem auto 0 7vw;
    left: 0;
    transform: none;
    width: auto;
  }
  .block-page-hero > div .subtitle h1, .block-page-hero > div .subtitle .h1, .block-page-hero > div .subtitle h2, .block-page-hero > div .subtitle .h2, .block-page-hero > div .subtitle h3, .block-page-hero > div .subtitle .h3, .block-page-hero > div .subtitle h4, .block-page-hero > div .subtitle .h4, .block-page-hero > div .subtitle h5, .block-page-hero > div .subtitle .h5, .block-page-hero > div .subtitle h6, .block-page-hero > div .subtitle .h6 {
    max-width: 660px;
    width: 100%;
    margin: 0 auto;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero > div .subtitle {
    margin: 0 20px;
  }
  .block-page-hero > div .subtitle h1, .block-page-hero > div .subtitle .h1, .block-page-hero > div .subtitle h2, .block-page-hero > div .subtitle .h2, .block-page-hero > div .subtitle h3, .block-page-hero > div .subtitle .h3, .block-page-hero > div .subtitle h4, .block-page-hero > div .subtitle .h4, .block-page-hero > div .subtitle h5, .block-page-hero > div .subtitle .h5, .block-page-hero > div .subtitle h6, .block-page-hero > div .subtitle .h6 {
    max-width: 460px;
    margin: 0 auto;
  }
}
@media (max-width: 1399.98px) {
  .block-page-hero > div .subtitle, .block-page-hero > div .subtitle span {
    margin-left: 0;
    font-size: 5rem;
  }
}
.block-page-hero > div .subtitle span {
  margin-left: 0 !important;
  font-family: "Bodoni Moda", serif;
  font-weight: 400;
}
.block-page-hero > div .subtitle, .block-page-hero > div .subtitle span {
  font-size: 5rem;
  font-style: normal;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
}
@media (max-width: 1399.98px) {
  .block-page-hero > div .subtitle, .block-page-hero > div .subtitle span {
    margin-left: 7vw;
    font-size: 6vw;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero > div .subtitle, .block-page-hero > div .subtitle span {
    width: 90vw !important;
    margin-left: auto;
    margin-right: auto;
    font-size: 2.5rem;
  }
}
@media (max-width: 575.98px) {
  .block-page-hero > div .subtitle, .block-page-hero > div .subtitle span {
    font-size: 10vw;
  }
}
.block-page-hero > div .subtitle b,
.block-page-hero > div .subtitle strong {
  font-weight: 400;
  font-family: "Bodoni Moda", serif;
}
.block-page-hero .iso-certificates {
  max-width: 660px;
  margin: 1rem auto 0;
  text-align: right;
}
.block-page-hero .iso-certificates p {
  margin: 0 0 0 3rem;
  color: rgba(255, 255, 255, 0.4);
  font-size: 0.65rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .block-page-hero .iso-certificates {
    flex-direction: column;
    width: 100%;
    text-align: center;
  }
  .block-page-hero .iso-certificates p {
    margin-left: 0;
    margin-right: 0;
  }
  .block-page-hero .iso-certificates p:first-child {
    margin-bottom: 1rem;
  }
  .block-page-hero .iso-certificates p br {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .block-page-hero {
    height: auto;
    min-height: 0;
  }
  .block-page-hero:not(:last-child) {
    padding-bottom: 100px;
  }
  .block-page-hero .title-subtitle-wrapper {
    padding: 130px 0 0;
    transform: none;
    position: static;
  }
}
@media (max-width: 575.98px) {
  .block-page-hero:not(:last-child) {
    padding-bottom: 50px;
  }
}

.block-bulletpoints-follow-through {
  position: relative;
  overflow: hidden;
}
.block-bulletpoints-follow-through__bg {
  position: absolute;
  top: -100vh;
  left: 0;
  height: 100vh;
  width: 100vw;
  will-change: transform;
}
.block-bulletpoints-follow-through__intro-text {
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
  will-change: transform;
}
.block-bulletpoints-follow-through__intro-text p {
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  color: #FFFFFF;
}
.block-bulletpoints-follow-through__intro-text .dot {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}
.block-bulletpoints-follow-through__intro-text .dot.hidden {
  opacity: 0;
  pointer-events: none;
}
.block-bulletpoints-follow-through__intro-text.fully-visible {
  transition: opacity 0.3s ease-in-out;
  opacity: 1 !important;
}
@media (max-width: 1199.98px) {
  .block-bulletpoints-follow-through__intro-text {
    justify-content: flex-start;
    padding-left: 52px;
  }
  .block-bulletpoints-follow-through__intro-text .dot {
    justify-content: flex-start;
  }
  .block-bulletpoints-follow-through__intro-text p {
    width: 100%;
    text-align: justify;
  }
}
@media (max-width: 767.98px) {
  .block-bulletpoints-follow-through__intro-text {
    height: auto;
    padding: 130px 20px 0;
  }
}
.block-bulletpoints-follow-through .main-rail {
  position: relative;
  z-index: 2;
  padding-bottom: 20vh;
}
.block-bulletpoints-follow-through .bulletpoint {
  position: relative;
  opacity: 0.1;
}
.block-bulletpoints-follow-through .bulletpoint > div {
  width: 100% !important;
  min-height: 60vh;
  padding: 100px 0;
}
@media (max-width: 991.98px) {
  .block-bulletpoints-follow-through .bulletpoint > div {
    min-height: unset;
    padding: 50px 0;
  }
}
.block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2 {
  width: 50vw;
  padding-right: 2rem;
}
.block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2, .block-bulletpoints-follow-through .bulletpoint h2 p, .block-bulletpoints-follow-through .bulletpoint .h2 p {
  color: #000000;
  text-align: right;
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
  text-transform: capitalize;
}
@media (max-width: 1399.98px) {
  .block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2, .block-bulletpoints-follow-through .bulletpoint h2 p, .block-bulletpoints-follow-through .bulletpoint .h2 p {
    font-size: 4rem;
    line-height: 120%;
  }
}
@media (max-width: 767.98px) {
  .block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2, .block-bulletpoints-follow-through .bulletpoint h2 p, .block-bulletpoints-follow-through .bulletpoint .h2 p {
    font-size: 10vw;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc {
  width: 50vw;
  padding-left: 2rem;
  position: relative;
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc ul {
  overflow: hidden;
  position: relative;
  display: block;
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .cta {
  display: inline-block;
  width: auto;
  padding: 10px;
  position: absolute;
  bottom: -108px;
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet {
  display: inline-block;
  margin: 0.2rem 0 0.2rem -0.8rem;
  padding: 0 4px 0 0;
  color: #000000;
  background-color: #FFFFFF;
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet {
    padding: 0 6px 0 0;
    width: 100%;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner {
  display: inline-flex;
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner > span {
    display: flex;
    flex-wrap: wrap;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner:not(:last-child) {
  padding-right: 4px;
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner:not(:last-child) {
    padding-right: 6px;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner:before {
  content: "/";
  display: inline-block;
  padding: 0 4px 0 0;
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.075rem;
  text-transform: uppercase;
}
@media (max-width: 1399.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner:before {
    font-size: 1.25rem;
    line-height: 150%;
  }
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_inner:before {
    letter-spacing: 0.05rem;
    padding: 0 6px 0 0;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_part {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0.075rem;
  text-transform: uppercase;
}
@media (max-width: 1399.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_part {
    font-size: 1.25rem;
    line-height: 150%;
  }
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_part {
    letter-spacing: 0.05rem;
  }
}
.block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet_part:not(:last-child) {
  padding-right: 6px;
}
@media (max-width: 575.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc .bullet {
    padding: 0.25rem 0.72rem 0.25rem 0;
    margin: 0.2rem 0 0.2rem -0.7rem;
    display: inline-flex;
    flex-wrap: wrap;
  }
}
@media (max-width: 1199.98px) {
  .block-bulletpoints-follow-through .bulletpoint div.slide-desc {
    margin-top: 2rem;
  }
}
.block-bulletpoints-follow-through .bulletpoint .dot:before, .block-bulletpoints-follow-through .bulletpoint .dot:after {
  content: "";
  height: calc(50% - 8px);
  width: 1px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
}
.block-bulletpoints-follow-through .bulletpoint .dot:before {
  top: 0;
}
.block-bulletpoints-follow-through .bulletpoint .dot:after {
  bottom: 0;
}
.block-bulletpoints-follow-through .bulletpoint.active {
  opacity: 1;
}
.block-bulletpoints-follow-through .bulletpoint.active .dot:after {
  background: rgba(255, 255, 255, 0.1);
}
.block-bulletpoints-follow-through .bulletpoint:first-child .dot:before {
  content: none;
}
.block-bulletpoints-follow-through .bulletpoint:last-child .dot:after {
  content: none;
}
@media (max-width: 1199.98px) {
  .block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2, .block-bulletpoints-follow-through .bulletpoint div.slide-desc {
    width: 90%;
    margin-left: 10%;
    padding-left: 0;
    text-align: left;
  }
  .block-bulletpoints-follow-through .bulletpoint h2 p, .block-bulletpoints-follow-through .bulletpoint .h2 p {
    text-align: left;
  }
  .block-bulletpoints-follow-through .bulletpoint .dot {
    position: absolute;
    left: 60px;
    transform: translateX(-50%);
    top: 50%;
  }
  .block-bulletpoints-follow-through .bulletpoint .dot:before, .block-bulletpoints-follow-through .bulletpoint .dot:after {
    height: calc(30vh - 8px);
  }
  .block-bulletpoints-follow-through .bulletpoint .dot:before {
    top: 0;
    transform: translate(-50%, -100%);
  }
  .block-bulletpoints-follow-through .bulletpoint .dot:after {
    bottom: 0;
    transform: translate(-50%, 100%);
  }
}
@media (max-width: 767.98px) {
  .block-bulletpoints-follow-through .bulletpoint {
    padding: 0 20px 0 54px;
  }
  .block-bulletpoints-follow-through .bulletpoint h2, .block-bulletpoints-follow-through .bulletpoint .h2, .block-bulletpoints-follow-through .bulletpoint div.slide-desc {
    width: 100%;
    margin-left: 0;
  }
  .block-bulletpoints-follow-through .bulletpoint .dot {
    left: 26px;
  }
  .block-bulletpoints-follow-through .bulletpoint .dot:before, .block-bulletpoints-follow-through .bulletpoint .dot:after {
    height: calc(35vh - 8px);
  }
}
.block-bulletpoints-follow-through .floating-dot {
  position: absolute;
  top: 50vh;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}
.block-bulletpoints-follow-through .floating-dot .inner-cont {
  position: relative;
}
.block-bulletpoints-follow-through .floating-dot .inner-cont .bar-before,
.block-bulletpoints-follow-through .floating-dot .inner-cont .bar-after {
  content: "";
  height: 1px;
  width: 1px;
  display: block;
  position: absolute;
  left: 50%;
  background: rgba(255, 255, 255, 0.1);
}
.block-bulletpoints-follow-through .floating-dot .inner-cont .bar-before {
  background: white;
  top: 0;
  transform: translate(-50%, -100%);
}
.block-bulletpoints-follow-through .floating-dot .inner-cont .bar-after {
  bottom: 0;
  transform: translate(-50%, 100%);
}
.block-bulletpoints-follow-through .floating-dot.hidden {
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 1199.98px) {
  .block-bulletpoints-follow-through .floating-dot {
    left: 60px;
  }
}
@media (max-width: 767.98px) {
  .block-bulletpoints-follow-through .floating-dot {
    left: 26px;
  }
}
.block-bulletpoints-follow-through .white-dot svg circle {
  fill: #FFFFFF;
}
.block-bulletpoints-follow-through._dark .bulletpoint h2, .block-bulletpoints-follow-through._dark .bulletpoint .h2, .block-bulletpoints-follow-through._dark .bulletpoint h2 p, .block-bulletpoints-follow-through._dark .bulletpoint .h2 p {
  color: #FFFFFF;
}
.block-bulletpoints-follow-through.animation-done .bulletpoint {
  opacity: 1;
}
.block-bulletpoints-follow-through.animation-done .bulletpoint .dot:before, .block-bulletpoints-follow-through.animation-done .bulletpoint .dot:after {
  background: #FFFFFF;
}

html body .block-hero-claim #hero-claim {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100vh;
  z-index: 20;
  mix-blend-mode: difference;
  color: #FFFFFF;
  padding-left: 3rem;
  padding-right: 3rem;
  font-weight: 300;
  font-size: 6.25rem;
  line-height: 8.75rem; /* 140% */
  letter-spacing: 0;
}
html body .block-hero-claim #hero-claim.hidden {
  display: none !important;
}
html body .block-hero-claim #hero-claim em {
  display: block;
  font-family: "Bodoni Moda", serif !important;
  font-weight: 400;
}
@media (max-width: 991.98px) {
  html body .block-hero-claim #hero-claim, html body .block-hero-claim #hero-claim em {
    font-size: 4.5rem;
    line-height: 140%;
  }
}
@media (max-width: 767.98px) {
  html body .block-hero-claim #hero-claim {
    align-items: unset;
  }
  html body .block-hero-claim #hero-claim, html body .block-hero-claim #hero-claim em {
    font-size: 3.125rem;
    line-height: 140%;
    text-align: left;
  }
  html body .block-hero-claim #hero-claim h1, html body .block-hero-claim #hero-claim .h1 {
    max-width: 420px;
  }
  html body .block-hero-claim #hero-claim br {
    display: none;
  }
}
@media (max-width: 575.98px) {
  html body .block-hero-claim #hero-claim {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  html body .block-hero-claim #hero-claim, html body .block-hero-claim #hero-claim em {
    letter-spacing: 0;
  }
}
html body .block-hero-claim #hero-bright-panel {
  background-color: #E5E5E5;
  position: relative;
  z-index: 20;
}
html body .block-hero-claim #home-background {
  will-change: transform;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 15;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
html body .block-hero-claim #home-background.hidden {
  display: none !important;
}
html body .block-hero-claim #home-background .o-container {
  width: 100%;
  height: 100%;
}
html body .block-hero-claim #home-background img {
  display: none !important;
}

html body.manifesto .block-horizontal-animated-container #vertical-shifting-text {
  z-index: 100;
  padding-left: 0 !important;
  margin-right: 5vw;
}

.desktop-only {
  display: block;
}
@media screen and (max-width: 992px) {
  .desktop-only {
    display: none !important;
  }
}

.mobile-only {
  display: none !important;
}
@media screen and (max-width: 992px) {
  .mobile-only {
    display: block !important;
  }
}

html body .block-horizontal-animated-container .horizontal-container-text {
  width: 50vw;
  height: 100vh;
}
html body .block-horizontal-animated-container .horizontal-container-text.dark {
  color: #FFFFFF;
  background-color: #121212;
}
html body .block-horizontal-animated-container .horizontal-container-text.light {
  color: #000000;
  background-color: #E5E5E5;
  border-color: #E5E5E5;
  border-width: 0 1px;
}
html body .block-horizontal-animated-container #home-side-fading-text.section-main-text .text-type-post {
  opacity: 0;
  text-align: right;
  direction: rtl;
  display: block;
}
html body .block-horizontal-animated-container #home-side-fading-text {
  text-align: right;
}
html body .block-horizontal-animated-container #vertical-shifting-text {
  z-index: 100;
  padding-left: 5vw;
  margin-right: -1px;
}
html body .block-horizontal-animated-container #vertical-shifting-text > div {
  transform: rotate(-90deg);
  text-align: center;
}
@media (max-width: 991.98px) {
  html body .block-horizontal-animated-container #vertical-shifting-text > div {
    transform: unset;
  }
}
html body .block-horizontal-animated-container #vertical-shifting-text h2, html body .block-horizontal-animated-container #vertical-shifting-text .h2, html body .block-horizontal-animated-container #vertical-shifting-text h3, html body .block-horizontal-animated-container #vertical-shifting-text .h3 {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
}
html body .block-horizontal-animated-container #vertical-shifting-text .first, html body .block-horizontal-animated-container #vertical-shifting-text .first h2, html body .block-horizontal-animated-container #vertical-shifting-text .first .h2, html body .block-horizontal-animated-container #vertical-shifting-text .first h3, html body .block-horizontal-animated-container #vertical-shifting-text .first .h3 {
  font-family: "neue-montreal", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
}
html body .block-horizontal-animated-container #vertical-shifting-text .first {
  -webkit-animation: shifting-first 20s linear 1ms infinite;
  animation: shifting-first 20s linear 1ms infinite;
}
html body .block-horizontal-animated-container #vertical-shifting-text .second {
  -webkit-animation: shifting-second 20s linear 1ms infinite;
  animation: shifting-second 20s linear 1ms infinite;
}
@-webkit-keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
html body .block-horizontal-animated-container .slider {
  position: relative;
}
html body .block-horizontal-animated-container .slider .text .title {
  mix-blend-mode: difference;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-25%, -50%);
  color: #FFFFFF;
  text-align: right;
}
html body .block-horizontal-animated-container .slider .text .title h2, html body .block-horizontal-animated-container .slider .text .title .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-weight: 400;
  line-height: 100%;
  /* 5rem */
  letter-spacing: 0.25rem;
}
html body .block-horizontal-animated-container .slider .text .title h3, html body .block-horizontal-animated-container .slider .text .title .h3 {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.075rem;
}
html body .block-horizontal-animated-container .slider .text .claim {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(40%, -30%);
}
html body .block-horizontal-animated-container .slider .text .claim h4, html body .block-horizontal-animated-container .slider .text .claim .h4 {
  display: inline;
  align-items: center;
  color: #000000;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  /* 2.7rem */
  letter-spacing: 0.075rem;
  text-transform: uppercase;
}
html body .block-horizontal-animated-container .slider .text .claim h4 span, html body .block-horizontal-animated-container .slider .text .claim .h4 span {
  padding: 0rem 0.3125rem;
  font-family: "Bodoni Moda", serif;
  background: #FFFFFF;
}
html body .block-horizontal-animated-container .slider .thumb {
  background-size: cover;
  border: 20px solid white;
}
html body .block-horizontal-animated-container .slider .thumb img {
  visibility: hidden;
}

html body:not(.fully-vertical) .block-horizontal-animated-container {
  display: flex;
  flex-wrap: nowrap;
  z-index: 40;
}
html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.spacer {
  display: none;
}
html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.fading-text {
  z-index: 50;
  width: 100% !important;
  height: auto !important;
  min-height: 80vh;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.fading-text #home-side-fading-text.section-main-text {
  width: 80% !important;
}
html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.fading-text #home-side-fading-text.section-main-text .text-type-post {
  opacity: 1;
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.fading-text {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
  html body.fully-vertical .block-horizontal-animated-container .horizontal-container-text.fading-text #home-side-fading-text.section-main-text {
    width: calc(100% - 40px) !important;
    max-width: 500px;
    margin: 0 auto !important;
  }
}
html body.fully-vertical .block-horizontal-animated-container #vertical-shifting-text {
  width: 100% !important;
  height: auto !important;
  padding-top: 8rem;
  padding-bottom: 7rem;
  padding-left: unset;
  margin-right: 0;
  margin-bottom: -1px;
}
html body.fully-vertical .block-horizontal-animated-container #vertical-shifting-text h3, html body.fully-vertical .block-horizontal-animated-container #vertical-shifting-text .h3 {
  position: relative;
  font-size: 1.875rem;
  line-height: normal;
  letter-spacing: 0;
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-container #vertical-shifting-text {
    padding-top: 6.25rem;
    padding-bottom: 0;
  }
}
html body.fully-vertical .block-horizontal-animated-container #slider-wrapper {
  z-index: 50;
}
@media (max-width: 1399.98px) {
  html body #slider-wrapper {
    padding-bottom: 55px;
  }
  html body #slider-wrapper .slider-points {
    bottom: -25px;
    transform: translateY(-50%);
  }
  html body #slider-wrapper,
  html body #slider-wrapper .block-projects-carousel,
  html body #slider-wrapper .block-projects-carousel > div {
    height: 100% !important;
  }
}
@media (max-width: 767.98px) {
  html body #slider-wrapper {
    padding-bottom: 100px;
  }
}

html body .block-horizontal-animated-container-2 #vertical-shifting-text {
  z-index: 100;
  padding-left: 0;
  margin-right: -1px;
}
html body .block-horizontal-animated-container-2 #vertical-shifting-text > div {
  transform: rotate(-90deg);
  text-align: center;
}
@media (max-width: 991.98px) {
  html body .block-horizontal-animated-container-2 #vertical-shifting-text > div {
    transform: unset;
  }
}
html body .block-horizontal-animated-container-2 #vertical-shifting-text h2, html body .block-horizontal-animated-container-2 #vertical-shifting-text .h2, html body .block-horizontal-animated-container-2 #vertical-shifting-text h3, html body .block-horizontal-animated-container-2 #vertical-shifting-text .h3 {
  position: relative;
  display: inline-block;
  white-space: nowrap;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
}
html body .block-horizontal-animated-container-2 #vertical-shifting-text .first, html body .block-horizontal-animated-container-2 #vertical-shifting-text .first h2, html body .block-horizontal-animated-container-2 #vertical-shifting-text .first .h2, html body .block-horizontal-animated-container-2 #vertical-shifting-text .first h3, html body .block-horizontal-animated-container-2 #vertical-shifting-text .first .h3 {
  font-family: "neue-montreal", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
}
html body .block-horizontal-animated-container-2 #vertical-shifting-text .first {
  -webkit-animation: shifting-first 20s linear 1ms infinite;
  animation: shifting-first 20s linear 1ms infinite;
}
html body .block-horizontal-animated-container-2 #vertical-shifting-text .second {
  -webkit-animation: shifting-second 20s linear 1ms infinite;
  animation: shifting-second 20s linear 1ms infinite;
}
@-webkit-keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-first {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-25%);
  }
  75% {
    transform: translateX(25%);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes shifting-second {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(25%);
  }
  75% {
    transform: translateX(-25%);
  }
  100% {
    transform: translateX(0);
  }
}
@media (max-width: 1199.98px) {
  html body .block-horizontal-animated-container-2 #vertical-shifting-text {
    padding-left: 5vw;
  }
}
@media (max-width: 991.98px) {
  html body .block-horizontal-animated-container-2 .horizontal-container-text {
    height: auto !important;
  }
}
html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) {
  padding: 0 max((100vw - 1600px) / 2, 30px);
  overflow: hidden;
}
@media (max-width: 991.98px) {
  html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) {
    flex-direction: column;
  }
}
html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .content-wrapper {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  transform: translateX(-5vw);
}
@media (max-width: 1199.98px) {
  html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .content-wrapper {
    transform: none;
  }
}
html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title {
  font-family: "Bodoni Moda", serif;
  font-style: normal;
  font-weight: 400;
  font-size: 3.75rem;
  line-height: 100%;
  letter-spacing: 0;
  margin-bottom: 60px;
}
html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h1, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h1, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h2, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h2, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h3, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h3, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h4, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h4, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h5, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h5, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title h6, html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .title .h6 {
  font-family: "Bodoni Moda", serif;
}
html body .block-horizontal-animated-container-2 .horizontal-container-text:not(.spacer) .content {
  max-width: 550px;
  margin-left: auto;
  font-family: "neue-montreal", serif;
  font-weight: 300;
  font-size: 18px;
  line-height: 180%;
  text-align: justify;
  letter-spacing: 0.05em;
}

@media (max-width: 1199.98px) {
  html body.fully-vertical .block-horizontal-animated-container-2 #vertical-shifting-text {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  html body.fully-vertical .block-horizontal-animated-container-2 #vertical-shifting-text + div {
    height: auto !important;
    padding-bottom: 100px;
  }
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-container-2 #vertical-shifting-text {
    padding-bottom: 50px;
  }
  html body.fully-vertical .block-horizontal-animated-container-2 #vertical-shifting-text + div {
    width: 100% !important;
  }
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-container-2 .horizontal-container-text {
    padding: 0 5vw;
  }
}

html body .block-horizontal-animated-timeline #vertical-shifting-text .first {
  bottom: -10rem;
}
@media (max-width: 991.98px) {
  html body .block-horizontal-animated-timeline #vertical-shifting-text .first {
    bottom: 2rem;
  }
}
html body .block-horizontal-animated-timeline .timeline {
  gap: max(9vw, 50px);
  margin: 0 max(30vw, 70px) 0 max(12.5vw, 70px);
}
html body .block-horizontal-animated-timeline .timeline .step {
  display: grid;
  grid-template-rows: 1fr auto 1fr;
  text-align: center;
  width: 430px;
}
html body .block-horizontal-animated-timeline .timeline .step__title {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-family: "Bodoni Moda", serif;
  font-style: normal;
  font-weight: 400;
  font-size: 5rem;
  line-height: 6rem;
  letter-spacing: 0;
  text-transform: capitalize;
  transform: translateY(20px);
}
html body .block-horizontal-animated-timeline .timeline .step__content .white-boxes {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: 40px;
  gap: 10px;
}
html body .block-horizontal-animated-timeline .timeline .step__content .white-boxes .white-box {
  background-color: #FFFFFF;
  padding: 0 10px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-family: "Bodoni Moda", serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 2.6875rem;
  letter-spacing: 0;
  text-transform: uppercase;
}
html body .block-horizontal-animated-timeline .timeline .step .events {
  justify-content: center;
  flex-direction: column;
  align-items: center;
  row-gap: 40px;
}
html body .block-horizontal-animated-timeline .timeline .step .events .event {
  text-align: center;
  flex: 1;
}
@media (max-width: 767.98px) {
  html body .block-horizontal-animated-timeline .timeline .step .events .event {
    text-align: left;
  }
}
html body .block-horizontal-animated-timeline .timeline .step .events .event__title {
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 0.875rem;
  letter-spacing: 0;
  text-transform: uppercase;
}
html body .block-horizontal-animated-timeline .timeline .step .events .event__separator {
  text-align: center;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 4.5rem;
  letter-spacing: 0;
  text-transform: capitalize;
}
html body .block-horizontal-animated-timeline .timeline .step .events .event__content {
  font-weight: 300;
  font-size: 1.25rem;
  line-height: 1.5rem;
  letter-spacing: 0;
}
html body .block-horizontal-animated-timeline .timeline .step .shady-dot {
  padding: 40px 0;
}
html body .block-horizontal-animated-timeline .timeline .step .shady-dot svg circle {
  fill: #b3b3b3;
}
html body .block-horizontal-animated-timeline .timeline .step .dot-fixed {
  opacity: 0;
  transition: opacity 1s;
  position: absolute;
  top: 50%;
  height: 1px;
  width: 100%;
}
html body .block-horizontal-animated-timeline .timeline .step .dot-fixed:before {
  opacity: 0;
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-100%);
  width: calc(100% + max(9vw, 50px));
  height: 1px;
  background-color: #000000;
  transition: opacity 1s;
}
html body .block-horizontal-animated-timeline .timeline .step .dot-fixed svg {
  position: absolute;
  transform: translate(-50%, -50%);
}
html body .block-horizontal-animated-timeline .timeline .step:first-child .dot-fixed:before {
  max-width: calc(50% + max(10vw, 70px));
}
html body .block-horizontal-animated-timeline .timeline .step.active .dot-fixed {
  opacity: 1;
}
html body .block-horizontal-animated-timeline .timeline .step.active .dot-fixed::before {
  opacity: 1;
}
html body .block-horizontal-animated-timeline .timeline .dot-track {
  position: absolute;
  top: 50%;
  right: min(-30vw, -70px);
  width: calc(100% + max(10vw, 70px) + max(30vw, 70px));
  height: 1px;
  background: rgba(0, 0, 0, 0.2);
}

html body.fully-vertical .block-horizontal-animated-timeline #vertical-shifting-text {
  padding-top: 4rem;
  padding-bottom: 0;
}
html body.fully-vertical .block-horizontal-animated-timeline .horizontal-container-text:last-of-type {
  width: 100% !important;
  height: auto !important;
  flex-direction: column;
}
html body.fully-vertical .block-horizontal-animated-timeline .horizontal-container-text:last-of-type > div:last-of-type {
  width: 100% !important;
  height: auto !important;
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-timeline .horizontal-container-text {
    height: auto !important;
  }
  html body.fully-vertical .block-horizontal-animated-timeline .horizontal-container-text .block-fullwidth-simple-content {
    height: auto;
  }
  html body.fully-vertical .block-horizontal-animated-timeline .horizontal-container-text .block-fullwidth-simple-content .section-main-text {
    padding: 0 20px 80px;
    width: auto;
  }
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline {
  flex-direction: column;
  margin: 50px auto;
  padding-left: 70px;
  overflow-y: hidden;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .dot-track {
  width: 1px;
  height: 100%;
  top: 0;
  right: unset;
  bottom: 0;
  left: 30px;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step {
  display: flex;
  flex-direction: column;
  width: auto;
  align-items: flex-start;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step:first-child.active .dot-fixed:before {
  content: unset;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step:first-child .dot-fixed:after {
  content: "";
  width: 2px;
  height: 100vh;
  transform: translateY(-100%);
  z-index: 3;
  background: #e5e5e5;
  position: absolute;
  left: 0;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step:last-child .shady-dot:after {
  content: "";
  width: 2px;
  height: 100vh;
  transform: translateY(8px);
  z-index: 1;
  background: #e5e5e5;
  position: absolute;
  left: -40px;
  top: 56px;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step .dot-fixed {
  top: 56px;
  width: 1px;
  height: 100%;
  left: -40px;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step .dot-fixed:before {
  width: 1px;
  height: 100vh;
  transform: translateY(-100%);
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step .dot-fixed svg {
  z-index: 3;
  left: -8px;
  transform: none;
  top: 0;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step .shady-dot {
  padding: 0;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step .shady-dot svg {
  position: absolute;
  left: -48px;
  transform: translateY(-40px);
  z-index: 2;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step__content {
  padding-top: 30px;
}
@media (max-width: 767.98px) {
  html body.fully-vertical .block-horizontal-animated-timeline .timeline .step__content {
    padding-right: 15px;
  }
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step__content .white-boxes {
  justify-content: flex-start;
  display: flex;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step__content .events {
  flex-direction: column;
  align-items: flex-start !important;
  gap: 30px;
}
html body.fully-vertical .block-horizontal-animated-timeline .timeline .step__content .events .event__separator {
  display: none;
}

html body .block-offices {
  position: relative;
  min-height: 100vh !important;
  background-size: cover;
}
html body .block-offices > div {
  min-height: 100vh;
  height: auto;
}
html body .block-offices #text-stripe {
  overflow: hidden;
}
html body .block-offices #text-stripe p {
  white-space: nowrap;
  margin: 4rem 0 3rem -2rem;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
  -webkit-animation: scrolling 30s linear infinite;
  animation: scrolling 30s linear infinite;
  animation-direction: reverse;
}
@media (max-width: 1199.98px) {
  html body .block-offices #text-stripe p {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767.98px) {
  html body .block-offices #text-stripe p {
    font-size: 1.875rem;
  }
}
html body .block-offices #text-stripe p span {
  display: inline-block;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@-webkit-keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
html body .block-offices .addresses {
  display: flex;
  width: 48.3125rem;
  height: 26.5625rem;
  margin-bottom: 10rem;
  padding: 0 5rem;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  border: 20px solid #FFFFFF;
}
@media (max-width: 991.98px) {
  html body .block-offices .addresses {
    flex-direction: column;
    width: 50vw;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 767.98px) {
  html body .block-offices .addresses {
    width: 65vw;
    border-width: 10px;
  }
}
@media (max-width: 575.98px) {
  html body .block-offices .addresses {
    width: calc(100% - 40px);
  }
}
html body .block-offices .addresses .address {
  display: flex;
  margin-top: 2rem;
  margin-bottom: 2rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.25rem;
}
html body .block-offices .addresses .address p, html body .block-offices .addresses .address a {
  color: rgba(0, 0, 0, 0.4);
  text-align: center;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 1.35rem */
  letter-spacing: 0.0375rem;
}
html body .block-offices .addresses .address a:hover {
  color: rgba(0, 0, 0, 0.4);
  text-decoration: underline;
}
html body .block-offices .addresses .address p {
  display: flex;
  flex-direction: column;
  align-items: center;
}
html body .block-offices .addresses .address em {
  display: inline-block;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  background-color: #FFFFFF;
}
html body .block-offices .addresses .address em strong {
  color: #000000;
  font-weight: 400;
}
html body .block-offices .addresses .address .city h1, html body .block-offices .addresses .address .city .h1, html body .block-offices .addresses .address .city h2, html body .block-offices .addresses .address .city .h2, html body .block-offices .addresses .address .city h3, html body .block-offices .addresses .address .city .h3, html body .block-offices .addresses .address .city h4, html body .block-offices .addresses .address .city .h4, html body .block-offices .addresses .address .city h5, html body .block-offices .addresses .address .city .h5, html body .block-offices .addresses .address .city h6, html body .block-offices .addresses .address .city .h6 {
  text-align: center;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
@media (max-width: 767.98px) {
  html body .block-offices .addresses .address em {
    padding: 4px 0.5rem;
  }
  html body .block-offices .addresses .address, html body .block-offices .addresses .address a, html body .block-offices .addresses .address strong {
    line-height: 100%;
  }
}
html body .block-offices .addresses ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 50%;
  margin-left: 10%;
}
@media (max-width: 991.98px) {
  html body .block-offices .addresses ul {
    max-width: unset;
    margin-left: 0;
  }
}
html body .block-offices .addresses ul li {
  width: 48%;
  min-height: 3rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
html body .block-offices .addresses ul li span {
  display: block;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 1.35rem */
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
}
@media (max-width: 991.98px) {
  html body .block-offices__offices {
    padding-bottom: 250px;
  }
}

.block-projects-carousel {
  width: 100vw;
  height: 100vh;
}
@media (max-width: 991.98px) {
  .block-projects-carousel > div {
    padding-bottom: 200px;
    padding-top: 100px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel > div {
    padding-bottom: 20px;
    padding-top: 70px;
  }
}
.block-projects-carousel .slider-points {
  width: 120px;
}
.block-projects-carousel .slider-points span {
  font-size: 14px;
  color: #000000;
  font-weight: 400;
}
.block-projects-carousel .slider-points .total {
  opacity: 0.4;
}
.block-projects-carousel .slider-points .bar {
  height: 40px;
  width: 2px;
  display: block;
  background: #000000;
  margin: 20px 0;
}
.block-projects-carousel .slider-points .nav-arrow {
  cursor: pointer;
  margin: 40px 0;
  transition: transform 0.2s ease-in-out;
  transform: scale(1);
}
.block-projects-carousel .slider-points .nav-arrow:hover {
  transform: scale(1.1);
}
.block-projects-carousel .slider-points .nav-arrow.slick-disabled {
  pointer-events: none;
  opacity: 0.4;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  .block-projects-carousel .slider-points {
    width: 60px;
  }
}
@media (max-width: 1199.98px) {
  .block-projects-carousel .slider-points {
    position: absolute;
    bottom: 15vh;
    width: 200px;
  }
  .block-projects-carousel .slider-points .nav-arrow {
    margin: 0;
    transform: rotate(-90deg);
  }
  .block-projects-carousel .slider-points .nav-arrow:hover {
    transform: scale(1) rotate(-90deg);
  }
  .block-projects-carousel .slider-points .nav-arrow:first-child {
    margin-right: 20px;
  }
  .block-projects-carousel .slider-points .nav-arrow:last-child {
    margin-left: 20px;
  }
  .block-projects-carousel .slider-points .bar {
    width: 40px;
    height: 2px;
    margin: 0 20px;
  }
}
@media (max-width: 991.98px) {
  .block-projects-carousel .slider-points {
    bottom: 22vh;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slider-points {
    bottom: unset;
    top: 17vh;
  }
}
.block-projects-carousel__slider {
  width: 1200px;
  max-width: 100%;
}
.block-projects-carousel__slider .slick-arrow {
  top: auto;
  bottom: -120px;
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.04);
  border-radius: 50% 0 0 50%;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slider .slick-arrow:before {
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slider .slick-arrow:hover {
  background: #000000;
}
.block-projects-carousel__slider .slick-arrow:hover:before {
  border-color: #FFFFFF !important;
}
.block-projects-carousel__slider .slick-arrow.slick-disabled:hover {
  background: rgba(0, 0, 0, 0.04);
  cursor: default;
}
.block-projects-carousel__slider .slick-arrow.slick-disabled:hover:before {
  border-color: #000000 !important;
}
.block-projects-carousel__slider .slick-arrow.slick-prev {
  left: 50%;
  transform: translateX(calc(-100% - 50px));
  border-radius: 50% 0 0 50%;
}
.block-projects-carousel__slider .slick-arrow.slick-prev:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-135deg);
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slider .slick-arrow.slick-prev {
    transform: translateX(-100%);
  }
}
.block-projects-carousel__slider .slick-arrow.slick-next {
  right: 50%;
  transform: translateX(calc(100% - 50px));
  border-radius: 0 50% 50% 0;
}
.block-projects-carousel__slider .slick-arrow.slick-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slider .slick-arrow.slick-next {
    transform: translateX(100%);
  }
}
@media (max-width: 991.98px) {
  .block-projects-carousel__slider .slick-arrow {
    bottom: -90px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slider {
    width: 540px;
  }
  .block-projects-carousel__slider .slick-arrow {
    bottom: -40px;
  }
}
.block-projects-carousel__slide {
  position: relative;
  max-width: 100%;
}
.block-projects-carousel__slide .text {
  transition: 0s !important;
}
.block-projects-carousel__slide .text .title {
  opacity: 1;
  mix-blend-mode: difference;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-25%, -50%);
  color: #FFFFFF;
  text-align: right;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slide .text .title h2, .block-projects-carousel__slide .text .title .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-weight: 400;
  line-height: 100%; /* 5rem */
  letter-spacing: 0.25rem;
  max-width: 550px;
  width: 550px;
}
.block-projects-carousel__slide .text .title h3, .block-projects-carousel__slide .text .title .h3 {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.075rem;
}
.block-projects-carousel__slide .text .claim {
  opacity: 1;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(40%, -30%);
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
}
.block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
  align-items: center;
  color: #000000;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 2.7rem */
  letter-spacing: 0.075rem;
  text-transform: uppercase;
  max-width: 480px;
  display: flex;
  background: transparent;
  flex-wrap: wrap;
}
.block-projects-carousel__slide .text .claim h4 span, .block-projects-carousel__slide .text .claim .h4 span {
  padding: 0rem 0.3125rem;
  font-family: "Bodoni Moda", serif;
  background: #FFFFFF;
  display: block;
  margin-bottom: 8px;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
    max-width: 50vw;
    justify-content: flex-end;
  }
}
.block-projects-carousel__slide .thumb {
  background-size: cover;
  border: 20px solid white;
  transition: 0s !important;
}
.block-projects-carousel__slide .thumb .img-container {
  display: flex;
  justify-content: center;
  width: 100%;
  align-items: flex-start;
}
.block-projects-carousel__slide .thumb .img-container:hover {
  cursor: url("/wp-content/themes/vegans/images/svg/cursor.svg"), auto;
}
.block-projects-carousel__slide .thumb .img-container .img-height-constraint {
  height: 100%;
  overflow: hidden;
  transition: 0.5s cubic-bezier(0.76, -0.1, 0.56, 1.07);
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.block-projects-carousel__slide .thumb .img-container img {
  width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .thumb {
    border: 10px solid white;
  }
}
.block-projects-carousel__slide {
  position: relative;
  flex-direction: column;
}
.block-projects-carousel__slide > a {
  display: flex;
  flex-direction: column;
  align-items: center !important;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.block-projects-carousel__slide .text .title {
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slide .text .title {
    top: 30%;
    left: 40px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .title {
    top: 20%;
    left: 20px;
    transform: none;
  }
  .block-projects-carousel__slide .text .title h2, .block-projects-carousel__slide .text .title .h2 {
    font-size: 2.5rem;
    line-height: 100%; /* 2.5rem */
    letter-spacing: 0.125rem;
    max-width: 70vw;
    width: 70vw;
    text-align: left;
  }
  .block-projects-carousel__slide .text .title h3, .block-projects-carousel__slide .text .title .h3 {
    font-size: 0.875rem;
    letter-spacing: 0.04375rem;
  }
}
.block-projects-carousel__slide .text .claim {
  transform: translate(0);
  max-width: 75%;
  text-align: left;
}
@media (max-width: 1199.98px) {
  .block-projects-carousel__slide .text .claim {
    top: 70%;
    right: 40px;
  }
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .text .claim {
    top: 110%;
    right: 20px;
    transform: translateY(-50%);
  }
  .block-projects-carousel__slide .text .claim h4, .block-projects-carousel__slide .text .claim .h4 {
    font-size: 1.125rem;
    line-height: 180%; /* 2.025rem */
    letter-spacing: 0.05625rem;
    max-width: 80vw;
  }
}
.block-projects-carousel__slide .thumb {
  width: 80%;
  max-width: 770px;
}
@media (max-width: 767.98px) {
  .block-projects-carousel__slide .thumb .img-container,
  .block-projects-carousel__slide .thumb .img-container img {
    aspect-ratio: 1 !important;
  }
  .block-projects-carousel__slide .thumb .img-container img {
    object-fit: cover;
    object-position: top left;
  }
}
.block-projects-carousel .slick-slide {
  opacity: 1 !important;
  z-index: 3 !important;
  transition: opacity 0s !important;
}
.block-projects-carousel .slick-slide.slick-active {
  z-index: 5 !important;
}
.block-projects-carousel .slick-slide.transition-from {
  z-index: 4 !important;
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slide {
    padding-bottom: 110px;
  }
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active), .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title, .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim, .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-active, .block-projects-carousel .slick-slider.from-bottom .slick-active {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top .slick-active .text,
.block-projects-carousel .slick-slider.from-top .slick-active .thumb, .block-projects-carousel .slick-slider.from-bottom .slick-active .text,
.block-projects-carousel .slick-slider.from-bottom .slick-active .thumb {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top .slick-active .thumb .img-container .img-height-constraint, .block-projects-carousel .slick-slider.from-bottom .slick-active .thumb .img-container .img-height-constraint {
  height: 0;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active {
  background: transparent;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim, .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
  opacity: 0;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active {
  background-color: #E5E5E5;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .text,
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .thumb, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .text,
.block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .thumb {
  opacity: 1;
}
.block-projects-carousel .slick-slider.from-top:not(.transition-first-half) .slick-slide.slick-active .thumb .img-container .img-height-constraint, .block-projects-carousel .slick-slider.from-bottom:not(.transition-first-half) .slick-slide.slick-active .thumb .img-container .img-height-constraint {
  height: 100%;
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide .thumb .img-container {
  align-items: flex-end !important;
}
.block-projects-carousel .slick-slider.from-bottom .slick-slide .thumb .img-container .img-height-constraint {
  align-items: flex-end !important;
}
.block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
  transform: translate(0, 150px);
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .title {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-bottom .slick-slide:not(.slick-active) .text .claim {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .title {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-bottom.transition-first-half .slick-slide.slick-active .text .claim {
    transform: translate(0, 50px);
  }
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim {
  transform: translate(0, 150px);
}
.block-projects-carousel .slick-slider.from-top .slick-slide .thumb .img-container {
  align-items: flex-start !important;
}
.block-projects-carousel .slick-slider.from-top .slick-slide .thumb .img-container .img-height-constraint {
  align-items: flex-start !important;
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title {
  transform: translate(0, -150px);
}
.block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim {
  transform: translate(0, -150px);
}
@media (max-width: 767.98px) {
  .block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .title {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-top .slick-slide:not(.slick-active) .text .claim {
    transform: translate(0, 50px);
  }
  .block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .title {
    transform: translate(0, -50px);
  }
  .block-projects-carousel .slick-slider.from-top.transition-first-half .slick-slide.slick-active .text .claim {
    transform: translate(0, -50px);
  }
}
@media (min-width: 1200px) {
  .block-projects-carousel .carousel-container {
    max-width: calc(100% - 60px);
    padding: 0 20px;
  }
}
.block-projects-carousel[data-standalone="1"] .slider-points {
  position: absolute;
  bottom: min(120px, 10vh);
  width: 200px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow {
  margin: 0;
  transform: rotate(-90deg);
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:hover {
  transform: scale(1) rotate(-90deg);
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:first-child {
  margin-right: 20px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .nav-arrow:last-child {
  margin-left: 20px;
}
.block-projects-carousel[data-standalone="1"] .slider-points .bar {
  width: 40px;
  height: 2px;
  margin: 0 20px;
}
@media (max-width: 991.98px) {
  .block-projects-carousel[data-standalone="1"] .slider-points {
    bottom: 220px;
  }
}

html body .block-vertical-slider {
  z-index: 30;
  position: relative;
  overflow: hidden;
}
html body .block-vertical-slider .main-rail {
  position: relative;
  z-index: 2;
  padding-bottom: 20vh;
}
html body .block-vertical-slider .dot.static-dot {
  opacity: 0;
  pointer-events: none;
}
html body .block-vertical-slider .dot.hidden {
  opacity: 0;
  pointer-events: none;
}
html body .block-vertical-slider .slide {
  position: relative;
  opacity: 0.1;
}
html body .block-vertical-slider .slide > div {
  width: 100% !important;
}
html body .block-vertical-slider .slide .title {
  width: 50vw;
  padding-right: 2rem;
}
html body .block-vertical-slider .slide .title h1, html body .block-vertical-slider .slide .title .h1, html body .block-vertical-slider .slide .title h2, html body .block-vertical-slider .slide .title .h2, html body .block-vertical-slider .slide .title h3, html body .block-vertical-slider .slide .title .h3, html body .block-vertical-slider .slide .title h4, html body .block-vertical-slider .slide .title .h4, html body .block-vertical-slider .slide .title h5, html body .block-vertical-slider .slide .title .h5, html body .block-vertical-slider .slide .title h6, html body .block-vertical-slider .slide .title .h6 {
  color: #000000;
  text-align: right;
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
  text-transform: capitalize;
  font-size: 4rem;
  line-height: 120%;
}
@media (max-width: 767.98px) {
  html body .block-vertical-slider .slide .title h1, html body .block-vertical-slider .slide .title .h1, html body .block-vertical-slider .slide .title h2, html body .block-vertical-slider .slide .title .h2, html body .block-vertical-slider .slide .title h3, html body .block-vertical-slider .slide .title .h3, html body .block-vertical-slider .slide .title h4, html body .block-vertical-slider .slide .title .h4, html body .block-vertical-slider .slide .title h5, html body .block-vertical-slider .slide .title .h5, html body .block-vertical-slider .slide .title h6, html body .block-vertical-slider .slide .title .h6 {
    font-size: 3rem;
  }
}
@media (max-width: 1199.98px) {
  html body .block-vertical-slider .slide .title {
    width: 100%;
  }
}
html body .block-vertical-slider .slide .slide-desc {
  width: 50vw;
  padding: 0 2rem;
  position: relative;
}
html body .block-vertical-slider .slide .slide-desc .slide-desc-text {
  max-width: 550px;
  margin-right: auto;
}
html body .block-vertical-slider .slide .slide-desc span {
  display: inline-block;
  margin: 0.2rem 0;
  padding: 0 0.2rem;
  color: #000000;
  background-color: #FFFFFF;
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 2.7rem */
  letter-spacing: 0;
  text-transform: uppercase;
}
@media (max-width: 1199.98px) {
  html body .block-vertical-slider .slide .slide-desc span {
    font-size: 1.25rem;
    line-height: 150%; /* 6rem */
  }
}
html body .block-vertical-slider .slide .slide-desc .cta {
  display: inline-block;
  width: auto;
  padding: 10px;
  position: absolute;
  bottom: -108px;
}
html body .block-vertical-slider .slide .slide-desc .bullet {
  display: inline-block;
  margin: 0.2rem 0 0.2rem -0.8rem;
  padding: 0 1rem 0 0;
  color: #000000;
  background-color: #FFFFFF;
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
  text-transform: uppercase;
  font-size: 1.25rem;
  line-height: 150%;
}
html body .block-vertical-slider .slide .slide-desc .bullet:before {
  content: "/";
  display: inline-block;
  padding: 0 4px 0 0;
}
@media (max-width: 575.98px) {
  html body .block-vertical-slider .slide .slide-desc .bullet {
    padding: 0.25rem 0.72rem 0.25rem 0;
    margin: 0.2rem 0 0.2rem -0.7rem;
    letter-spacing: 0;
    display: inline-flex;
  }
  html body .block-vertical-slider .slide .slide-desc .bullet:before {
    padding: 0 6px 0 0;
  }
}
@media (max-width: 1199.98px) {
  html body .block-vertical-slider .slide .slide-desc {
    margin-top: 2rem;
  }
}
html body .block-vertical-slider .slide .dot:before, html body .block-vertical-slider .slide .dot:after {
  content: "";
  height: calc(50% - 8px);
  width: 1px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  position: absolute;
  background: rgba(0, 0, 0, 0.2);
}
html body .block-vertical-slider .slide .dot:before {
  top: 0;
}
html body .block-vertical-slider .slide .dot:after {
  bottom: 0;
}
html body .block-vertical-slider .slide.active {
  opacity: 1;
}
html body .block-vertical-slider .slide.active .dot:after {
  background: rgba(0, 0, 0, 0.1);
}
html body .block-vertical-slider .slide:first-child .dot:before {
  content: none;
}
html body .block-vertical-slider .slide:last-child .dot:after {
  content: none;
}
@media (max-width: 1199.98px) {
  html body .block-vertical-slider .slide .title h1, html body .block-vertical-slider .slide .title .h1, html body .block-vertical-slider .slide .title h2, html body .block-vertical-slider .slide .title .h2, html body .block-vertical-slider .slide .title h3, html body .block-vertical-slider .slide .title .h3, html body .block-vertical-slider .slide .title h4, html body .block-vertical-slider .slide .title .h4, html body .block-vertical-slider .slide .title h5, html body .block-vertical-slider .slide .title .h5, html body .block-vertical-slider .slide .title h6, html body .block-vertical-slider .slide .title .h6 {
    width: 90%;
    margin-left: 10%;
    padding-left: 0;
    text-align: left;
  }
  html body .block-vertical-slider .slide .slide-desc {
    width: 90%;
    margin-left: 10%;
    padding-left: 0;
    text-align: left;
  }
  html body .block-vertical-slider .slide .dot {
    position: absolute;
    left: 60px;
    transform: translateX(-50%);
    top: 50%;
  }
  html body .block-vertical-slider .slide .dot:before, html body .block-vertical-slider .slide .dot:after {
    height: calc(30vh - 8px);
  }
  html body .block-vertical-slider .slide .dot:before {
    top: 0;
    transform: translate(-50%, -100%);
  }
  html body .block-vertical-slider .slide .dot:after {
    bottom: 0;
    transform: translate(-50%, 100%);
  }
}
@media (max-width: 767.98px) {
  html body .block-vertical-slider .slide {
    padding: 0 20px 0 54px;
  }
  html body .block-vertical-slider .slide .title h1, html body .block-vertical-slider .slide .title .h1, html body .block-vertical-slider .slide .title h2, html body .block-vertical-slider .slide .title .h2, html body .block-vertical-slider .slide .title h3, html body .block-vertical-slider .slide .title .h3, html body .block-vertical-slider .slide .title h4, html body .block-vertical-slider .slide .title .h4, html body .block-vertical-slider .slide .title h5, html body .block-vertical-slider .slide .title .h5, html body .block-vertical-slider .slide .title h6, html body .block-vertical-slider .slide .title .h6 {
    width: 100%;
    margin-left: 0;
  }
  html body .block-vertical-slider .slide .slide-desc {
    width: 100%;
    margin-left: 0;
  }
  html body .block-vertical-slider .slide .dot {
    left: 26px;
  }
  html body .block-vertical-slider .slide .dot:before, html body .block-vertical-slider .slide .dot:after {
    height: calc(35vh - 8px);
  }
}
html body .block-vertical-slider .floating-dot {
  position: absolute;
  top: 50vh;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
}
html body .block-vertical-slider .floating-dot .inner-cont {
  position: relative;
}
html body .block-vertical-slider .floating-dot .inner-cont .bar-before,
html body .block-vertical-slider .floating-dot .inner-cont .bar-after {
  content: "";
  height: 1px;
  width: 1px;
  display: block;
  position: absolute;
  left: 50%;
  background: rgba(0, 0, 0, 0.1);
}
html body .block-vertical-slider .floating-dot .inner-cont .bar-before {
  background: black;
  top: 0;
  transform: translate(-50%, -100%);
}
html body .block-vertical-slider .floating-dot .inner-cont .bar-after {
  bottom: 0;
  transform: translate(-50%, 100%);
}
html body .block-vertical-slider .floating-dot.hidden {
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 1199.98px) {
  html body .block-vertical-slider .floating-dot {
    left: 60px;
  }
}
@media (max-width: 767.98px) {
  html body .block-vertical-slider .floating-dot {
    left: 26px;
  }
}
html body .block-vertical-slider.animation-done .slide {
  opacity: 1;
}
html body .block-vertical-slider.animation-done .slide .dot:before, html body .block-vertical-slider.animation-done .slide .dot:after {
  background: #000000;
}

html body .block-services-vertical-slider {
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}
html body .block-services-vertical-slider .bg-container {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100% !important;
}
html body .block-services-vertical-slider .bg-container.hidden {
  display: none !important;
}
html body .block-services-vertical-slider .section-main-text {
  width: 100%;
  padding-top: 30vh;
}
html body .block-services-vertical-slider .section-main-text #slide-main-text:not(.first-letter-normal):first-letter, html body .block-services-vertical-slider .section-main-text #slide-main-text p:not(.first-letter-normal):first-letter {
  font-family: "Bodoni Moda", serif;
  /*font-size: 5rem;*/
  font-style: normal;
  font-weight: 400;
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text:not(.first-letter-normal):first-letter, html body .block-services-vertical-slider .section-main-text #slide-main-text p:not(.first-letter-normal):first-letter {
    /* font-size: 4rem;*/
  }
}
@media (max-width: 767.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text:not(.first-letter-normal):first-letter, html body .block-services-vertical-slider .section-main-text #slide-main-text p:not(.first-letter-normal):first-letter {
    /*font-size: 3rem;*/
  }
}
html body .block-services-vertical-slider .section-main-text #slide-main-text:not(.first-letter-normal) > span:first-child, html body .block-services-vertical-slider .section-main-text #slide-main-text p:not(.first-letter-normal) > span:first-child {
  padding-top: 2.5rem;
}
@media (max-width: 767.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text:not(.first-letter-normal) > span:first-child, html body .block-services-vertical-slider .section-main-text #slide-main-text p:not(.first-letter-normal) > span:first-child {
    padding-top: 1.25rem;
  }
}
html body .block-services-vertical-slider .section-main-text #slide-main-text p {
  width: 30%;
  margin-left: auto;
  margin-right: auto;
  color: #FFFFFF;
}
html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-pre {
  font-family: "neue-montreal", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%;
  letter-spacing: 0;
  direction: rtl;
  display: block;
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-pre {
    font-size: 1.375rem;
    line-height: 160%;
  }
}
@media (max-width: 767.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-pre {
    font-size: 1.25rem;
  }
}
@media all and (max-height: 700px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-pre {
    font-size: 1.25rem;
  }
}
html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-post {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-post {
    font-size: 1.375rem;
    line-height: 160%;
  }
}
@media (max-width: 767.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-post {
    font-size: 1.25rem;
  }
}
@media all and (max-height: 700px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .text-type-post {
    font-size: 1.25rem;
  }
}
html body .block-services-vertical-slider .section-main-text #slide-main-text p .long-line {
  position: relative;
  top: -5px;
  display: inline-block;
  width: 200px;
  overflow: hidden;
  text-indent: -99px;
  border-bottom: 1px solid #FFFFFF;
  height: 0;
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p .long-line {
    width: 150px;
  }
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .section-main-text #slide-main-text p {
    width: 80%;
    margin-left: 5%;
    padding-left: 5%;
  }
}
html body .block-services-vertical-slider .dot {
  position: fixed;
  bottom: -20%;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 1199.98px) {
  html body .block-services-vertical-slider .dot {
    left: 5%;
    transform: none;
  }
}
html body .block-services-vertical-slider .dot svg {
  transform: translate(-8px, -8px);
}
html body .block-services-vertical-slider .dot-fixed {
  transform: translate(-50%, -50%);
}
html body .block-services-vertical-slider .dot-fixed .svg-container {
  position: relative;
}
html body .block-services-vertical-slider .dot-fixed .svg-container svg {
  transform: translate(-50%, -50%);
}
html body .block-services-vertical-slider .dot-fixed.white-dot::before {
  background-color: #FFFFFF;
}
html body .block-services-vertical-slider .dot-fixed.white-dot::after {
  background: rgba(255, 255, 255, 0.2);
}
html body .block-services-vertical-slider .white-dot svg circle {
  fill: #FFFFFF !important;
}
html body .block-services-vertical-slider .slide-type h2, html body .block-services-vertical-slider .slide-type .h2, html body .block-services-vertical-slider .slide-type h2 p, html body .block-services-vertical-slider .slide-type .h2 p {
  color: #FFFFFF;
}
@media (max-width: 767.98px) {
  html body .block-services-vertical-slider .slide-type h2, html body .block-services-vertical-slider .slide-type .h2, html body .block-services-vertical-slider .slide-type h2 p, html body .block-services-vertical-slider .slide-type .h2 p {
    font-size: 3rem;
  }
}
html body .block-services-vertical-slider .slide-type p.slide-desc span {
  padding: 0 1rem;
}
@media (max-width: 575.98px) {
  html body .block-services-vertical-slider .slide-type p.slide-desc span {
    padding: 0.25rem 0.5rem;
  }
}

html body .block-fullwidth-simple-content .content {
  display: flex;
  align-items: center;
  height: 100%;
}
html body .block-fullwidth-simple-content .section-main-text {
  max-width: 660px;
  color: #FFFFFF;
}
@media (max-width: 991.98px) {
  html body .block-fullwidth-simple-content {
    height: auto !important;
    padding: 30px 0 100px;
  }
  html body .block-fullwidth-simple-content .section-main-text {
    width: 90vw;
    margin: 0 auto;
  }
}

html body .block-fullwidth-image .big-image {
  padding: 3vh 1vw;
}
html body .block-fullwidth-image .big-image.fixed {
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
html body .block-fullwidth-image .big-image-inner {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
html body .block-fullwidth-image .big-image img {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  object-fit: cover;
  object-position: center;
}
html body .block-fullwidth-image .big-video.fixed {
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

html body .block-positions-carousel {
  background-color: lightgrey;
  padding-bottom: 100px;
  height: auto !important;
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel {
    height: auto;
    padding: 50px 0 100px;
  }
}
html body .block-positions-carousel #text-stripe {
  overflow: hidden;
  overflow: unset;
  margin-top: 0;
  margin-left: 0;
  padding-top: 5rem;
}
html body .block-positions-carousel #text-stripe p {
  white-space: nowrap;
  margin: 4rem 0 3rem -2rem;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
  -webkit-animation: scrolling 30s linear infinite;
  animation: scrolling 30s linear infinite;
  animation-direction: reverse;
}
@media (max-width: 1199.98px) {
  html body .block-positions-carousel #text-stripe p {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel #text-stripe p {
    font-size: 1.875rem;
  }
}
html body .block-positions-carousel #text-stripe p span {
  display: inline-block;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@-webkit-keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel #text-stripe {
    padding-top: 0;
  }
  html body .block-positions-carousel #text-stripe p {
    margin-top: 0;
  }
}
html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
  position: relative;
  align-items: unset;
  width: 40vw;
  margin: 10vh auto 0;
  padding: 0 3rem 3rem 5rem;
  color: #000000;
  border: 20px solid #FFFFFF;
}
@media (max-width: 1599.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    width: 50vw;
  }
}
@media (max-width: 1199.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    width: 60vw;
  }
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    width: 75vw;
  }
}
@media (max-width: 575.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    width: 90vw;
  }
}
@media (max-width: 991.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    margin: 7vh auto 0;
    padding: 0 2rem 3rem 2rem;
  }
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type {
    border: 10px solid #FFFFFF;
  }
}
html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h6, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h6 {
  transform: translateX(-50%);
  margin-bottom: 20px;
  min-width: 40vw;
  text-align: left;
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 6rem */
  letter-spacing: 0.25rem;
}
@media (max-width: 1599.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h6, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h6 {
    min-width: 50vw;
    font-size: 5vw;
  }
}
@media (max-width: 1199.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h6, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h6 {
    transform: translateX(-25%);
  }
}
@media (max-width: 991.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h6, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h6 {
    font-size: 2.5rem;
  }
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h1, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h2, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h3, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h5, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title h6, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .title .h6 {
    transform: translateX(-15%);
  }
}
html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type h4, html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .h4 {
  text-align: left;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 1.575rem */
  letter-spacing: 0.04375rem;
  text-transform: uppercase;
}
html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type p {
  text-align: left;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
@media (max-width: 767.98px) {
  html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type p {
    font-size: 1rem;
  }
}
html body .block-positions-carousel .block-positions-carousel-slider .slider .position-type .cta-plus {
  position: absolute;
  top: 4rem;
  right: 4rem;
  display: inline-block;
  width: 3.2rem;
  height: 3.2rem;
  font-size: 1.5rem;
  line-height: 3.2rem;
  text-align: center;
  border-radius: 50%;
  color: #000000;
  background-color: #FFFFFF;
  text-decoration: none;
}

html body .block-horizontal-service-scopes {
  display: flex;
}
html body .block-horizontal-service-scopes .service-scope {
  min-width: max(100vw, 1440px);
  position: relative;
  margin-right: -1px;
  background-color: #E5E5E5;
}
html body .block-horizontal-service-scopes .service-scope .background-image img {
  position: absolute;
  left: 10vw;
  display: block;
  width: auto;
  height: 100vh;
  border: 20px solid #FFFFFF;
}
@media (max-width: 767.98px) {
  html body .block-horizontal-service-scopes .service-scope .background-image img {
    border: 10px solid #FFFFFF;
  }
}
html body .block-horizontal-service-scopes .service-scope .service-text {
  align-items: flex-start;
  position: relative;
  margin: 0 auto 0 calc(55vh + 10vw - 100px);
  max-width: 768px;
  text-align: left;
  width: 50vw;
}
@media (max-width: 991.98px) {
  html body .block-horizontal-service-scopes .service-scope .service-text {
    margin: 0 auto;
  }
}
html body .block-horizontal-service-scopes .service-scope .service-text h2, html body .block-horizontal-service-scopes .service-scope .service-text .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 3.75rem */
  letter-spacing: 0;
}
html body .block-horizontal-service-scopes .service-scope .service-text div p {
  margin: 6rem 0 3rem 12rem;
  text-align: justify;
  font-family: "neue-montreal", serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.025rem */
  letter-spacing: 0.05625rem;
  direction: rtl;
}
html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper {
  position: relative;
  width: 100%;
}
html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper .cta {
  padding: 10px;
  position: absolute;
  right: 0;
  width: auto;
}
html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper .cta:hover {
  color: #000000;
}
html body .block-horizontal-service-scopes .service-scope .brand-list-scroll {
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
}
html body .block-horizontal-service-scopes .service-scope .brand-list-scroll ul li {
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  html body .block-horizontal-service-scopes.extra-spacing-right {
    padding-right: 100px;
  }
  html body .block-horizontal-service-scopes.extra-spacing-right .service-scope:last-child .brand-list-scroll {
    right: 100px;
  }
  html body .block-horizontal-service-scopes.extra-spacing-right .service-scope:last-child:last-child {
    min-width: max(100vw + 100px, 1540px);
    width: calc(100vw + 100px);
  }
}
@media (max-width: 991.98px) {
  html body .block-horizontal-service-scopes {
    flex-direction: column;
    padding-top: 60px;
    padding-bottom: 160px;
    background-color: #E5E5E5;
  }
  html body .block-horizontal-service-scopes .service-scope {
    min-width: 0 !important;
    height: auto !important;
    margin-bottom: 80px;
  }
  html body .block-horizontal-service-scopes .service-scope .background-image {
    width: 45vw;
    height: auto;
    position: relative;
    margin: 0 auto;
  }
  html body .block-horizontal-service-scopes .service-scope .background-image img {
    position: relative;
    top: 0;
    left: 0;
    height: auto;
    width: 100%;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text {
    width: 50vw;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text h2, html body .block-horizontal-service-scopes .service-scope .service-text .h2 {
    margin-top: -30px;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text div p {
    margin: 40px 0 0 0;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper {
    margin-top: 60px;
    display: flex;
    justify-content: flex-end;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper a {
    position: relative !important;
  }
  html body .block-horizontal-service-scopes .service-scope .brand-list-scroll {
    position: relative;
    display: flex;
    width: 100vw;
    margin-top: 84px;
  }
  html body .block-horizontal-service-scopes .service-scope .brand-list-scroll ul {
    display: flex;
    align-items: center;
  }
  html body .block-horizontal-service-scopes .service-scope .brand-list-scroll ul li {
    margin: 0 30px 0 0;
  }
  html body .block-horizontal-service-scopes .service-scope .brand-list-scroll ul li img {
    width: 30vw;
    height: auto;
    max-width: 200px;
  }
}
@media (max-width: 767.98px) {
  html body .block-horizontal-service-scopes {
    padding-bottom: 0;
  }
  html body .block-horizontal-service-scopes .service-scope .background-image {
    width: 70vw;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text {
    width: auto;
    padding: 0 20px;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text div p {
    font-size: 1rem;
  }
  html body .block-horizontal-service-scopes .service-scope .service-text .cta-wrapper a {
    font-size: 0.875rem;
  }
}

html body .block-services-list .service-wrapper {
  width: 100vw !important;
  height: auto !important;
  max-height: none !important;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
html body .block-services-list .service-wrapper .inner-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
}
html body .block-services-list .service-wrapper .title {
  position: relative;
  width: 60vw;
  margin: 80px 0 80px 15vw;
  direction: rtl;
}
@media screen and (max-width: 992px) {
  html body .block-services-list .service-wrapper .title {
    width: 85vw;
  }
}
html body .block-services-list .service-wrapper p {
  direction: rtl;
  text-align: right;
  display: block;
}
html body .block-services-list .service-wrapper.dark {
  background-color: #121212;
  color: #FFFFFF;
}
html body .block-services-list .service-wrapper.light {
  background-color: #E5E5E5;
}
html body .block-services-list .service-wrapper.light {
  color: #000000;
}
html body .block-services-list .service-wrapper.light .title h1, html body .block-services-list .service-wrapper.light .title .h1, html body .block-services-list .service-wrapper.light .title h2, html body .block-services-list .service-wrapper.light .title .h2, html body .block-services-list .service-wrapper.light .title h3, html body .block-services-list .service-wrapper.light .title .h3, html body .block-services-list .service-wrapper.light .title h4, html body .block-services-list .service-wrapper.light .title .h4, html body .block-services-list .service-wrapper.light .title h5, html body .block-services-list .service-wrapper.light .title .h5, html body .block-services-list .service-wrapper.light .title h6, html body .block-services-list .service-wrapper.light .title .h6 {
  color: black;
}
html body .block-services-list .service-wrapper.light .text a {
  color: #000000;
  border-bottom-color: #000000;
}
html body .block-services-list .service-wrapper.light .text:before {
  background-color: #000000;
}
html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6 {
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-weight: 300;
  margin-left: 5vw;
  margin-top: min(4rem, 100px);
  font-family: "Bodoni Moda", serif;
  font-weight: 400;
}
html body .block-services-list .service-wrapper .title h1 span, html body .block-services-list .service-wrapper .title .h1 span, html body .block-services-list .service-wrapper .title h2 span, html body .block-services-list .service-wrapper .title .h2 span, html body .block-services-list .service-wrapper .title h3 span, html body .block-services-list .service-wrapper .title .h3 span, html body .block-services-list .service-wrapper .title h4 span, html body .block-services-list .service-wrapper .title .h4 span, html body .block-services-list .service-wrapper .title h5 span, html body .block-services-list .service-wrapper .title .h5 span, html body .block-services-list .service-wrapper .title h6 span, html body .block-services-list .service-wrapper .title .h6 span {
  margin-left: 0 !important;
  font-family: "Bodoni Moda", serif;
  font-weight: 400;
}
html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h1 span, html body .block-services-list .service-wrapper .title .h1 span, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h2 span, html body .block-services-list .service-wrapper .title .h2 span, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h3 span, html body .block-services-list .service-wrapper .title .h3 span, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h4 span, html body .block-services-list .service-wrapper .title .h4 span, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h5 span, html body .block-services-list .service-wrapper .title .h5 span, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6, html body .block-services-list .service-wrapper .title h6 span, html body .block-services-list .service-wrapper .title .h6 span {
  font-size: 5rem;
  font-style: normal;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
}
@media (max-width: 1399.98px) {
  html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h1 span, html body .block-services-list .service-wrapper .title .h1 span, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h2 span, html body .block-services-list .service-wrapper .title .h2 span, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h3 span, html body .block-services-list .service-wrapper .title .h3 span, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h4 span, html body .block-services-list .service-wrapper .title .h4 span, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h5 span, html body .block-services-list .service-wrapper .title .h5 span, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6, html body .block-services-list .service-wrapper .title h6 span, html body .block-services-list .service-wrapper .title .h6 span {
    margin-left: 7vw;
    font-size: 6vw;
  }
}
@media (max-width: 767.98px) {
  html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h1 span, html body .block-services-list .service-wrapper .title .h1 span, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h2 span, html body .block-services-list .service-wrapper .title .h2 span, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h3 span, html body .block-services-list .service-wrapper .title .h3 span, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h4 span, html body .block-services-list .service-wrapper .title .h4 span, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h5 span, html body .block-services-list .service-wrapper .title .h5 span, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6, html body .block-services-list .service-wrapper .title h6 span, html body .block-services-list .service-wrapper .title .h6 span {
    width: 90vw !important;
    margin-left: auto;
    margin-right: auto;
    font-size: 2.5rem;
  }
}
@media (max-width: 575.98px) {
  html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h1 span, html body .block-services-list .service-wrapper .title .h1 span, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h2 span, html body .block-services-list .service-wrapper .title .h2 span, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h3 span, html body .block-services-list .service-wrapper .title .h3 span, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h4 span, html body .block-services-list .service-wrapper .title .h4 span, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h5 span, html body .block-services-list .service-wrapper .title .h5 span, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6, html body .block-services-list .service-wrapper .title h6 span, html body .block-services-list .service-wrapper .title .h6 span {
    font-size: 10vw;
  }
}
html body .block-services-list .service-wrapper .title h1 b, html body .block-services-list .service-wrapper .title .h1 b,
html body .block-services-list .service-wrapper .title h1 strong,
html body .block-services-list .service-wrapper .title .h1 strong, html body .block-services-list .service-wrapper .title h2 b, html body .block-services-list .service-wrapper .title .h2 b,
html body .block-services-list .service-wrapper .title h2 strong,
html body .block-services-list .service-wrapper .title .h2 strong, html body .block-services-list .service-wrapper .title h3 b, html body .block-services-list .service-wrapper .title .h3 b,
html body .block-services-list .service-wrapper .title h3 strong,
html body .block-services-list .service-wrapper .title .h3 strong, html body .block-services-list .service-wrapper .title h4 b, html body .block-services-list .service-wrapper .title .h4 b,
html body .block-services-list .service-wrapper .title h4 strong,
html body .block-services-list .service-wrapper .title .h4 strong, html body .block-services-list .service-wrapper .title h5 b, html body .block-services-list .service-wrapper .title .h5 b,
html body .block-services-list .service-wrapper .title h5 strong,
html body .block-services-list .service-wrapper .title .h5 strong, html body .block-services-list .service-wrapper .title h6 b, html body .block-services-list .service-wrapper .title .h6 b,
html body .block-services-list .service-wrapper .title h6 strong,
html body .block-services-list .service-wrapper .title .h6 strong {
  font-weight: 400;
  font-family: "Bodoni Moda", serif;
}
html body .block-services-list .service-wrapper .service-vertical-text {
  position: absolute;
  top: 0;
  right: 0;
  width: 12%;
}
html body .block-services-list .service-wrapper .service-vertical-text .service-vertical-wrapper {
  position: relative;
  display: inline-block;
  background-color: #FFFFFF;
}
html body .block-services-list .service-wrapper .service-vertical-text .service-vertical-inner {
  -webkit-animation: vertical-scrolling 30s linear infinite;
  animation: vertical-scrolling 30s linear infinite;
}
html body .block-services-list .service-wrapper .service-vertical-text h1, html body .block-services-list .service-wrapper .service-vertical-text .h1, html body .block-services-list .service-wrapper .service-vertical-text h2, html body .block-services-list .service-wrapper .service-vertical-text .h2, html body .block-services-list .service-wrapper .service-vertical-text h3, html body .block-services-list .service-wrapper .service-vertical-text .h3, html body .block-services-list .service-wrapper .service-vertical-text h4, html body .block-services-list .service-wrapper .service-vertical-text .h4, html body .block-services-list .service-wrapper .service-vertical-text h5, html body .block-services-list .service-wrapper .service-vertical-text .h5, html body .block-services-list .service-wrapper .service-vertical-text h6, html body .block-services-list .service-wrapper .service-vertical-text .h6 {
  transform: rotate(-180deg);
  padding-top: 0.625rem;
  color: #000000;
  background-color: #FFFFFF;
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 2.7rem */
  text-transform: uppercase;
  writing-mode: vertical-lr;
  white-space: nowrap;
}
@-webkit-keyframes vertical-scrolling {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@keyframes vertical-scrolling {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
html body .block-services-list .service-wrapper .text {
  position: relative;
  width: 60vw;
  margin: 80px 0 80px 15vw;
  text-align: justify;
  font-family: "neue-montreal", serif;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
html body .block-services-list .service-wrapper .text p:before {
  content: "";
  width: 1px;
  position: static;
  display: inline-block;
  height: 10px;
}
html body .block-services-list .service-wrapper .text::first-letter {
  margin-left: 0;
}
html body .block-services-list .service-wrapper .text:before {
  content: " ";
  position: absolute;
  top: 1.125rem;
  left: -20vw;
  width: 20vw;
  height: 1px;
  background-color: #FFFFFF;
}
html body .block-services-list .service-wrapper .text a {
  display: inline-block;
  width: auto;
  padding: 10px;
  margin-left: 100%;
  transform: translate(-100%, 0);
  white-space: nowrap;
  margin-top: 108px;
}
html body .block-services-list .service-wrapper .note {
  width: 60vw;
  margin-left: 15vw;
  margin-bottom: 108px;
}
html body .block-services-list .service-wrapper .note p {
  border: 20px solid #000;
  padding: 1.875rem 2.5rem;
}
html body .block-services-list .service-wrapper .note p, html body .block-services-list .service-wrapper .note p a {
  color: #FFFFFF;
  text-align: justify;
  font-family: "neue-montreal", serif;
  font-size: 1.25rem;
  font-style: normal;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
html body .block-services-list .service-wrapper .note p a {
  text-decoration-line: underline;
  font-weight: 400;
}
@media (max-width: 1199.98px) {
  html body .block-services-list .service-wrapper .inner-container {
    padding-bottom: 150px;
  }
  html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6 {
    margin-bottom: 60px;
  }
  html body .block-services-list .service-wrapper .text a {
    margin-bottom: 80px;
  }
}
@media (max-width: 767.98px) {
  html body .block-services-list .service-wrapper .inner-container {
    padding-bottom: 80px;
  }
  html body .block-services-list .service-wrapper .title h1, html body .block-services-list .service-wrapper .title .h1, html body .block-services-list .service-wrapper .title h2, html body .block-services-list .service-wrapper .title .h2, html body .block-services-list .service-wrapper .title h3, html body .block-services-list .service-wrapper .title .h3, html body .block-services-list .service-wrapper .title h4, html body .block-services-list .service-wrapper .title .h4, html body .block-services-list .service-wrapper .title h5, html body .block-services-list .service-wrapper .title .h5, html body .block-services-list .service-wrapper .title h6, html body .block-services-list .service-wrapper .title .h6 {
    margin: 60px 20px 40px;
  }
  html body .block-services-list .service-wrapper .text {
    margin: 0 20px;
    width: auto;
  }
  html body .block-services-list .service-wrapper .service-vertical-text {
    position: relative;
    width: 100%;
    margin-top: 80px;
  }
  html body .block-services-list .service-wrapper .service-vertical-text h1, html body .block-services-list .service-wrapper .service-vertical-text .h1, html body .block-services-list .service-wrapper .service-vertical-text h2, html body .block-services-list .service-wrapper .service-vertical-text .h2, html body .block-services-list .service-wrapper .service-vertical-text h3, html body .block-services-list .service-wrapper .service-vertical-text .h3, html body .block-services-list .service-wrapper .service-vertical-text h4, html body .block-services-list .service-wrapper .service-vertical-text .h4, html body .block-services-list .service-wrapper .service-vertical-text h5, html body .block-services-list .service-wrapper .service-vertical-text .h5, html body .block-services-list .service-wrapper .service-vertical-text h6, html body .block-services-list .service-wrapper .service-vertical-text .h6 {
    writing-mode: lr;
    transform: none;
    padding-top: 0;
  }
  html body .block-services-list .service-wrapper .service-vertical-text .service-vertical-wrapper {
    width: max-content;
  }
  html body .block-services-list .service-wrapper .service-vertical-text .service-vertical-inner {
    float: left;
    -webkit-animation: horizontal-scrolling 30s linear infinite;
    animation: horizontal-scrolling 30s linear infinite;
  }
  @-webkit-keyframes horizontal-scrolling {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-100%);
    }
  }
  @keyframes horizontal-scrolling {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-100%);
    }
  }
  html body .block-services-list .service-wrapper .note {
    margin: 0 20px;
    width: auto;
  }
  html body .block-services-list .service-wrapper .note p {
    border-width: 10px;
    padding: 20px;
  }
}

html body .block-media {
  padding-top: 100px;
  padding-bottom: 100px;
  min-height: 100vh;
}
@media (max-width: 575.98px) {
  html body .block-media {
    padding-top: calc(50px / 2 * 2);
    padding-bottom: calc(50px / 2 * 2);
  }
}

.block-project-media {
  display: flex;
  justify-content: center;
  align-items: center;
}
.block-project-media .media-container {
  width: 100vw;
  max-width: 1100px;
}
.block-project-media .media-container .wp-video {
  width: auto !important;
}
.block-project-media .media-container .wp-video .mejs-container {
  position: relative !important;
  width: auto !important;
  height: auto !important;
}
.block-project-media .media-container .wp-video .mejs-container .mejs-mediaelement {
  display: block;
  height: auto !important;
  position: relative !important;
}
.block-project-media .media-container .wp-video .mejs-container .mejs-mediaelement > * {
  height: auto !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.block-project-media .media-container .wp-video .mejs-container .mejs-mediaelement > * video {
  position: relative;
  top: 0 !important;
  left: 0 !important;
  transform: none;
}
.block-project-media .media-container img {
  width: 100%;
}
@media (min-width: 768px) {
  .block-project-media .media-container {
    width: 90vw;
  }
}
.block-project-media.type-full {
  width: 100vw;
  height: 100vh;
  position: relative;
}
.block-project-media.media-cover .media-container {
  width: 100%;
  max-width: 100%;
  height: 100%;
  overflow: hidden;
}
.block-project-media.media-cover .media-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 767.98px) {
  .block-project-media.media-cover .media-container {
    position: relative;
  }
  .block-project-media.media-cover .media-container img {
    position: absolute;
  }
}
.block-project-media.border-enabled .media-container {
  border: 20px solid transparent;
}
@media (max-width: 767.98px) {
  .block-project-media.border-enabled .media-container {
    border-width: 10px;
  }
}
.block-project-media.border-white .media-container {
  border-color: #FFFFFF;
}
.block-project-media.border-black .media-container {
  border-color: #000000;
}
.block-project-media.light {
  background-color: #E5E5E5;
}
.block-project-media.light .content {
  color: #000000;
}
.block-project-media.light + .light {
  margin-top: -1px;
}
@media (max-width: 767.98px) {
  .block-project-media.mobile-no-spacing {
    width: 100vw;
    height: auto !important;
  }
}

.block-project-content {
  width: 100%;
  padding: 200px 0 170px;
}
.block-project-content .small-title {
  color: #FFFFFF;
  text-align: center;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 21.6px */
  letter-spacing: 0px;
  text-transform: uppercase;
  margin-bottom: 70px;
}
.block-project-content .content {
  color: #FFFFFF;
  max-width: 700px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: justify;
}
.block-project-content.light {
  background-color: #E5E5E5;
}
.block-project-content.light .small-title {
  color: #000000;
}
.block-project-content.light .content {
  color: #000000;
}
.block-project-content.light .content .long-line {
  border-color: #000000;
}
.block-project-content.light + .light {
  margin-top: -1px;
}
.block-project-content.no-spacing-bottom {
  padding-bottom: 0 !important;
}
.block-project-content.no-spacing-top {
  padding-top: 0 !important;
}
@media (min-width: 768px) {
  .block-project-content.no-spacing-desktop-bottom {
    padding-bottom: 0 !important;
  }
  .block-project-content.no-spacing-desktop-top {
    padding-top: 0 !important;
  }
}
@media (max-width: 767.98px) {
  .block-project-content {
    padding: 120px 0;
  }
}

.block-project-quotes {
  min-height: 90vh;
  overflow: hidden;
}
.block-project-quotes .cont .row {
  min-height: 90vh;
}
.block-project-quotes .cont .slider-arrows {
  position: absolute;
  pointer-events: none;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding: 0 50px;
}
.block-project-quotes .cont .slider-arrows .slick-arrow {
  pointer-events: all;
  cursor: pointer;
  width: 75px;
  height: 75px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  border: 1px solid #FFFFFF;
  border-radius: 50%;
  transition: 0.5s ease-in-out;
  transform: scale(1);
}
.block-project-quotes .cont .slider-arrows .slick-arrow:hover {
  transform: scale(1.1);
}
.block-project-quotes .cont .slider-arrows .slick-arrow.slick-disabled {
  opacity: 0;
}
.block-project-quotes .sliding-text {
  writing-mode: vertical-lr;
  font-size: 3.75rem;
  letter-spacing: 0;
  color: #FFFFFF;
  font-weight: 400;
  white-space: nowrap;
}
.block-project-quotes .sliding-text-container {
  height: 100%;
  transform: rotate(180deg);
  max-height: 90vh;
  overflow: hidden;
}
.block-project-quotes .sliding-text span {
  font-family: "Bodoni Moda", serif;
  padding: 20px 0;
}
.block-project-quotes .sliding-text .alt {
  font-family: "neue-montreal", sans-serif;
  font-weight: 300;
}
.block-project-quotes .slider-container {
  max-width: 660px;
  width: 100%;
  margin: 0 auto;
}
.block-project-quotes .slider-container .slide {
  color: #FFFFFF;
}
.block-project-quotes .slider-container .slide .author {
  margin-top: 50px;
}
.block-project-quotes .slider-container .slide .quotemark {
  width: 200px;
  height: 64px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FFFFFF;
  margin: 0 auto 50px;
}
.block-project-quotes .slider-container .slick-dots {
  bottom: -80px;
}
.block-project-quotes .slider-container .slick-dots li {
  margin: 0;
}
.block-project-quotes .slider-container .slick-dots li button {
  width: 28px;
  height: 100%;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0.2 !important;
}
.block-project-quotes .slider-container .slick-dots li button:before {
  content: "";
  width: 8px !important;
  height: 8px !important;
  background: #FFFFFF !important;
  border-radius: 50% !important;
  position: relative !important;
}
.block-project-quotes .slider-container .slick-dots li.slick-active button {
  opacity: 1 !important;
}
@media (max-width: 991.98px) {
  .block-project-quotes .sliding-text {
    writing-mode: lr;
  }
  .block-project-quotes .sliding-text-container {
    transform: none;
    height: 140px;
    align-items: flex-end;
    display: flex;
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .block-project-quotes .sliding-text span {
    font-size: 2.125rem;
    letter-spacing: 0;
    padding: 0 10px;
  }
  .block-project-quotes .cont .row {
    min-height: 0;
    padding: 0 20px 130px;
  }
  .block-project-quotes .cont .slider-arrows {
    padding: 0 20px;
    top: 60%;
  }
  .block-project-quotes .slider-container {
    margin-top: 80px;
  }
}
@media (max-width: 767.98px) {
  .block-project-quotes .cont .slider-arrows {
    display: none;
  }
}

.block-project-screens-carousel {
  padding: 150px 0;
  pointer-events: none;
}
.block-project-screens-carousel .slider-container {
  position: relative;
}
.block-project-screens-carousel-slider {
  width: 118vw;
  margin-left: -9vw;
}
.block-project-screens-carousel-slider .slide {
  display: flex !important;
  justify-content: center;
}
.block-project-screens-carousel-slider .slide img {
  max-height: 370px;
}
@media (max-width: 991.98px) {
  .block-project-screens-carousel-slider {
    width: 128vw;
    margin-left: -14vw;
  }
}
@media (max-width: 575.98px) {
  .block-project-screens-carousel-slider {
    width: 204vw;
    margin-left: -52vw;
  }
}
.block-project-screens-carousel-phone-overlay {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 192px;
}
.block-project-screens-carousel-phone-overlay svg {
  transform: translate(2.9px, -3px) scale(0.98);
}
.block-project-screens-carousel-phone-overlay svg {
  width: 100% !important;
  height: auto;
  transform: translate(3px, 2px) scale(1);
}
@media (max-width: 1199.98px) {
  .block-project-screens-carousel-phone-overlay svg {
    transform: translate(1px, 2px) scale(1);
  }
}
@media (max-width: 767.98px) {
  .block-project-screens-carousel-phone-overlay svg {
    transform: translate(2px, 1px) scale(1);
  }
}
@media (max-width: 575.98px) {
  .block-project-screens-carousel-phone-overlay svg {
    transform: translate(1px, 1px) scale(1);
  }
}
.block-project-screens-carousel.light {
  background-color: #E5E5E5;
}
.block-project-screens-carousel.light + .light {
  margin-top: -1px;
}
.block-project-screens-carousel.no-spacing-bottom {
  padding-bottom: 0;
}
.block-project-screens-carousel.no-spacing-top {
  padding-top: 0;
}

.block-project-horizontal-section .main-rail {
  height: 100vh;
  max-height: 100vw !important;
  display: flex;
  align-items: center;
}
.block-project-horizontal-section .main-rail .horizontal-section-inner-block {
  max-height: 100%;
  display: flex;
}
.block-project-horizontal-section .main-rail .horizontal-section-inner-block .inner-container {
  max-height: 100%;
}
.block-project-horizontal-section .main-rail .horizontal-section-inner-block .image-container img {
  max-height: calc(100vh - 100px);
}
.block-project-horizontal-section .main-rail .horizontal-section-inner-block .image-container.type-small-full img {
  max-height: 50vh;
}
.block-project-horizontal-section .main-rail .horizontal-section-inner-block .image-caption {
  color: #FFFFFF;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 400;
  opacity: 0.4;
  margin-top: 10px;
  display: block;
  line-height: 1.8;
}
@media (max-width: 767.98px) {
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block .image-caption {
    padding: 0 20px;
  }
}
@media (min-width: 992px) {
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block:last-child {
    padding-right: 60px;
  }
}
@media (min-width: 992px) {
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block.extra-spacing-left {
    padding-left: 110px;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block.extra-spacing-right {
    padding-right: 110px;
  }
}
@media (max-width: 991.98px) {
  .block-project-horizontal-section .main-rail {
    height: auto;
    flex-direction: column;
    max-width: 600px;
    margin: 0 auto;
    padding: 80px 0 120px 0;
    max-height: none !important;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block {
    max-width: 100%;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block .image-container img {
    max-height: none;
    max-width: 100%;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block .content {
    margin: 0;
    width: 100%;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block:not(:last-child) {
    margin-bottom: 120px;
  }
  .block-project-horizontal-section .main-rail .horizontal-section-inner-block.mobile-less-spacing-bottom {
    margin-bottom: 80px;
  }
}
@media (max-width: 767.98px) {
  .block-project-horizontal-section .main-rail p {
    font-size: 1.25rem;
  }
}
.block-project-horizontal-section.light {
  background-color: #E5E5E5;
}
.block-project-horizontal-section.light .content {
  color: #000000;
}

.block-project-horizontal-sections-content-image .content {
  color: #FFFFFF !important;
  width: 550px;
  margin: 0 130px 0 180px;
  text-align: justify;
}
.block-project-horizontal-sections-content-image .content:not(.first-letter-normal):first-letter, .block-project-horizontal-sections-content-image .content p:not(.first-letter-normal):first-letter {
  font-family: "Bodoni Moda", serif;
  /*font-size: 5rem;*/
  font-style: normal;
  font-weight: 400;
}
@media (max-width: 1199.98px) {
  .block-project-horizontal-sections-content-image .content:not(.first-letter-normal):first-letter, .block-project-horizontal-sections-content-image .content p:not(.first-letter-normal):first-letter {
    /* font-size: 4rem;*/
  }
}
@media (max-width: 767.98px) {
  .block-project-horizontal-sections-content-image .content:not(.first-letter-normal):first-letter, .block-project-horizontal-sections-content-image .content p:not(.first-letter-normal):first-letter {
    /*font-size: 3rem;*/
  }
}
.block-project-horizontal-sections-content-image .content:not(.first-letter-normal) > span:first-child, .block-project-horizontal-sections-content-image .content p:not(.first-letter-normal) > span:first-child {
  padding-top: 2.5rem;
}
@media (max-width: 767.98px) {
  .block-project-horizontal-sections-content-image .content:not(.first-letter-normal) > span:first-child, .block-project-horizontal-sections-content-image .content p:not(.first-letter-normal) > span:first-child {
    padding-top: 1.25rem;
  }
}
.block-project-horizontal-sections-content-image .type-smaller,
.block-project-horizontal-sections-content-image .type-smaller .image-container,
.block-project-horizontal-sections-content-image .type-smaller-mobile-square,
.block-project-horizontal-sections-content-image .type-smaller-mobile-square .image-container {
  max-height: 55vh;
  max-width: max-content;
  flex-grow: 0;
  width: auto;
}
.block-project-horizontal-sections-content-image .type-smaller .image-container img,
.block-project-horizontal-sections-content-image .type-smaller-mobile-square .image-container img {
  max-height: 100% !important;
  object-fit: cover;
  width: auto;
  min-width: 100%;
}
.block-project-horizontal-sections-content-image .image-container {
  max-height: 100%;
  display: flex;
}
.block-project-horizontal-sections-content-image .image-container img {
  max-height: 100%;
  object-fit: cover;
  width: auto;
  min-width: 100%;
}
.block-project-horizontal-sections-content-image .image-container.border-enabled {
  border: 20px solid transparent;
}
@media (max-width: 991.98px) {
  .block-project-horizontal-sections-content-image .image-container.border-enabled {
    border-width: 10px;
  }
}
.block-project-horizontal-sections-content-image .image-container.border-white {
  border-color: #FFFFFF;
}
.block-project-horizontal-sections-content-image .image-container.border-black {
  border-color: #000000;
}
.block-project-horizontal-sections-content-image .media-part:not(.type-smaller):not(.type-smaller-mobile-square) {
  max-height: 100%;
}
@media (max-width: 991.98px) {
  .block-project-horizontal-sections-content-image .content {
    padding: 60px 20px;
  }
  .block-project-horizontal-sections-content-image .type-mobile-square,
  .block-project-horizontal-sections-content-image .type-mobile-square .image-container,
  .block-project-horizontal-sections-content-image .type-smaller-mobile-square,
  .block-project-horizontal-sections-content-image .type-smaller-mobile-square .image-container {
    aspect-ratio: 1 !important;
  }
  .block-project-horizontal-sections-content-image .type-mobile-square .image-container img,
  .block-project-horizontal-sections-content-image .type-smaller-mobile-square .image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.block-project-horizontal-sections-content-image-overlapped .content {
  color: #FFFFFF !important;
  width: 550px;
  text-align: justify;
  margin: 0 110px 0 130px;
}
.block-project-horizontal-sections-content-image-overlapped .content h4, .block-project-horizontal-sections-content-image-overlapped .content .h4 {
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0;
  margin-left: -200px;
  margin-bottom: 60px;
  mix-blend-mode: difference;
  text-align: left;
}
.block-project-horizontal-sections-content-image-overlapped .media-part {
  max-height: 55vh;
  max-width: max-content;
  flex-grow: 0;
  width: auto;
}
.block-project-horizontal-sections-content-image-overlapped .image-container {
  max-height: 100%;
  display: block;
  width: auto;
  max-width: fit-content;
}
.block-project-horizontal-sections-content-image-overlapped .image-container img {
  max-height: 100% !important;
  object-fit: cover;
  width: auto;
  min-width: 100%;
}
.block-project-horizontal-sections-content-image-overlapped .image-container.border-enabled {
  border: 20px solid transparent;
}
@media (max-width: 991.98px) {
  .block-project-horizontal-sections-content-image-overlapped .image-container.border-enabled {
    border-width: 10px;
  }
}
.block-project-horizontal-sections-content-image-overlapped .image-container.border-white {
  border-color: #FFFFFF;
}
.block-project-horizontal-sections-content-image-overlapped .image-container.border-black {
  border-color: #000000;
}
@media (max-width: 991.98px) {
  .block-project-horizontal-sections-content-image-overlapped .content {
    padding: 0 20px;
  }
  .block-project-horizontal-sections-content-image-overlapped .content h4, .block-project-horizontal-sections-content-image-overlapped .content .h4 {
    margin: -24px 0 20px;
  }
  .block-project-horizontal-sections-content-image-overlapped .image-caption {
    margin: 0 0 10px 0;
  }
}
@media (max-width: 767.98px) {
  .block-project-horizontal-sections-content-image-overlapped .content h4, .block-project-horizontal-sections-content-image-overlapped .content .h4 {
    font-size: 1.875rem;
  }
  .block-project-horizontal-sections-content-image-overlapped .content p {
    font-size: 1rem !important;
  }
}

@-webkit-keyframes scroll-down {
  0% {
    top: 0;
    height: 0;
  }
  40% {
    top: 0;
    height: 100%;
  }
  50% {
    top: auto;
    bottom: 0;
    height: 100%;
  }
  90% {
    bottom: 0;
    height: 0;
  }
  100% {
    bottom: 0;
    height: 0;
  }
}
@keyframes scroll-down {
  0% {
    top: 0;
    height: 0;
  }
  40% {
    top: 0;
    height: 100%;
  }
  50% {
    top: auto;
    bottom: 0;
    height: 100%;
  }
  90% {
    bottom: 0;
    height: 0;
  }
  100% {
    bottom: 0;
    height: 0;
  }
}
#project-hero .hero_part {
  padding-top: 140px;
  min-height: 100vh;
}
#project-hero .hero_text {
  color: #FFFFFF;
}
#project-hero .hero_text h1, #project-hero .hero_text .h1 {
  font-family: "Bodoni Moda", serif;
  font-size: 5rem;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0;
}
#project-hero .hero_text h2, #project-hero .hero_text .h2 {
  font-family: "Bodoni Moda", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
}
@media (max-width: 767.98px) {
  #project-hero .hero_text h1, #project-hero .hero_text .h1 {
    font-size: 2.5rem;
    letter-spacing: 0;
  }
  #project-hero .hero_text h2, #project-hero .hero_text .h2 {
    font-size: 0.875rem;
    letter-spacing: 0;
  }
}
#project-hero .hero_background {
  margin-top: auto;
  position: relative;
}
#project-hero .hero_background .claim {
  width: 70%;
  max-width: 800px;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  transform: translateY(-50%);
}
#project-hero .hero_background .claim h4, #project-hero .hero_background .claim .h4 {
  align-items: center;
  color: #000000;
  font-size: 2.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
  text-transform: uppercase;
  display: flex;
  background: transparent;
  flex-wrap: wrap;
}
#project-hero .hero_background .claim h4 span, #project-hero .hero_background .claim .h4 span {
  padding: 0rem 0.6rem;
  font-family: "Bodoni Moda", serif;
  background: #FFFFFF;
  display: block;
  margin-bottom: 8px;
}
@media (max-width: 1199.98px) {
  #project-hero .hero_background .claim {
    top: 0;
  }
  #project-hero .hero_background .claim h4, #project-hero .hero_background .claim .h4 {
    font-size: 1.725rem;
  }
}
@media (max-width: 767.98px) {
  #project-hero .hero_background .claim {
    top: 120px;
    transform: translateY(-70%);
  }
  #project-hero .hero_background .claim h4, #project-hero .hero_background .claim .h4 {
    font-size: 1.125rem;
    letter-spacing: 0;
    max-width: 80vw;
  }
}
#project-hero .hero_background .background {
  width: 56%;
}
#project-hero .hero_background .background-container {
  border: 20px solid #000000;
  position: relative;
}
#project-hero .hero_background .background-image {
  width: 100%;
}
#project-hero .hero_background .background .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 50%;
}
#project-hero .hero_background .background .logo img {
  width: 100%;
}
@media (max-width: 767.98px) {
  #project-hero .hero_background .background {
    padding-top: 120px;
    width: 90%;
    max-width: 400px;
  }
  #project-hero .hero_background .background .background-container {
    border: 10px solid #000000;
  }
  #project-hero .hero_background .background .background-image {
    aspect-ratio: 1;
    object-fit: cover;
    object-position: left;
  }
}
@media (max-width: 767.98px) {
  #project-hero .hero_background {
    flex-grow: 1;
    max-width: 380px;
    margin-left: auto;
  }
  #project-hero .hero_background .claim {
    top: 18vh;
  }
  #project-hero .hero_background .background {
    padding-top: 18vh;
    padding-right: 15px;
  }
}
@media (max-width: 767.98px) {
  #project-hero .hero {
    padding: 0 20px;
  }
}
#project-hero .content_part {
  padding-top: 100px;
  padding-bottom: 140px;
}
#project-hero .content_part,
#project-hero .content_part * {
  color: #FFFFFF;
  font-family: "neue-montreal", sans-serif;
}
#project-hero .content_part .row > * {
  margin-bottom: 35px;
}
@media (max-width: 767.98px) {
  #project-hero .content_part .row > * {
    margin-bottom: 40px;
  }
}
@media (min-width: 768px) {
  #project-hero .content_part > .row:last-child {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 100px;
  }
  #project-hero .content_part > .row:last-child._large {
    grid-template-columns: 1fr;
  }
}
#project-hero .content_part small, #project-hero .content_part .small {
  font-size: 0.75rem;
  line-height: 180%;
  letter-spacing: 0px;
  font-weight: 300;
  text-transform: uppercase;
}
#project-hero .content_part p {
  font-size: 1.25rem;
  line-height: 180%;
  letter-spacing: 0px;
  font-weight: 300;
}
@media (max-width: 767.98px) {
  #project-hero .content_part p {
    font-size: 1rem;
  }
}
#project-hero .content_part b {
  font-size: 0.75rem;
  line-height: 180%;
  letter-spacing: 0px;
  font-weight: 400;
  text-transform: uppercase;
}
#project-hero .content_columns {
  margin: 35px -65px 0;
}
#project-hero .content_columns > * {
  padding: 0 65px;
}
@media (max-width: 767.98px) {
  #project-hero .content_columns {
    margin: 40px -20px 0;
  }
  #project-hero .content_columns > * {
    padding: 0 20px;
  }
  #project-hero .content_columns > :first-child {
    margin-bottom: 40px;
  }
}
#project-hero .scroll-down {
  margin-top: 40px;
  padding-top: 40px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: relative;
}
#project-hero .scroll-down:after {
  content: "";
  display: block;
  width: 1px;
  height: 40px;
  background: #FFFFFF;
  margin-left: 20px;
  position: absolute;
  bottom: 0;
  -webkit-animation: 2s scroll-down infinite;
  animation: 2s scroll-down infinite;
}

.contact-us {
  position: relative;
}
@media (max-width: 991.98px) {
  .contact-us #main-title {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }
}
.contact-us #main-title h1, .contact-us #main-title .h1 {
  opacity: 0.1;
  color: #FFFFFF;
  text-align: center;
  font-family: "Bodoni Moda", serif !important;
  font-size: 20vw;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  font-size: 17.5rem;
  margin-top: -50px;
}
@media (max-width: 767.98px) {
  .contact-us #main-title h1, .contact-us #main-title .h1 {
    opacity: 0.2;
  }
}
.contact-us #main-title h2, .contact-us #main-title .h2 {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  margin-top: -7rem;
  max-width: 1100px;
  color: #FFFFFF;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@media (max-width: 1599.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2 {
    margin-top: -7vw;
  }
}
@media (max-width: 991.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2 {
    margin-top: -5vw;
  }
}
@media (max-width: 767.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2 {
    margin-top: 0;
    width: calc(100% - 60px);
  }
}
@media (max-width: 1399.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2, .contact-us #main-title h2 span, .contact-us #main-title .h2 span {
    margin-left: 0;
    font-size: 5rem;
  }
}
.contact-us #main-title h2 span, .contact-us #main-title .h2 span {
  margin-left: 0 !important;
  font-family: "Bodoni Moda", serif;
  font-weight: 400;
}
.contact-us #main-title h2, .contact-us #main-title .h2, .contact-us #main-title h2 span, .contact-us #main-title .h2 span {
  font-size: 5rem;
  font-style: normal;
  line-height: 120%; /* 6rem */
  letter-spacing: 0;
}
@media (max-width: 1399.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2, .contact-us #main-title h2 span, .contact-us #main-title .h2 span {
    margin-left: 7vw;
    font-size: 6vw;
  }
}
@media (max-width: 767.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2, .contact-us #main-title h2 span, .contact-us #main-title .h2 span {
    width: 90vw !important;
    margin-left: auto;
    margin-right: auto;
    font-size: 2.5rem;
  }
}
@media (max-width: 575.98px) {
  .contact-us #main-title h2, .contact-us #main-title .h2, .contact-us #main-title h2 span, .contact-us #main-title .h2 span {
    font-size: 10vw;
  }
}
.contact-us #main-title h2 b, .contact-us #main-title .h2 b,
.contact-us #main-title h2 strong,
.contact-us #main-title .h2 strong {
  font-weight: 400;
  font-family: "Bodoni Moda", serif;
}
.contact-us #contact-form-wrapper {
  margin-left: 50%;
  padding-right: 5% !important;
  max-width: 80rem;
  min-height: 100vh;
}
@media (max-width: 991.98px) {
  .contact-us #contact-form-wrapper {
    width: 90vw !important;
    margin-left: auto;
    margin-right: auto;
  }
}
.contact-us #offices-wrapper {
  position: relative;
  min-height: 100vh !important;
  background-size: cover;
}
@media (max-width: 991.98px) {
  .contact-us #offices-wrapper .vh-100 {
    height: auto !important;
  }
}
.contact-us #offices-wrapper #text-stripe {
  overflow: hidden;
}
.contact-us #offices-wrapper #text-stripe p {
  white-space: nowrap;
  margin: 4rem 0 3rem -2rem;
  color: #000000;
  font-family: "Bodoni Moda", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0;
  text-transform: uppercase;
  -webkit-animation: scrolling 30s linear infinite;
  animation: scrolling 30s linear infinite;
  animation-direction: reverse;
}
@media (max-width: 1199.98px) {
  .contact-us #offices-wrapper #text-stripe p {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767.98px) {
  .contact-us #offices-wrapper #text-stripe p {
    font-size: 1.875rem;
  }
}
.contact-us #offices-wrapper #text-stripe p span {
  display: inline-block;
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@-webkit-keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes scrolling {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.contact-us #offices-wrapper .addresses {
  display: flex;
  width: 48.3125rem;
  height: 26.5625rem;
  margin-bottom: 10rem;
  padding: 0 5rem;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  border: 20px solid #FFFFFF;
}
@media (max-width: 991.98px) {
  .contact-us #offices-wrapper .addresses {
    flex-direction: column;
    width: 50vw;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 767.98px) {
  .contact-us #offices-wrapper .addresses {
    width: 65vw;
    border-width: 10px;
  }
}
@media (max-width: 575.98px) {
  .contact-us #offices-wrapper .addresses {
    width: calc(100% - 40px);
  }
}
.contact-us #offices-wrapper .addresses p {
  display: flex;
  margin-top: 2rem;
  margin-bottom: 2rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.25rem;
}
.contact-us #offices-wrapper .addresses p, .contact-us #offices-wrapper .addresses p a, .contact-us #offices-wrapper .addresses p strong {
  color: rgba(0, 0, 0, 0.4);
  text-align: center;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 1.35rem */
  letter-spacing: 0;
}
.contact-us #offices-wrapper .addresses p strong {
  color: #000000;
  text-transform: capitalize;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0.0625rem;
}
.contact-us #offices-wrapper .addresses p em {
  display: inline-block;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  background-color: #FFFFFF;
}
.contact-us #offices-wrapper .addresses p em span {
  color: #000000;
  font-weight: 400;
}
@media (max-width: 767.98px) {
  .contact-us #offices-wrapper .addresses p em {
    padding: 4px 0.5rem;
  }
  .contact-us #offices-wrapper .addresses p, .contact-us #offices-wrapper .addresses p a, .contact-us #offices-wrapper .addresses p strong {
    line-height: 100%;
  }
}
.contact-us #offices-wrapper .addresses ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 50%;
  margin-left: 10%;
}
@media (max-width: 991.98px) {
  .contact-us #offices-wrapper .addresses ul {
    max-width: unset;
    margin-left: 0;
  }
}
.contact-us #offices-wrapper .addresses ul li {
  width: 48%;
  min-height: 3rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 2.25rem */
  letter-spacing: 0;
}
.contact-us #offices-wrapper .addresses ul li span {
  display: block;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 1.35rem */
  letter-spacing: 0;
  text-transform: uppercase;
}
@media (max-width: 991.98px) {
  .contact-us #offices-wrapper .block-offices__offices {
    padding-bottom: 250px;
  }
}

.page-template-startup-landing-block-template .location-details .page-name,
.page-template-corporations-landing-block-template .location-details .page-name {
  display: none !important;
}
.page-template-startup-landing-block-template footer,
.page-template-corporations-landing-block-template footer {
  top: -85px;
}
@media (max-width: 991.98px) {
  .page-template-startup-landing-block-template footer, .page-template-startup-landing-block-template #footer,
  .page-template-corporations-landing-block-template footer,
  .page-template-corporations-landing-block-template #footer {
    height: 130px !important;
  }
}

@media (max-width: 1199.98px) {
  .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h2, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h2 {
    width: 60vw !important;
  }
}
@media (max-width: 991.98px) {
  .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h2, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h2 {
    width: 70vw !important;
  }
}
@media (max-width: 767.98px) {
  .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h2, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h2 {
    width: 80vw !important;
  }
}
@media (max-width: 575.98px) {
  .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h1, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title h2, .page-template-corporations-landing-block-template .horizontal-container-text .service-wrapper .pre-title .h2 {
    width: 90vw !important;
  }
}

#custom-adv-landing-wrp .cta-link-to {
  float: right;
  min-width: 120px;
  max-width: 150px;
  display: block;
  padding: 0;
  margin: unset;
  transform: unset;
  text-align: center;
  width: inherit;
}
#custom-adv-landing-wrp .block-page-hero {
  min-height: unset;
}
#custom-adv-landing-wrp .block-page-hero .title-subtitle-wrapper {
  padding-top: 5rem;
  padding-bottom: 10rem;
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-page-hero .title-subtitle-wrapper {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
  }
}
#custom-adv-landing-wrp .block-page-hero .content {
  max-width: 50vw;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-page-hero .content {
    max-width: 60vw;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-page-hero .content {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-page-hero .content {
    max-width: 80vw;
  }
}
#custom-adv-landing-wrp .block-page-hero .content h2, #custom-adv-landing-wrp .block-page-hero .content .h2 {
  margin-bottom: 5rem;
  color: #FFFFFF;
  text-align: center;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
}
#custom-adv-landing-wrp .block-page-hero .content h2, #custom-adv-landing-wrp .block-page-hero .content .h2, #custom-adv-landing-wrp .block-page-hero .content h2::first-letter, #custom-adv-landing-wrp .block-page-hero .content .h2::first-letter {
  font-family: "neue-montreal", serif;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-page-hero .content h2, #custom-adv-landing-wrp .block-page-hero .content .h2 {
    font-size: 3.25rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-page-hero .content h2, #custom-adv-landing-wrp .block-page-hero .content .h2 {
    font-size: 2.75rem;
    margin-bottom: 3rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-page-hero .content h2, #custom-adv-landing-wrp .block-page-hero .content .h2 {
    font-size: 2.25rem;
  }
}
#custom-adv-landing-wrp .block-services-list .spacer,
#custom-adv-landing-wrp .block-page-hero .spacer {
  min-height: 5rem;
}
#custom-adv-landing-wrp .block-services-list .service-wrapper, #custom-adv-landing-wrp .block-services-list .service-wrapper .inner-container {
  min-height: unset;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-services-list .service-wrapper, #custom-adv-landing-wrp .block-services-list .service-wrapper .inner-container {
    padding-bottom: 0;
  }
}
#custom-adv-landing-wrp .block-services-list .service-wrapper .title h2, #custom-adv-landing-wrp .block-services-list .service-wrapper .title .h2 {
  font-size: 2.5rem;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-services-list .service-wrapper .title h2, #custom-adv-landing-wrp .block-services-list .service-wrapper .title .h2 {
    margin-bottom: 0;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-services-list .service-wrapper .title h2, #custom-adv-landing-wrp .block-services-list .service-wrapper .title .h2 {
    margin-top: 1rem;
  }
}
#custom-adv-landing-wrp .block-services-list .service-wrapper .text {
  width: 50vw;
  margin: 2rem auto;
}
#custom-adv-landing-wrp .block-services-list .service-wrapper .text::before {
  left: -30vw;
  width: 40vw;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-services-list .service-wrapper .text {
    width: 60vw;
    margin: 1.5rem auto;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-services-list .service-wrapper .text {
    width: 80vw;
  }
}
#custom-adv-landing-wrp #hero {
  height: calc(100vh - 85px);
  margin-top: 85px;
}
#custom-adv-landing-wrp #hero .fixed-section-inner {
  width: 100%;
  height: 100%;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#custom-adv-landing-wrp #hero .fixed-section-inner.startup {
  background-image: url(/wp-content/uploads/2023/10/hero.jpg);
}
#custom-adv-landing-wrp #hero .fixed-section-inner.corporations {
  background-image: url(/wp-content/uploads/2023/10/hero-corporations.jpg);
}
#custom-adv-landing-wrp #hero #claim {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  justify-content: center;
  width: 70%;
  height: 100%;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 1599.98px) {
  #custom-adv-landing-wrp #hero #claim {
    width: 80%;
  }
}
@media (max-width: 1399.98px) {
  #custom-adv-landing-wrp #hero #claim {
    width: 90%;
  }
}
#custom-adv-landing-wrp #hero #claim h1, #custom-adv-landing-wrp #hero #claim .h1 {
  margin-bottom: 2rem;
  text-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25);
  font-family: "neue-montreal", serif;
  font-weight: 900;
  font-size: 4.725rem;
  font-style: normal;
  line-height: normal;
  text-transform: uppercase;
  color: #FFFFFF;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp #hero #claim h1, #custom-adv-landing-wrp #hero #claim .h1 {
    font-size: 4rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp #hero #claim h1, #custom-adv-landing-wrp #hero #claim .h1 {
    font-size: 3.5rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp #hero #claim h1, #custom-adv-landing-wrp #hero #claim .h1 {
    margin-bottom: 1rem;
    font-size: 2.5rem;
  }
}
#custom-adv-landing-wrp #hero #claim h2, #custom-adv-landing-wrp #hero #claim .h2 {
  margin-bottom: 3rem;
  text-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25);
  font-family: "neue-montreal", serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
  color: #FFFFFF;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp #hero #claim h2, #custom-adv-landing-wrp #hero #claim .h2 {
    font-size: 2rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp #hero #claim h2, #custom-adv-landing-wrp #hero #claim .h2 {
    font-size: 1.8rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp #hero #claim h2, #custom-adv-landing-wrp #hero #claim .h2 {
    margin-bottom: 2rem;
    font-size: 1.5rem;
  }
}
#custom-adv-landing-wrp #hero #claim .cta {
  height: 3.125rem;
  margin-bottom: 3rem;
  padding: 0.625rem 2.1875rem;
  max-width: 270px;
  cursor: pointer;
  background-color: #000000;
  color: #FFFFFF;
  font-size: 1.25rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  flex-shrink: 0;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp #hero #claim .cta {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp #hero #claim .cta {
    margin-bottom: 1rem;
  }
}
#custom-adv-landing-wrp #hero #claim .cta:hover {
  color: #000000;
  background-color: #FFFFFF;
}
#custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h1, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h1 {
  width: 50vw;
  margin: 4rem auto;
  color: #FFFFFF;
  text-align: center;
  font-family: "neue-montreal", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 4.5rem */
  letter-spacing: 0;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h1, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h1 {
    margin: 3.5rem auto;
    font-size: 3.25rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h1, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h1 {
    margin: 3rem auto;
    font-size: 3rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h1, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h1 {
    margin: 3.5rem auto 2rem;
    font-size: 2.5rem;
  }
}
#custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h2, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h2 {
  width: 40vw;
  margin: 4rem auto;
  color: #FFFFFF;
  text-align: center;
  font-family: "neue-montreal", serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 180%; /* 4.05rem */
}
#custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h2 strong, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h2 strong {
  font-family: "bodoni-moda", serif;
  font-style: normal;
  font-weight: 500;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h2, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h2 {
    margin: 3rem auto;
    font-size: 2rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title h2, #custom-adv-landing-wrp .horizontal-container-text .service-wrapper .pre-title .h2 {
    margin: 3.5rem auto 2rem;
    font-size: 1.75rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .why-vegans-wrapper, #custom-adv-landing-wrp .why-vegans-wrapper .d-flex, #custom-adv-landing-wrp .why-vegans {
    height: auto !important;
  }
}
#custom-adv-landing-wrp #pre-why-vegans {
  margin-bottom: 8rem;
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp #pre-why-vegans {
    margin-bottom: 4rem;
  }
}
#custom-adv-landing-wrp .why-vegans {
  max-width: 900px;
  transform: translateX(-10vw);
}
@media (max-width: 1399.98px) {
  #custom-adv-landing-wrp .why-vegans {
    transform: translateX(-2vw);
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans {
    transform: unset;
    max-width: unset;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .why-vegans {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
#custom-adv-landing-wrp .why-vegans .title h2, #custom-adv-landing-wrp .why-vegans .title .h2 {
  font-family: "neue-montreal", serif;
  font-weight: 300;
}
@media (max-width: 1399.98px) {
  #custom-adv-landing-wrp .why-vegans .title h2, #custom-adv-landing-wrp .why-vegans .title .h2 {
    margin-bottom: 30px;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .why-vegans .title h2, #custom-adv-landing-wrp .why-vegans .title .h2 {
    margin-bottom: 15px;
    font-size: 2.5rem;
  }
}
#custom-adv-landing-wrp .why-vegans .content {
  max-width: unset;
}
#custom-adv-landing-wrp .why-vegans .content ul {
  margin-left: 13rem;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul {
    margin-left: 0;
  }
}
#custom-adv-landing-wrp .why-vegans .content ul li:not(:last-child) {
  border-bottom: 1px solid #000000;
  margin-bottom: 1.8rem;
  padding-bottom: 1.8rem;
}
@media (max-width: 1399.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul li:not(:last-child) {
    margin-bottom: 1.4rem;
    padding-bottom: 1.4rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul li:not(:last-child) {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul li div {
    flex-direction: column;
  }
  #custom-adv-landing-wrp .why-vegans .content ul li div strong {
    display: block;
    margin-bottom: 0.5rem;
  }
}
#custom-adv-landing-wrp .why-vegans .content ul li strong {
  min-width: 18rem;
  color: #000000;
  font-family: "bodoni-moda", serif;
  font-size: 2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 2.7rem */
  letter-spacing: 0;
  text-transform: capitalize;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul li strong {
    font-size: 1.85rem;
  }
}
#custom-adv-landing-wrp .why-vegans .content ul li p {
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  text-transform: capitalize;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .why-vegans .content ul li p {
    font-size: 1rem;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper {
  z-index: 40;
  background-color: #121212;
}
#custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text {
  color: #FFFFFF;
  max-width: 80vw;
  margin: 0 auto 10rem;
  padding: 10rem 15vw;
  border-bottom: 1px solid white;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text {
    max-width: 90vw;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text {
    margin-bottom: 5rem;
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text {
    max-width: 90vw;
    margin-bottom: 2rem;
    padding: 4rem 5vw;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text .text-type-std {
  color: #FFFFFF;
  text-align: center;
  font-family: "neue-montreal", serif;
  font-style: normal;
  font-weight: 300;
  line-height: 2.5rem; /* 200% */
}
#custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text .text-type-std, #custom-adv-landing-wrp .block-pre-form-wrapper .section-main-text .text-type-std::first-letter {
  font-size: 1.25rem;
}
#custom-adv-landing-wrp .block-pre-form-wrapper #contact-form-wrp {
  position: relative;
  top: -4rem;
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .title {
  color: #FFFFFF;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex {
    flex-direction: column;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .title, #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp {
  width: 50%;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .title, #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp {
    width: 100%;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .title {
  padding-left: 12rem;
  font-family: "neue-montreal", serif;
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 300;
  line-height: 120%; /* 4.5rem */
  letter-spacing: 0;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .title {
    margin-bottom: 2rem;
    padding-left: 2rem;
    font-size: 2.5rem;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form {
  padding-right: 12rem;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form {
    padding-left: 2rem;
    padding-right: 0;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp {
  display: inline-block;
  width: 49%;
  margin-bottom: 2rem;
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp input, #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp select {
  width: 80%;
  max-width: unset;
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp {
    width: 100%;
  }
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp input, #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .d-flex .contact-form-wrp .wpcf7-form .form-field-wrp select {
    width: 90%;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp {
  max-width: 30vw;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp {
    max-width: 70vw;
    min-height: 100vh;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .title h2, #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .title .h2 {
  margin: 8rem 0;
  font-family: "bodoni-moda", serif;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 2.7rem */
  letter-spacing: 0;
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .cta {
  height: 3.125rem;
  margin-bottom: 10rem;
  padding: 0.625rem 2.1875rem;
  max-width: 270px;
  color: #FFFFFF;
  background-color: transparent;
  border: 1px solid #FFFFFF;
  font-size: 1.25rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  flex-shrink: 0;
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .cta {
    margin-bottom: 7rem;
  }
}
@media (max-width: 767.98px) {
  #custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .cta {
    margin-bottom: 4rem;
  }
}
#custom-adv-landing-wrp .block-pre-form-wrapper .contact-form .goto-main-site-wrp .cta:hover {
  background-color: #FFFFFF;
  color: #000000;
}
@media (max-width: 1199.98px) {
  #custom-adv-landing-wrp #vertical-shifting-text {
    padding-left: 0 !important;
  }
}
@media (max-width: 991.98px) {
  #custom-adv-landing-wrp #vertical-shifting-text {
    display: none !important;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJnbG9iYWxzL19jb2xvcnMuc2NzcyIsImdsb2JhbHMvX2ZvbnRzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYW5uZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb250YWluZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS12YXJpYW50cy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19sYWJlbHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY29udHJvbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY2hlY2suc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mbG9hdGluZy1sYWJlbHMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGxhY2Vob2xkZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3ItYmcuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fZm9jdXMtcmluZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ljb24tbGluay5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdGV4dC10cnVuY2F0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZS5zY3NzIiwiZ2xvYmFscy9fcmVzZXQuc2NzcyIsImdsb2JhbHMvX3V0aWxzLnNjc3MiLCJnbG9iYWxzL19wbGFjZWhvbGRlcnMuc2NzcyIsImdsb2JhbHMvX3RleHQuc2NzcyIsImdsb2JhbHMvX3ZhcnMuc2NzcyIsImdsb2JhbHMvX2dsb2JhbC5zY3NzIiwiZ2xvYmFscy9fbWl4aW5zLnNjc3MiLCJwYXJ0cy9faGVhZGVyLnNjc3MiLCJwYXJ0cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19iYWNrZ3JvdW5kLnNjc3MiLCJjb21wb25lbnRzL19pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fdmlkZW8uc2NzcyIsImNvbXBvbmVudHMvX2N0YS5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImJsb2Nrcy9fcHJvamVjdHMtY2Fyb3VzZWwuc2NzcyIsImJsb2Nrcy9fZnVsbHdpZHRoLXRpdGxlLWN0YS5zY3NzIiwiYmxvY2tzL18yLWNvbC10aXRsZS1jdGEuc2NzcyIsImJsb2Nrcy9fMi1xdW90ZXMtY2Fyb3VzZWwuc2NzcyIsImJsb2Nrcy9fcGFnZS1oZXJvLnNjc3MiLCJibG9ja3MvX2J1bGxldHBvaW50cy1mb2xsb3ctdGhyb3VnaC5zY3NzIiwiYmxvY2tzL19oZXJvLWNsYWltLnNjc3MiLCJibG9ja3MvX2hvcml6b250YWwtYW5pbWF0ZWQtY29udGFpbmVyLnNjc3MiLCJibG9ja3MvX2hvcml6b250YWwtYW5pbWF0ZWQtY29udGFpbmVyLTIuc2NzcyIsImJsb2Nrcy9faG9yaXpvbnRhbC1hbmltYXRlZC10aW1lbGluZS5zY3NzIiwiYmxvY2tzL19vZmZpY2VzLnNjc3MiLCJibG9ja3MvX3ZlcnRpY2FsLXNsaWRlci5zY3NzIiwiYmxvY2tzL19zZXJ2aWNlcy12ZXJ0aWNhbC1zbGlkZXIuc2NzcyIsImJsb2Nrcy9fZnVsbHdpZHRoLXNpbXBsZS1jb250ZW50LnNjc3MiLCJibG9ja3MvX2Z1bGx3aWR0aC1pbWFnZS5zY3NzIiwiYmxvY2tzL19wb3NpdGlvbnMtY2Fyb3VzZWwuc2NzcyIsImJsb2Nrcy9faG9yaXpvbnRhbC1zZXJ2aWNlLXNjb3Blcy5zY3NzIiwiYmxvY2tzL19zZXJ2aWNlcy1saXN0LnNjc3MiLCJibG9ja3MvX21lZGlhLnNjc3MiLCJibG9ja3MvcHJvamVjdC9fbWVkaWEuc2NzcyIsImJsb2Nrcy9wcm9qZWN0L19jb250ZW50LnNjc3MiLCJibG9ja3MvcHJvamVjdC9fcXVvdGVzLnNjc3MiLCJibG9ja3MvcHJvamVjdC9fc2NyZWVucy1jYXJvdXNlbC5zY3NzIiwiYmxvY2tzL3Byb2plY3QvX2hvcml6b250YWwtc2VjdGlvbi5zY3NzIiwiYmxvY2tzL3Byb2plY3QvaG9yaXpvbnRhbC1zZWN0aW9ucy9fY29udGVudC1pbWFnZS5zY3NzIiwiYmxvY2tzL3Byb2plY3QvaG9yaXpvbnRhbC1zZWN0aW9ucy9fY29udGVudC1pbWFnZS1vdmVybGFwcGVkLnNjc3MiLCJwYXJ0aWFscy9wcm9qZWN0L19wcm9qZWN0LWhlcm8uc2NzcyIsInBhZ2VzL19jb250YWN0X3VzLnNjc3MiLCJwYWdlcy9fY3VzdG9tX2Fkdl9sYW5kaW5nLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQU9RO0FDd0JOO0VBQ0UsWUFyQk87OztBQ1hYO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBRUE7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFFQTtFQUNBOztBQVdGO0VBQ0U7RUFDQTtFQUNBO0VBS0E7RUFDQTtFQUNBOztBQ3pDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDREY7QUFBQTtFQVNJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VB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QUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQXVFUTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUFtRU07QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFQRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBUEY7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFQRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQXVFUTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQW1FTTtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQXVFUTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQW1FTTtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQXVFUTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQW1FTTtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQXVFUTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQW1FTTtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQXVFUTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQW1FTTtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7O0FGMUROO0VFVUU7SUFDRTs7RUFHRjtJQXBDSjtJQUNBOztFQWNBO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQStCRTtJQWhESjtJQUNBOztFQXFEUTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhFTjtJQUNBOztFQStETTtJQWhF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RTtFQU1BO0VBS0E7O0FBS0Y7RUFDRTtFQUNBOztBQUlGO0VBQ0UsT2Y0MEJvQztFZTEwQnBDOztBQVFGO0VBRUUsa0JmOHlCb0M7RWUzeUJwQzs7QUFJRjtFQUNFO0VBQ0E7RUFDQSxtQmZvckIwQjtFZW5yQjFCLE9mc3lCb0M7RWlCcDRCdEMsa0JqQnFpQ2dDO0VlcjhCOUI7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QmZnc0IwQjtFZS9yQjFCO0VDekZFLFlEMEZGOztBQ3RGRTtFRDBFSjtJQ3pFTTs7O0FEd0ZOO0VBQ0Usa0JmNDdCOEI7OztBZW43QmxDO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhZndmNEI7RWV2ZjVCLE9mMnhCc0M7RWUxeEJ0QztFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUVFO0VBQ0E7OztBQVdKO0VBQ0UsWWY0d0JzQztFZTN3QnRDO0VsQnlJSSxXQUxJO0VJdlFOOztBY3VJRjtFQUNFO0VBQ0E7RUFDQSxtQmZvb0IwQjs7O0FlaG9COUI7RUFDRSxZZmd3QnNDO0VlL3ZCdEM7RWxCNEhJLFdBTEk7RUl2UU47O0Fjb0pGO0VBQ0U7RUFDQTtFQUNBLG1CZjJuQjBCOzs7QWVubkI1QjtFQUNFLFlmNnVCb0M7O0FlMXVCdEM7RUFDRSxZZjB1Qm9DOztBZXZ1QnRDO0VBQ0UsWWZ1dUJvQzs7O0FlbHVCeEM7RUFDRSxPZnF1QnNDO0VlcHVCdEMsUWY4dEJzQztFZTd0QnRDLFNmaWxCNEI7O0FlL2tCNUI7RUFDRTs7QUFHRjtFQUNFO0VkdkxBOztBYzJMRjtFQUNFO0VkNUxBOztBY2dNRjtFQUFvQixRZjhzQmtCOztBZTdzQnRDO0VBQW9CLFFmOHNCa0I7OztBa0I3NUJ4QztFQUNFO0VBRUE7RUFDQTtFQUNBO0VyQnFSSSxXQUxJO0VxQjdRUixhbEIrbEI0QjtFa0I5bEI1QixhbEJzbUI0QjtFa0JybUI1QixPbEJ5M0JzQztFa0J4M0J0QztFQUNBLGtCbEJrM0JzQztFa0JqM0J0QztFQUNBO0VBQ0EscUJsQis5QmtDO0VrQjk5QmxDLGlCbEIrOUJrQztFa0I5OUJsQztFakJIRTtFZUhFLFlFU0o7O0FGTEk7RUVmTjtJRmdCUTs7O0FFTU47RUFDRSxjbEJzM0JvQztFa0JyM0JwQztFQUtFLFlsQmkrQjRCOztBa0I3OUJoQztFQUVFLGVsQjZ1QjBCO0VrQjV1QjFCOztBQUdGO0VBRUUsa0JsQnUxQm9DOztBa0JsMUJ0QztFQUNFO0VBQ0E7OztBQUlKO0VBQ0UsYWxCc3VCNEI7RWtCcnVCNUIsZ0JsQnF1QjRCO0VrQnB1QjVCLGNsQnF1QjRCO0VIbGdCeEIsV0FMSTtFSXZRTjs7O0FpQjhDSjtFQUNFLGFsQmt1QjRCO0VrQmp1QjVCLGdCbEJpdUI0QjtFa0JodUI1QixjbEJpdUI0QjtFSHRnQnhCLFdBTEk7RUl2UU47OztBaUJ3REE7RUFDRTs7O0FDeEVOO0VBQ0U7RUFDQSxZbkJxNkJ3QztFbUJwNkJ4QyxjbkJxNkJ3QztFbUJwNkJ4QyxlbkJxNkJ3Qzs7QW1CbjZCeEM7RUFDRTtFQUNBOzs7QUFJSjtFQUNFLGVuQjI1QndDO0VtQjE1QnhDO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0U7RUFFQTtFQUNBLE9uQjA0QndDO0VtQno0QnhDLFFuQnk0QndDO0VtQng0QnhDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxRbkIyNEJ3QztFbUIxNEJ4Qzs7QUFHQTtFbEIzQkU7O0FrQitCRjtFQUVFLGVuQm00QnNDOztBbUJoNEJ4QztFQUNFLFFuQjAzQnNDOztBbUJ2M0J4QztFQUNFLGNuQnMxQm9DO0VtQnIxQnBDO0VBQ0EsWW5COGZvQjs7QW1CM2Z0QjtFQUNFLGtCbkI1Qk07RW1CNkJOLGNuQjdCTTs7QW1CK0JOO0VBSUk7O0FBSUo7RUFJSTs7QUFLTjtFQUNFLGtCbkJqRE07RW1Ca0ROLGNuQmxETTtFbUJ1REo7O0FBSUo7RUFDRTtFQUNBO0VBQ0EsU25CazJCdUM7O0FtQjMxQnZDO0VBQ0U7RUFDQSxTbkJ5MUJxQzs7O0FtQjMwQjNDO0VBQ0UsY25CbzFCZ0M7O0FtQmwxQmhDO0VBQ0U7RUFFQSxPbkI4MEI4QjtFbUI3MEI5QjtFQUNBO0VBQ0E7RWxCakhBO0VlSEUsWUdzSEY7O0FIbEhFO0VHMEdKO0lIekdNOzs7QUdtSEo7RUFDRTs7QUFHRjtFQUNFLHFCbkI2MEI0QjtFbUJ4MEIxQjs7QUFLTjtFQUNFLGVuQnd6QjhCO0VtQnZ6QjlCOztBQUVBO0VBQ0U7RUFDQTs7O0FBS047RUFDRTtFQUNBLGNuQnN5QmdDOzs7QW1CbnlCbEM7RUFDRTtFQUNBO0VBQ0E7O0FBSUU7RUFDRTtFQUNBO0VBQ0EsU25Cc3BCd0I7OztBbUIvb0IxQjtFQUNFOzs7QUNuTE47RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBSUE7RUFBMEIsWXBCOGdDYTs7QW9CN2dDdkM7RUFBMEIsWXBCNmdDYTs7QW9CMWdDekM7RUFDRTs7QUFHRjtFQUNFLE9wQisvQnVDO0VvQjkvQnZDLFFwQjgvQnVDO0VvQjcvQnZDO0VBQ0E7RUgxQkYsa0JqQmtDUTtFb0JOTixRcEI2L0J1QztFQzFnQ3ZDO0VlSEUsWUltQkY7O0FKZkU7RUlNSjtJSkxNOzs7QUlnQko7RUhqQ0Ysa0JqQjhoQ3lDOztBb0J4L0J6QztFQUNFLE9wQncrQjhCO0VvQnYrQjlCLFFwQncrQjhCO0VvQnYrQjlCO0VBQ0EsUXBCdStCOEI7RW9CdCtCOUIsa0JwQnUrQjhCO0VvQnQrQjlCO0VuQjdCQTs7QW1Ca0NGO0VBQ0UsT3BCbytCdUM7RW9CbitCdkMsUXBCbStCdUM7RW9CbCtCdkM7RUhwREYsa0JqQmtDUTtFb0JvQk4sUXBCbStCdUM7RUMxZ0N2QztFZUhFLFlJNkNGOztBSnpDRTtFSWlDSjtJSmhDTTs7O0FJMENKO0VIM0RGLGtCakI4aEN5Qzs7QW9COTlCekM7RUFDRSxPcEI4OEI4QjtFb0I3OEI5QixRcEI4OEI4QjtFb0I3OEI5QjtFQUNBLFFwQjY4QjhCO0VvQjU4QjlCLGtCcEI2OEI4QjtFb0I1OEI5QjtFbkJ2REE7O0FtQjRERjtFQUNFOztBQUVBO0VBQ0Usa0JwQmc5QnFDOztBb0I3OEJ2QztFQUNFLGtCcEI0OEJxQzs7O0FxQm5pQzNDO0VBQ0U7O0FBRUE7QUFB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OztBRGtHQTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QURrR0E7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FEa0dBO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBRGtHQTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QURrR0E7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FEa0dBO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBRGtHQTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUQ0SEE7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FEbUdBO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBRG1HQTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QURtR0E7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FEbUdBO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VB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RTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFJQTtFQUNFO0FBQUE7SUFFRTs7O0FDL0VOO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QTNDNkRFO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLFltQzhCQTs7O0FuQzFCQTtFbUNZSjtJbkNYTTs7O0FSdURKO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFFRTs7RUFHRjtJQUdFOzs7QTNDNUJKO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7O0VBRUE7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7Ozs7QTNDbkNOO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLFltQzhCQTs7O0FuQzFCQTtFbUNZSjtJbkNYTTs7O0FSdURKO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFFRTs7RUFHRjtJQUdFOzs7QTNDNUJKO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7O0VBRUE7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7Ozs7QTNDbkNOO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLFltQzhCQTs7O0FuQzFCQTtFbUNZSjtJbkNYTTs7O0FSdURKO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFFRTs7RUFHRjtJQUdFOzs7QTNDNUJKO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7O0VBRUE7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7Ozs7QTNDbkNOO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLFltQzhCQTs7O0FuQzFCQTtFbUNZSjtJbkNYTTs7O0FSdURKO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFFRTs7RUFHRjtJQUdFOzs7QTNDNUJKO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7O0VBRUE7SUFDRTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBRUE7Ozs7QTNDbkNOO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLFltQzhCQTs7O0FuQzFCQTtFbUNZSjtJbkNYTTs7O0FSdURKO0UyQzVCRTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VB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OztBQURGO0VBQ0U7OztBQ3JCSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsUzFEdW1Da0M7OztBMERwbUNwQztFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsUzFEK2xDa0M7OztBMER2bENoQztFQUNFO0VBQ0E7RUFDQSxTMURtbEM4Qjs7O0EwRGhsQ2hDO0VBQ0U7RUFDQTtFQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QVE5aUNoQztFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsUzFEbWxDOEI7O0UwRGhsQ2hDO0lBQ0U7SUFDQTtJQUNBLFMxRDZrQzhCOzs7QTJENW1DcEM7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FDUkY7QUFBQTtFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7QUFBQTtFQUNFOzs7QUNkRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxTOURnY3NDO0U4RC9idEM7OztBQ1JKO0VDQUU7RUFDQTtFQUNBOzs7QUNORjtFQUNFO0VBQ0E7RUFDQSxPakVpc0I0QjtFaUVoc0I1QjtFQUNBO0VBQ0EsU2pFMnJCNEI7OztBa0UvbkJ0QjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFqQko7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBU0Y7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFqQko7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBU0Y7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQVBKO0VBT0k7OztBQXJCSjtBQWNBO0VBT0k7RUFBQTs7O0FBbUJKO0FBMUJBO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQWpCSjtFQUNFOzs7QUFERjtFQUNFOzs7QUFERjtFQUNFOzs7QUFERjtFQUNFOzs7QUFTRjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFQSjtFQU9JOzs7QUFqQko7RUFDRTs7O0FBSUE7RUFDRTs7O0FBTko7RUFDRTs7O0FBSUE7RUFDRTs7O0FBTko7RUFDRTs7O0FBSUE7RUFDRTs7O0FBTko7RUFDRTs7O0FBSUE7RUFDRTs7O0FBTko7RUFDRTs7O0FBSUE7RUFDRTs7O0FBSUo7RUFPSTs7O0FBS0Y7RUFPSTs7O0FBbkJOO0VBT0k7OztBQUtGO0VBT0k7OztBQW5CTjtFQU9JOzs7QUFLRjtFQU9JOzs7QUFuQk47RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBakJKO0VBQ0U7OztBQUlBO0VBQ0U7OztBQU5KO0VBQ0U7OztBQUlBO0VBQ0U7OztBQU5KO0VBQ0U7OztBQUlBO0VBQ0U7OztBQU5KO0VBQ0U7OztBQUlBO0VBQ0U7OztBQU5KO0VBQ0U7OztBQUlBO0VBQ0U7OztBQU5KO0VBQ0U7OztBQUlBO0VBQ0U7OztBQUlKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFQSjtFQUlRO0VBR0o7OztBQVBKO0VBSVE7RUFHSjs7O0FBUEo7RUFJUTtFQUdKOzs7QUFqQko7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBREY7RUFDRTs7O0FBU0Y7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTtFQUFBOzs7QUFQSjtFQU9JO0VBQUE7OztBQVBKO0VBT0k7RUFBQTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0FBUEo7RUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0ExRFZSO0UwREdJO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JO0lBQUE7O0VBUEo7SUFPSTtJQUFBOztFQVBKO0lBT0k7SUFBQTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7O0FDdERaO0VEK0NRO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7OztBQ25DWjtFRDRCUTtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7O0VBUEo7SUFPSTs7RUFQSjtJQU9JOztFQVBKO0lBT0k7OztBRXpFWjtBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7OztBQUdSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQVdBOztBQVZBO0VBQ0k7O0FBRUo7RUFDSTs7QUFFSjtFQUNJOztBQUtKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUN6REo7QUFHSTtFQUNJOzs7QUFJUjtBQUVJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtBQUVBO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtBQUFBO0FBQUE7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7QUFBQTtBQUFBO0VBQ0ksU0FqRWE7O0FBb0VyQjtBQUFBO0VBQ0ksU0FwRW1COztBQXNFdkI7QUFBQTtFQUNJLGFBbEZZO0VBbUZaO0VBQ0E7RUFDQSxPQW5GWTtFQW9GWixTQTdFZ0I7RUE4RWhCO0VBQ0E7OztBQUlSO0VBQ0k7O0FBQ0E7RUFDSTtFQUNBOztBQUVKO0VBQ0ksU0E5RmU7O0FBK0ZmO0VBQ0ksU0EvRlc7OztBQW9HdkI7RUFDSTs7QUFDQTtFQUNJO0VBQ0E7O0FBRUo7RUFDSSxTQTNHZTs7QUE0R2Y7RUFDSSxTQTlHVzs7O0FBbUh2QjtBQUVBO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJOztBQUNBO0VBQ0ksU0FwSks7O0FBdUpiO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsU0E5Sk07RUErSk47RUFDQTtFQUNBLGFBeEtJO0VBeUtKLFdBaktDO0VBa0tEO0VBQ0E7RUFDQSxPQXpLRTtFQTBLRixTQWxLVztFQW1LWDtFQUNBOztBQUdSO0VBQ0ksT0FoTE07RUFpTE4sU0EzS1k7OztBQ2hCeEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBYUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQ3RDQTtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQWhCRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFoQkY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTs7O0FBaEJGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7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Q0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0F4RzdaTjtFd0dzWkk7SUFTSTtJQUNBO0lBQ0E7OztBQUtGO0VBRUU7O0F4R3hhUjtFd0dzYU07SUFJSTtJQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0F4R3JiWjtFd0c4YVE7SUFXSTs7RUFDQTtJQUNFOzs7QUFRWjtFQUVFO0VBS0E7RUFDQTs7QXhHM2NKO0V3R21jRTtJQUlJO0lBQ0E7OztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBT0E7RUFDQTtFQUNBLE92SDdpQkY7RXVIOGlCRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QXhHemVOO0V3R3VkSTtJQUlJOzs7QXhHM2RSO0V3R3VkSTtJQU9JOzs7QUFhRjtFQUNFLGtCdkh2akJKO0V1SHdqQkksT3ZIempCSjs7QWU0RUo7RXdHb2ZGO0lBRUk7OztBeEd0ZkY7RXdHb2ZGO0lBS0kiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVmFyaWFibGVzIGFuZCBGb250c1xyXG5AaW1wb3J0ICdnbG9iYWxzL3ZhcnMnO1xyXG5AaW1wb3J0ICdnbG9iYWxzL2NvbG9ycyc7XHJcbkBpbXBvcnQgJ2dsb2JhbHMvZm9udHMnO1xyXG5cclxuLy8gbGliXHJcbkBpbXBvcnQgJ2xpYi9ib290c3RyYXAnO1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2xvY29tb3RpdmUtc2Nyb2xsL2Rpc3QvbG9jb21vdGl2ZS1zY3JvbGwubWluLmNzc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3NcIjtcclxuQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZS5zY3NzXCI7XHJcblxyXG4vLyBDb21tb25cclxuQGltcG9ydCAnZ2xvYmFscy9yZXNldCc7XHJcbkBpbXBvcnQgJ2dsb2JhbHMvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnZ2xvYmFscy91dGlscyc7XHJcbkBpbXBvcnQgJ2dsb2JhbHMvbWl4aW5zJztcclxuQGltcG9ydCAnZ2xvYmFscy9wbGFjZWhvbGRlcnMnO1xyXG5AaW1wb3J0ICdnbG9iYWxzL2FuaW1hdGlvbnMnO1xyXG5AaW1wb3J0ICdnbG9iYWxzL3RleHQnO1xyXG5AaW1wb3J0ICdnbG9iYWxzL2dsb2JhbCc7XHJcblxyXG4vLyBQYXJ0c1xyXG5AaW1wb3J0ICdwYXJ0cy9oZWFkZXInO1xyXG5AaW1wb3J0ICdwYXJ0cy9mb290ZXInO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhY2tncm91bmQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2ltYWdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy92aWRlbyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3RhJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcyc7XHJcblxyXG4vLyBCbG9ja3NcclxuQGltcG9ydCAnYmxvY2tzL3Byb2plY3RzLWNhcm91c2VsJztcclxuQGltcG9ydCAnYmxvY2tzL2NvbnRhY3QtZm9ybSc7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9mdWxsd2lkdGgtdGl0bGUtY3RhJztcclxuQGltcG9ydCAnYmxvY2tzLzItY29sLXRpdGxlLWN0YSc7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy8yLXF1b3Rlcy1jYXJvdXNlbCc7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9wYWdlLWhlcm8nO1xyXG5AaW1wb3J0ICdibG9ja3MvYnVsbGV0cG9pbnRzLWZvbGxvdy10aHJvdWdoJztcclxuQGltcG9ydCAnYmxvY2tzL2hlcm8tY2xhaW0nO1xyXG5AaW1wb3J0ICdibG9ja3MvaG9yaXpvbnRhbC1hbmltYXRlZC1jb250YWluZXInO1xyXG5AaW1wb3J0ICdibG9ja3MvaG9yaXpvbnRhbC1hbmltYXRlZC1jb250YWluZXItMic7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9ob3Jpem9udGFsLWFuaW1hdGVkLXRpbWVsaW5lJztcclxuQGltcG9ydCAnYmxvY2tzL29mZmljZXMnO1xyXG5AaW1wb3J0ICdibG9ja3MvcHJvamVjdHMtY2Fyb3VzZWwnO1xyXG5AaW1wb3J0ICdibG9ja3MvdmVydGljYWwtc2xpZGVyJztcclxuQGltcG9ydCAnYmxvY2tzL3NlcnZpY2VzLXZlcnRpY2FsLXNsaWRlcic7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9mdWxsd2lkdGgtc2ltcGxlLWNvbnRlbnQnO1xyXG5AaW1wb3J0ICdibG9ja3MvZnVsbHdpZHRoLWltYWdlJztcclxuQGltcG9ydCAnYmxvY2tzL3Bvc2l0aW9ucy1jYXJvdXNlbCc7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9ob3Jpem9udGFsLXNlcnZpY2Utc2NvcGVzJztcclxuQGltcG9ydCAnYmxvY2tzL3NlcnZpY2VzLWxpc3QnO1xyXG5AaW1wb3J0ICdibG9ja3MvbWVkaWEnO1xyXG5AaW1wb3J0ICdibG9ja3MvcHJvamVjdC9tZWRpYSc7XHJcbkBpbXBvcnQgJ2Jsb2Nrcy9wcm9qZWN0L2NvbnRlbnQnO1xyXG5AaW1wb3J0ICdibG9ja3MvcHJvamVjdC9xdW90ZXMnO1xyXG5AaW1wb3J0ICdibG9ja3MvcHJvamVjdC9zY3JlZW5zLWNhcm91c2VsJztcclxuQGltcG9ydCAnYmxvY2tzL3Byb2plY3QvaG9yaXpvbnRhbC1zZWN0aW9uJztcclxuQGltcG9ydCAnYmxvY2tzL3Byb2plY3QvaG9yaXpvbnRhbC1zZWN0aW9ucy9jb250ZW50LWltYWdlJztcclxuQGltcG9ydCAnYmxvY2tzL3Byb2plY3QvaG9yaXpvbnRhbC1zZWN0aW9ucy9jb250ZW50LWltYWdlLW92ZXJsYXBwZWQnO1xyXG5cclxuLy8gUGFydGlhbHNcclxuXHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9wcm9qZWN0L3Byb2plY3QtaGVyb1wiO1xyXG5cclxuLy8gUGFnZXNcclxuLy9AaW1wb3J0ICdwYWdlcy9ob21lJztcclxuQGltcG9ydCAncGFnZXMvY29udGFjdF91cyc7XHJcbkBpbXBvcnQgJ3BhZ2VzL2N1c3RvbV9hZHZfbGFuZGluZyc7XHJcbiIsIiRibGFjazogIzAwMDAwMDtcclxuJHdoaXRlOiAjRkZGRkZGO1xyXG5cclxuJHRleHQ6ICRibGFjaztcclxuJGFsdC10ZXh0OiAjMTcxNjE2O1xyXG4kY2Fyb3VzZWwtYXJyb3dzLWJnOiAjMjAyNDIzO1xyXG4kbmF2YmFyLWJnOiByZ2JhKDMyLCAzNiwgMzUsIDAuOCk7XHJcbiRhbHQtdGV4dC0yOiAjMkUzMTMzO1xyXG4kdGl0bGUtbW9iaWxlOiAjMkEyQTJBO1xyXG5cclxuJGRhcmstYmc6ICMxMjEyMTI7XHJcbiRsaWdodC1iZzogI0U1RTVFNTtcclxuXHJcbiRhY2NlbnQ6ICNFNUU1RTU7XHJcbiRwYWdpbmF0aW9uLWFjY2VudDogI0I1QjFBNTtcclxuJGFsdC1hY2NlbnQ6IHJnYmEoMjIzLCAyMjEsIDIxMiwgMC44Myk7XHJcbiRjYXJvdXNlbC1hcnJvd3M6ICNERURBQ0E7XHJcbiRzZXBhcmF0b3I6ICNERkRERDQ7XHJcbiRhY3RpdmUtbWVudS1pdGVtOiAkc2VwYXJhdG9yO1xyXG4kZ3JleS1ibG9jazogI0Y4RjdGNTtcclxuJGZvcm0tZmllbGRzOiAjRjhGN0Y0O1xyXG5cclxuJG1haW4tYmc6ICR3aGl0ZTtcclxuJGFsdC1iZzogJGdyZXktYmxvY2s7XHJcblxyXG4kaGVhZGVyLWxpbmU6IGxpbmVhci1ncmFkaWVudCgyNjkuOTlkZWcsICNERkRERDQgMjAuNCUsICNERURBQ0EgNTIuNCUsIHJnYmEoMjIzLCAyMjEsIDIxMiwgMC44MykgODAuNiUpO1xyXG4kcGFnaW5hdGlvbi1saW5lOiBsaW5lYXItZ3JhZGllbnQoMjMwZGVnLCAjREZEREQ0IDAlLCAjREVEQUNBIDUzLjE2JSwgcmdiYSgyMjMsIDIyMSwgMjEyLCAwLjgzKSAxMDAlKTtcclxuJGZvb3Rlci1saW5lOiAkaGVhZGVyLWxpbmU7XHJcblxyXG5cclxuLmJnLXZncyB7XHJcbiAgJi1saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmc7XHJcbiAgfVxyXG59IiwiQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJztcclxuICBzcmM6IHVybCgnLi4vZm9udHMvbmV1ZS1tb250cmVhbC1saWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICB1cmwoJy4uL2ZvbnRzL25ldWUtbW9udHJlYWwtbGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ25ldWUtbW9udHJlYWwnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9uZXVlLW1vbnRyZWFsLXJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgdXJsKCcuLi9mb250cy9uZXVlLW1vbnRyZWFsLXJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ25ldWUtbW9udHJlYWwnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9uZXVlLW1vbnRyZWFsLWJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgdXJsKCcuLi9mb250cy9uZXVlLW1vbnRyZWFsLWJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4vL0Bmb250LWZhY2Uge1xyXG4vLyAgZm9udC1mYW1pbHk6ICdib2RvbmktbW9kYSc7XHJcbi8vICBzcmM6IHVybCgnLi4vZm9udHMvYm9kb25pLW1vZGEtcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuLy8gIHVybCgnLi4vZm9udHMvYm9kb25pLW1vZGEtcmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbi8vICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4vLyAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4vL31cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnYm9kb25pLW1vZGEnO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9ib2RvbmktbW9kYS1yZWd1bGFyLWZpeGVkLmVvdCcpO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9ib2RvbmktbW9kYS1yZWd1bGFyLWZpeGVkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgdXJsKCcuLi9mb250cy9ib2RvbmktbW9kYS1yZWd1bGFyLWZpeGVkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gIHVybCgnLi4vZm9udHMvYm9kb25pLW1vZGEtcmVndWxhci1maXhlZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgdXJsKCcuLi9mb250cy9ib2RvbmktbW9kYS1yZWd1bGFyLWZpeGVkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcclxuICB1cmwoJy4uL2ZvbnRzL2JvZG9uaS1tb2RhLXJlZ3VsYXItZml4ZWQuc3ZnI2JvZG9uaS1tb2RhLXJlZ3VsYXItZml4ZWQnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG4iLCJAbWl4aW4gYnNCYW5uZXIoJGZpbGUpIHtcbiAgLyohXG4gICAqIEJvb3RzdHJhcCAjeyRmaWxlfSB2NS4zLjMgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjQgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICAgKi9cbn1cbiIsIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmctZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3ItZGFya307XG4gICAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWRhcmstbW9kZS12YXJzXG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZGltZW5zaW9uLW5vLW5vbi1udW1lcmljLXZhbHVlc1xuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSByZW0ge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsIGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuJHJmcy1tcS1wcm9wZXJ0eS13aWR0aDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LXdpZHRoLCBtaW4td2lkdGgpO1xuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIGFuZCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1ydWxlIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBwcm9wZXJ0eVxuICAgICYsXG4gICAgLmRpc2FibGUtcmZzICYsXG4gICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgIC5lbmFibGUtcmZzICYsXG4gICAgJi5lbmFibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcblxuICBAaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgLmVuYWJsZS1yZnMgJixcbiAgICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHB4LCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAxKSAqICRyZnMtcmVtLXZhbHVlfXB4LCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICR2YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG4gICAgICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIGlmKCR1bml0ID09IHB4LCAxLCBkaXZpZGUoMSwgJHJmcy1yZW0tdmFsdWUpKSk7XG5cbiAgICAgICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSB2YWx1ZSBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgQGlmIGFicygkdmFsdWUpIDw9ICRyZnMtYmFzZS12YWx1ZSBvciBub3QgJGVuYWJsZS1yZnMge1xuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyBkaXZpZGUoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCR2YWx1ZS1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAgICAgLy8gUmV0dXJuIHRoZSBjYWxjdWxhdGVkIHZhbHVlXG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIGNhbGMoXCIgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgXCIgLSBcIiwgXCIgKyBcIikgKyAkdmFyaWFibGUtd2lkdGggKyBcIilcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gUkZTIG1peGluXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xuICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWVzKTtcbiAgICAkZmx1aWQtdmFsOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcyk7XG5cbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgQGlmICR2YWwgPT0gJGZsdWlkLXZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkLXZhbCk7XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZC12YWwsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaG9ydGhhbmQgaGVscGVyIG1peGluc1xuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nKTtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcbn1cblxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XG59XG5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tdG9wKTtcbn1cblxuQG1peGluIG1hcmdpbi1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcbn1cblxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xufVxuXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1sZWZ0KTtcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1tb2RlLW1peGluXG5AbWl4aW4gY29sb3ItbW9kZSgkbW9kZTogbGlnaHQsICRyb290OiBmYWxzZSkge1xuICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgIEBpZiAkcm9vdCA9PSB0cnVlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIDpyb290IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogJG1vZGUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBbZGF0YS1icy10aGVtZT1cIiN7JG1vZGV9XCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1tb2RlLW1peGluXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplKSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuXG5ociB7XG4gIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XG4gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuXG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyAxLiBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy8gICAgQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vICAgIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cblxuJWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yKTtcbn1cblxuaDEge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG59XG5cbmgyIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xufVxuXG5oMyB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbn1cblxuaDQge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG59XG5cbmg1IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xufVxuXG5oNiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbn1cblxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDIuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDMuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICBjdXJzb3I6IGhlbHA7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyAzXG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnKTtcbn1cblxuXG4vLyBTdWIgYW5kIFN1cFxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc3ViLXN1cC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSk7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiKTtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICAmLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBDb2RlXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jb2RlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG4vLyAxLiBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbi8vIDIuIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgLy8gMlxuICBvdmVyZmxvdzogYXV0bzsgLy8gM1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y29kZS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IG9ubHkgZnJvbSB0ZXh0IHR5cGUgaW5wdXRzIGJ1aWx0IHdpdGggZGF0YWxpc3RzIGluIENocm9tZS5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOm5vdChbdHlwZT1cImRhdGVcIl0pOm5vdChbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdKTpub3QoW3R5cGU9XCJtb250aFwiXSk6bm90KFt0eXBlPVwid2Vla1wiXSk6bm90KFt0eXBlPVwidGltZVwiXSk6Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyAgICBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vICAgIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vICAgIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4vLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyAxLiBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gU3VtbWFyeVxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBQcm9ncmVzc1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8vIEhpZGRlbiBhdHRyaWJ1dGVcbi8vXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlLlxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvci12YXJpYWJsZXNcbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvcnMtbWFwXG4kZ3JheXM6IChcbiAgXCIxMDBcIjogJGdyYXktMTAwLFxuICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgXCI0MDBcIjogJGdyYXktNDAwLFxuICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgXCI3MDBcIjogJGdyYXktNzAwLFxuICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gIFwiOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogICAgIzBkNmVmZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2Q2MzM4NCAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMTk4NzU0ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzBkY2FmMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvcnMtbWFwXG4kY29sb3JzOiAoXG4gIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICBcImJsYWNrXCI6ICAgICAgJGJsYWNrLFxuICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvcnMtbWFwXG5cbi8vIFRoZSBjb250cmFzdCByYXRpbyB0byByZWFjaCBhZ2FpbnN0IHdoaXRlLCB0byBkZXRlcm1pbmUgaWYgY29sb3IgY2hhbmdlcyBmcm9tIFwibGlnaHRcIiB0byBcImRhcmtcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgZm9yIFdDQUcgMi4wIGFyZSAzLCA0LjUgYW5kIDcuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC8jdmlzdWFsLWF1ZGlvLWNvbnRyYXN0LWNvbnRyYXN0XG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTEwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMjAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6IHNoYWRlLWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpczogICAgICBzaGFkZS1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXM6ICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpczogICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLXRleHQtZW1waGFzaXM6ICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGU6ICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDgwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGU6ICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDgwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJnLXN1YnRsZTogICAgICAgIHRpbnQtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGU6ICAgICAgICAgbWl4KCRncmF5LTEwMCwgJHdoaXRlKSAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZTogICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlOiB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlOiAgICAgIHRpbnQtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICAgIHRpbnQtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRhcmstYm9yZGVyLXN1YnRsZTogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jc3NncmlkOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6ICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLWRhcmstbW9kZTogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGNvbG9yLW1vZGUtdHlwZTogICAgICAgICAgICAgZGF0YSAhZGVmYXVsdDsgLy8gYGRhdGFgIG9yIGBtZWRpYS1xdWVyeWBcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAgZm9yIHRoZSBzaG9ydGVyIGAkcHJlZml4YFxuJHByZWZpeDogICAgICAgICAgICAgICAgICAgICAgJHZhcmlhYmxlLXByZWZpeCAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kYm9keS1zZWNvbmRhcnktY29sb3I6ICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjc1KSAhZGVmYXVsdDtcbiRib2R5LXNlY29uZGFyeS1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib2R5LXRlcnRpYXJ5LWNvbG9yOiAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZzogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kYm9keS1lbXBoYXNpcy1jb2xvcjogICAgICAgJGJsYWNrICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIEljb24gbGlua3Ncbi8vIHNjc3MtZG9jcy1zdGFydCBpY29uLWxpbmstdmFyaWFibGVzXG4kaWNvbi1saW5rLWdhcDogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0OiAgLjI1ZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tc2l6ZTogICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbjogICAuMnMgZWFzZS1pbi1vdXQgdHJhbnNmb3JtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zZm9ybTogICAgdHJhbnNsYXRlM2QoLjI1ZW0sIDAsIDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpY29uLWxpbmstdmFyaWFibGVzXG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICBzb2xpZCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICAgIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14eGw6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtcGlsbDogICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4vLyBmdXN2LWRpc2FibGVcbiRib3JkZXItcmFkaXVzLTJ4bDogICAgICAgICAgICRib3JkZXItcmFkaXVzLXh4bCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3gtc2hhZG93LXZhcmlhYmxlc1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1pbnNldDogICAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3gtc2hhZG93LXZhcmlhYmxlc1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvY3VzLXJpbmctdmFyaWFibGVzXG4kZm9jdXMtcmluZy13aWR0aDogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1vcGFjaXR5OiAgICAuMjUgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1jb2xvcjogICAgICByZ2JhKCRwcmltYXJ5LCAkZm9jdXMtcmluZy1vcGFjaXR5KSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJsdXI6ICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ib3gtc2hhZG93OiAwIDAgJGZvY3VzLXJpbmctYmx1ciAkZm9jdXMtcmluZy13aWR0aCAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9jdXMtcmluZy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LXZhcmlhYmxlc1xuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtdmFyaWFibGVzXG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLXRyYW5zaXRpb25cbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLXRyYW5zaXRpb25cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXNwZWN0LXJhdGlvc1xuJGFzcGVjdC1yYXRpb3M6IChcbiAgXCIxeDFcIjogMTAwJSxcbiAgXCI0eDNcIjogY2FsYygzIC8gNCAqIDEwMCUpLFxuICBcIjE2eDlcIjogY2FsYyg5IC8gMTYgKiAxMDAlKSxcbiAgXCIyMXg5XCI6IGNhbGMoOSAvIDIxICogMTAwJSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFzcGVjdC1yYXRpb3Ncbi8vIHN0eWxlbGludC1lbmFibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtdmFyaWFibGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZikgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktY29kZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2UpICFkZWZhdWx0O1xuXG4vLyAkZm9udC1zaXplLXJvb3QgYWZmZWN0cyB0aGUgdmFsdWUgb2YgYHJlbWAsIHdoaWNoIGlzIHVzZWQgZm9yIGFzIHdlbGwgZm9udCBzaXplcywgcGFkZGluZ3MsIGFuZCBtYXJnaW5zXG4vLyAkZm9udC1zaXplLWJhc2UgYWZmZWN0cyB0aGUgZm9udCBzaXplIG9mIHRoZSBib2R5IHRleHRcbiRmb250LXNpemUtcm9vdDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogICAgICAgICAgNTAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiAgICAgICAgNjAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMiAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC1zaXplc1xuJGZvbnQtc2l6ZXM6IChcbiAgMTogJGgxLWZvbnQtc2l6ZSxcbiAgMjogJGgyLWZvbnQtc2l6ZSxcbiAgMzogJGgzLWZvbnQtc2l6ZSxcbiAgNDogJGg0LWZvbnQtc2l6ZSxcbiAgNTogJGg1LWZvbnQtc2l6ZSxcbiAgNjogJGg2LWZvbnQtc2l6ZVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC1zaXplc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LWZhbWlseTogbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtc3R5bGU6ICBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIDUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJHllbGxvdy0xMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjIgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYjogICB0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRsaW5rLWNvbG9yKSwgJGxpbmstY29sb3IsIDE1JSkpICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIDIpICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAgICAgICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0OiAgICAgICAgICAgIDEuNWVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgICAgICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICAgICAgICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcbiRmb3JtLXZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IChcbiAgXCJ2YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1zdWNjZXNzKSxcbiAgICBcImZvY3VzLWJveC1zaGFkb3dcIjogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSh2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvciksXG4gICksXG4gIFwiaW52YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyKSxcbiAgICBcImZvY3VzLWJveC1zaGFkb3dcIjogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZGFuZ2VyLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3IpLFxuICApXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1zdGFja1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3A6ICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzOiAgICAgICAgICAgICAgICAgIDEwNDUgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1NSAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDgwICFkZWZhdWx0O1xuJHppbmRleC10b2FzdDogICAgICAgICAgICAgICAgICAgICAgMTA5MCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtbGV2ZWxzLW1hcFxuJHppbmRleC1sZXZlbHM6IChcbiAgbjE6IC0xLFxuICAwOiAwLFxuICAxOiAxLFxuICAyOiAyLFxuICAzOiAzXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtbGV2ZWxzLW1hcFxuXG5cbi8vIE5hdnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi12YXJpYWJsZXNcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXVuZGVybGluZS1nYXA6ICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi12YXJpYWJsZXNcblxuXG4vLyBOYXZiYXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci12YXJpYWJsZXNcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjY1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC44KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIDEpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1pY29uLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1pY29uLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMTUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjU1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaWNvbi1jb2xvcjogICAgICAgICAgICAkbmF2YmFyLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1pY29uLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLXZhcmlhYmxlc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIGNhbGMoI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c30gLSAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRkcm9wZG93bi1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yKSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdzogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZzogICAgICAgcmdiYSgkd2hpdGUsIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG5cblxuLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi12YXJpYWJsZXNcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDogICAgICAgICAgIGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDsgLy8gVG9kbyBpbiB2NjogcmVtb3ZlIHRoaXM/XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tdmFyaWFibGVzXG5cblxuLy8gUGxhY2Vob2xkZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwbGFjZWhvbGRlcnNcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluOiAgICAgICAgICAgLjIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBsYWNlaG9sZGVyc1xuXG4vLyBDYXJkc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC12YXJpYWJsZXNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtc3BhY2VyLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLXN1YnRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGNhcmQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAqIC41ICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoICogLjUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmQtdmFyaWFibGVzXG5cbi8vIEFjY29yZGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuJGFjY29yZGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgc3VidHJhY3QoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzLCAkYWNjb3JkaW9uLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteTogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiwgYm9yZGVyLXJhZGl1cyAuMTVzIGVhc2UgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS1iZy1zdWJ0bGUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktdGV4dC1lbXBoYXNpcykgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjNcbi8vIGZ1c3YtZW5hYmxlXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24taWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICRwcmltYXJ5LXRleHQtZW1waGFzaXMgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTogICAgICAgICAgICAgICAgcm90YXRlKC0xODBkZWcpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMiA1TDggMTFMMTQgNScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNMiA1TDggMTFMMTQgNScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLXZhcmlhYmxlc1xuXG4vLyBUb29sdGlwc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC12YXJpYWJsZXNcbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBUT0RPOiByZW1vdmUgdGhpcyBpbiB2NlxuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIEJvb3RzdHJhcCA1LjIuMCBmb3IgQ1NTIHZhcmlhYmxlc1xuLy8gZnVzdi1lbmFibGVcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC12YXJpYWJsZXNcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtZmVlZGJhY2stdmFyaWFibGVzXG5cblxuLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItdmFyaWFibGVzXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgY2FsYygjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9IC0gI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1mb290ZXItYmc6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuLy8gZnVzdi1lbmFibGVcblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTogIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTogICAgLjc1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAgICAxICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogICAgIGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtdmFyaWFibGVzXG5cblxuLy8gT2ZmY2FudmFzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtdmFyaWFibGVzXG4kb2ZmY2FudmFzLXBhZGRpbmcteTogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFkZGluZy14OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoOiAgICAgICAgNDAwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodDogICAgICAgICAzMHZoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgLjNzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogICAgICAgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iZy1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jb2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICRtb2RhbC1iYWNrZHJvcC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMTg3NXJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgcmVtb3ZpbmcgaW4gdjZcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuQGltcG9ydCBcInZhcmlhYmxlcy1kYXJrXCI7IC8vIFRPRE86IGNhbiBiZSByZW1vdmVkIHNhZmVseSBpbiB2Niwgb25seSBoZXJlIHRvIGF2b2lkIGJyZWFraW5nIGNoYW5nZXMgaW4gdjUuM1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuLmgxIHtcbiAgQGV4dGVuZCBoMTtcbn1cblxuLmgyIHtcbiAgQGV4dGVuZCBoMjtcbn1cblxuLmgzIHtcbiAgQGV4dGVuZCBoMztcbn1cblxuLmg0IHtcbiAgQGV4dGVuZCBoNDtcbn1cblxuLmg1IHtcbiAgQGV4dGVuZCBoNTtcbn1cblxuLmg2IHtcbiAgQGV4dGVuZCBoNjtcbn1cblxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBmb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGRpc3BsYXktZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cbi5zbWFsbCB7XG4gIEBleHRlbmQgc21hbGw7XG59XG5cbi5tYXJrIHtcbiAgQGV4dGVuZCBtYXJrO1xufVxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tI3skcHJlZml4fWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHZhbHVlfTtcbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRjb3VudCkpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuIGludmFsaWQgdmFsdWUuXG4gICAgICAgIC8vIEVuZHMgd2l0aCBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGUuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIC5nLXN0YXJ0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIC8vIFJlc2V0IG5lZWRlZCBmb3IgbmVzdGluZyB0YWJsZXNcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiBpbml0aWFsO1xuICAvLyBFbmQgb2YgcmVzZXRcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JHRhYmxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmc6ICN7JHRhYmxlLWFjY2VudC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAjeyR0YWJsZS1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyR0YWJsZS1ob3Zlci1iZ307XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIHZlcnRpY2FsLWFsaWduOiAkdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yKTtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIC8vIEZvbGxvd2luZyB0aGUgcHJlY2VwdCBvZiBjYXNjYWRlczogaHR0cHM6Ly9jb2RlcGVuLmlvL21pcmlhbXN1emFubmUvZnVsbC92WU5nb2RiXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvcikpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmcpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmcpKSk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbn1cblxuLnRhYmxlLWdyb3VwLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiBjYWxjKCN7JHRhYmxlLWJvcmRlci13aWR0aH0gKiAyKSBzb2xpZCAkdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vL1xuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3Ncbi8vXG5cbi5jYXB0aW9uLXRvcCB7XG4gIGNhcHRpb24tc2lkZTogdG9wO1xufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG4vL1xuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXG4vLyBUaGVyZWZvcmUgd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gT24gQW5kcm9pZCBDaHJvbWUsIGZvcm0tY29udHJvbCdzIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIC8vXG4gICAgLy8gT24gaU9TIFNhZmFyaSwgZm9ybS1jb250cm9sJ3MgXCJhcHBlYXJhbmNlOiBub25lXCIgKyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBpT1MgMTYuMiAvIFNhZmFyaSAxNi4yXG4gICAgbWluLXdpZHRoOiA4NXB4OyAvLyBTZWVtcyB0byBiZSBhIGdvb2QgbWluaW11bSBzYWZlIHdpZHRoXG5cbiAgICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAgIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcblxuICAgIC8vIEFuZHJvaWQgQ2hyb21lIHR5cGU9XCJkYXRlXCIgaXMgdGFsbGVyIHRoYW4gdGhlIG90aGVyIGlucHV0c1xuICAgIC8vIGJlY2F1c2Ugb2YgXCJtYXJnaW46IDFweCAyNHB4IDFweCA0cHhcIiBpbnNpZGUgdGhlIHNoYWRvdyBET01cbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gUHJldmVudCBleGNlc3NpdmUgZGF0ZSBpbnB1dCBoZWlnaHQgaW4gV2Via2l0XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzQ0MzNcbiAgJjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpfTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWcpLCB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbiwgbm9uZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjtcbiAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zZWxlY3QtdHJhbnNpdGlvbik7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93LCAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGZvcm0tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5mb3JtLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENoZWNrL3JhZGlvXG4vL1xuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmc6ICN7JGZvcm0tY2hlY2staW5wdXQtYmd9O1xuXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9O1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKX07XG5cbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cywgMCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKX07XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBtaW4taGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICAgIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAoJGZvcm0tZmxvYXRpbmctcGFkZGluZy14ICogLjUpO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIH4gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgI3skZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5fSk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwOyAvLyBSZXF1aXJlZCB0byBwcm9wZXJseSBwb3NpdGlvbiBsYWJlbCB0ZXh0IC0gYXMgZXhwbGFpbmVkIGFib3ZlXG4gICAgfVxuICB9XG5cbiAgPiA6ZGlzYWJsZWQgfiBsYWJlbCxcbiAgPiAuZm9ybS1jb250cm9sOmRpc2FibGVkIH4gbGFiZWwgeyAvLyBSZXF1aXJlZCBmb3IgYC5mb3JtLWNvbnRyb2xgcyBiZWNhdXNlIG9mIHNwZWNpZmljaXR5XG4gICAgY29sb3I6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCxcbiAgPiAuZm9ybS1mbG9hdGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmZvcm0tZmxvYXRpbmc6Zm9jdXMtd2l0aGluIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteSAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uaW5wdXQtZ3JvdXAge1xuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXCJcIjtcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLXRvb2x0aXApXCIgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItZmVlZGJhY2spXCI7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpI3skdmFsaWRhdGlvbi1tZXNzYWdlc30ge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgJGJvcmRlci1jb2xvcjogJGNvbG9yXG4pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGZvbnQtc3R5bGU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSxcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb246ICN7ZXNjYXBlLXN2ZygkaWNvbil9O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbiwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93LCAkZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICB3aWR0aDogYWRkKCRmb3JtLWNvbG9yLXdpZHRoLCAkaW5wdXQtaGVpZ2h0LWlubmVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cblxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tc2VsZWN0Om5vdCg6Zm9jdXMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgICAgQGlmICRzdGF0ZSA9PSBcInZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIH0gQGVsc2UgaWYgJHN0YXRlID09IFwiaW52YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBidG4tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteDogI3skYnRuLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JGJ0bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHk6ICN7JGJ0bi1mb250LWZhbWlseX07XG4gIEBpbmNsdWRlIHJmcygkYnRuLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skYnRuLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0OiAjeyRidG4tbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGg6ICN7JGJ0bi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJ0bi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAjeyRidG4tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAjeyRidG4tZm9jdXMtd2lkdGh9IHJnYmEodmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiKSwgLjUpO1xuICAvLyBzY3NzLWRvY3MtZW5kIGJ0bi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy14KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtYnV0dG9uLXBvaW50ZXJzLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1iZykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdykpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmJ0bi1jaGVjayArICY6aG92ZXIge1xuICAgIC8vIG92ZXJyaWRlIGZvciB0aGUgY2hlY2tib3gvcmFkaW8gYnV0dG9uc1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgOm5vdCguYnRuLWNoZWNrKSArICY6YWN0aXZlLFxuICAmOmZpcnN0LWNoaWxkOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuc2hvdyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZyk7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdykpO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwOyAvLyBDYW4ndCB1c2UgYG5vbmVgIGFzIGtleXdvcmQgbmVnYXRlcyBhbGwgdmFsdWVzIHdoZW4gdXNlZCB3aXRoIG11bHRpcGxlIHNoYWRvd3NcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7JGJ0bi1saW5rLWZvY3VzLXNoYWRvdy1yZ2J9O1xuXG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi12YXJpYW50KFxuICAkYmFja2dyb3VuZCxcbiAgJGJvcmRlcixcbiAgJGNvbG9yOiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCksXG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWNvbG9yOiBjb2xvci1jb250cmFzdCgkaG92ZXItYmFja2dyb3VuZCksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKSxcbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLFxuICAkZGlzYWJsZWQtYm9yZGVyOiAkYm9yZGVyLFxuICAkZGlzYWJsZWQtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRkaXNhYmxlZC1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6ICN7JGJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnOiAjeyRob3Zlci1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skaG92ZXItYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSkpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiAjeyRkaXNhYmxlZC1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skZGlzYWJsZWQtYm9yZGVyfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhbnQtbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi1vdXRsaW5lLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KFxuICAkY29sb3IsXG4gICRjb2xvci1ob3ZlcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsXG4gICRhY3RpdmUtYm9yZGVyOiAkY29sb3IsXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGNvbG9yLWhvdmVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IoJGNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Z3JhZGllbnQ6IG5vbmU7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi1vdXRsaW5lLXZhcmlhbnQtbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi1zaXplLW1peGluXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteTogI3skcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteDogI3skcGFkZGluZy14fTtcbiAgQGluY2x1ZGUgcmZzKCRmb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi1zaXplLW1peGluXG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS1jbGFzc2VzXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xuXG4gICYuY29sbGFwc2UtaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGgpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLWNsYXNzZXNcbiIsIi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChgPGRpdj5gKVxuLmRyb3B1cCxcbi5kcm9wZW5kLFxuLmRyb3Bkb3duLFxuLmRyb3BzdGFydCxcbi5kcm9wdXAtY2VudGVyLFxuLmRyb3Bkb3duLWNlbnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleDogI3skemluZGV4LWRyb3Bkb3dufTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbWluLXdpZHRoOiAjeyRkcm9wZG93bi1taW4td2lkdGh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteTogI3skZHJvcGRvd24tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyOiAjeyRkcm9wZG93bi1zcGFjZXJ9O1xuICBAaW5jbHVkZSByZnMoJGRyb3Bkb3duLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3I6ICN7JGRyb3Bkb3duLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzOiAjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICN7JGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3gtc2hhZG93OiAjeyRkcm9wZG93bi1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogI3skZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAjeyRkcm9wZG93bi1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAjeyRkcm9wZG93bi1pdGVtLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24taGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4KTtcbiAgZGlzcGxheTogbm9uZTsgLy8gbm9uZSBieSBkZWZhdWx0LCBidXQgYmxvY2sgb24gXCJvcGVuXCIgb2YgdGhlIG1lbnVcbiAgbWluLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbWluLXdpZHRoKTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteCk7XG4gIG1hcmdpbjogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBtYXJnaW4gb2YgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3gtc2hhZG93KSk7XG5cbiAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgPiAuZHJvcGRvd24taXRlbTpmaXJzdC1jaGlsZCxcbiAgICA+IGxpOmZpcnN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICAgID4gLmRyb3Bkb3duLWl0ZW06bGFzdC1jaGlsZCxcbiAgICA+IGxpOmxhc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuLy8gV2UgZGVsaWJlcmF0ZWx5IGhhcmRjb2RlIHRoZSBgYnMtYCBwcmVmaXggYmVjYXVzZSB3ZSBjaGVja1xuLy8gdGhpcyBjdXN0b20gcHJvcGVydHkgaW4gSlMgdG8gZGV0ZXJtaW5lIFBvcHBlcidzIHBvc2l0aW9uaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXN0YXJ0IHtcbiAgICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LWVuZCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdSdyZSBzZXQuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3BlbmQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoZW5kKTtcbiAgICAmOjphZnRlciB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3BzdGFydCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQoc3RhcnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXkpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIG9wYWNpdHk6IDE7IC8vIFJldmlzaXQgaW4gdjYgdG8gZGUtZHVwZSBzdHlsZXMgdGhhdCBjb25mbGljdCB3aXRoIDxocj4gZWxlbWVudFxufVxuXG4vLyBMaW5rcywgYnV0dG9ucywgYW5kIG1vcmUgd2l0aGluIHRoZSBkcm9wZG93biBtZW51XG4vL1xuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2Bcbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcik7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tYm9yZGVyLXJhZGl1cywgMCkpO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmcpKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcik7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gRHJvcGRvd24gdGV4dFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcik7XG59XG5cbi8vIERhcmsgZHJvcGRvd25zXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tZGFyay1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3gtc2hhZG93OiAjeyRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LW1peGluc1xuQG1peGluIGNhcmV0LWRvd24oJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LXN0YXJ0KCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KFxuICAkZGlyZWN0aW9uOiBkb3duLFxuICAkd2lkdGg6ICRjYXJldC13aWR0aCxcbiAgJHNwYWNpbmc6ICRjYXJldC1zcGFjaW5nLFxuICAkdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnblxuKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiA6bm90KC5idG4tY2hlY2s6Zmlyc3QtY2hpbGQpICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRidG4tYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6Zmlyc3QtY2hpbGQsXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygjeyRidG4tYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG4gfiAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6ICN7JG5hdi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6ICN7JG5hdi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JG5hdi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXYtbGluay10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXRhYnMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdGFicy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi10YWJzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXRhYnMtY3NzLXZhcnNcblxuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG59XG5cblxuLy9cbi8vIFVuZGVybGluZVxuLy9cblxuLm5hdi11bmRlcmxpbmUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcDogI3skbmF2LXVuZGVybGluZS1nYXB9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogI3skbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG5cbiAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXApO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWZpbGwsXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmsge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBNYWtlIHN1cmUgYnV0dG9uIHdpbGwgZ3Jvd1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXg6ICN7aWYoJG5hdmJhci1wYWRkaW5nLXggPT0gbnVsbCwgMCwgJG5hdmJhci1wYWRkaW5nLXgpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteTogI3skbmF2YmFyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1saWdodC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15OiAjeyRuYXZiYXItYnJhbmQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICN7JG5hdmJhci1icmFuZC1tYXJnaW4tZW5kfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogI3skbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogI3skbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogI3skbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAjeyRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICN7JG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb259O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgLy8gVGhlIGBmbGV4LXdyYXBgIHByb3BlcnR5IGlzIGluaGVyaXRlZCB0byBzaW1wbGlmeSB0aGUgZXhwYW5kZWQgbmF2YmFyc1xuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IGluaGVyaXQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6IDA7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICAmLmFjdGl2ZSxcbiAgICAmLnNob3cge1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG5cbiAgYSxcbiAgYTpob3ZlcixcbiAgYTpmb2N1cyAge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemUpKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3IpOyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uKSk7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoKTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zY3JvbGwtaGVpZ2h0LCA3NXZoKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1leHBhbmQtbG9vcFxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tdW5pb24tY2xhc3MtbmFtZVxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzIHtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIHotaW5kZXg6IGF1dG87XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG5vbmUpO1xuICAgICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5vZmZjYW52YXMtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1leHBhbmQtbG9vcFxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4ubmF2YmFyLWxpZ2h0IHtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYC5uYXZiYXItbGlnaHRgXCIsIFwidjUuMi4wXCIsIFwidjYuMC4wXCIsIHRydWUpO1xufVxuXG4ubmF2YmFyLWRhcmssXG4ubmF2YmFyW2RhdGEtYnMtdGhlbWU9XCJkYXJrXCJdIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15OiAjeyRjYXJkLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteDogI3skY2FyZC1zcGFjZXIteH07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXk6ICN7JGNhcmQtdGl0bGUtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yOiAjeyRjYXJkLXRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcjogI3skY2FyZC1zdWJ0aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoOiAjeyRjYXJkLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yOiAjeyRjYXJkLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXJhZGl1czogI3skY2FyZC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93OiAjeyRjYXJkLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteTogI3skY2FyZC1jYXAtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1iZzogI3skY2FyZC1jYXAtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcjogI3skY2FyZC1jYXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWhlaWdodDogI3skY2FyZC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNvbG9yOiAjeyRjYXJkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1iZzogI3skY2FyZC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogI3skY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW46ICN7JGNhcmQtZ3JvdXAtbWFyZ2lufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3cpKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcik7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFjY29yZGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yOiAjeyRhY2NvcmRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYmc6ICN7JGFjY29yZGlvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAjeyRhY2NvcmRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aDogI3skYWNjb3JkaW9uLWljb24td2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm19O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3c6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tY3NzLXZhcnNcbn1cblxuLmFjY29yZGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBSZXNldCBidXR0b24gc3R5bGVcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmcpO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb24pKTtcblxuICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZyk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpKSAwIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uKTtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvbiBpY29uXG4gICY6OmFmdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24pO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbikpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICA+IC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jbGFzc1xuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJixcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbi1kYXJrKX07XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24tZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteTogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICN7JGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbX07XG4gIEBpbmNsdWRlIHJmcygkYnJlYWRjcnVtYi1mb250LXNpemUsIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZzogI3skYnJlYWRjcnVtYi1iZ307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogI3skYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAjeyRicmVhZGNydW1iLWRpdmlkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAjeyRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogI3skYnJlYWRjcnVtYi1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcik7XG4gICAgICBjb250ZW50OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1wiLyogcnRsOlwifSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XCIqL1wifTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1taXhpblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG59XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tbWl4aW5cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93KSk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAjeyRidG4tY2xvc2Utd2hpdGUtZmlsdGVyfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS1jc3MtdmFyc1xuXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwKSAqIC41KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gID4gKiB7XG4gICAgbWFyZ2luOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwKSAqIC41KTsgLy8gVG9kbyBpbiB2NjogcmVwbGFjZSB3aXRoIGdhcCBvbiBwYXJlbnQgY2xhc3NcbiAgfVxufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLm1vZGFsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW46ICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cH07XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwfTtcbiAgfVxuXG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGgpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1zbSB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXNtfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbGd9O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwteGx9O1xuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkcG9zdGZpeDogaWYoJGluZml4ICE9IFwiXCIsICRpbmZpeCArIFwiLWRvd25cIiwgXCJcIik7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLm1vZGFsLWZ1bGxzY3JlZW4jeyRwb3N0Zml4fSB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1oZWFkZXIsXG4gICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1mdWxsc2NyZWVuLWxvb3BcbiIsIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXg6ICN7JHppbmRleC10b29sdGlwfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXgtd2lkdGg6ICN7JHRvb2x0aXAtbWF4LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXg6ICN7JHRvb2x0aXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXk6ICN7JHRvb2x0aXAtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW46ICN7JHRvb2x0aXAtbWFyZ2lufTtcbiAgQGluY2x1ZGUgcmZzKCR0b29sdGlwLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yOiAjeyR0b29sdGlwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1iZzogI3skdG9vbHRpcC1iZ307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1czogI3skdG9vbHRpcC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1vcGFjaXR5OiAjeyR0b29sdGlwLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoOiAjeyR0b29sdGlwLWFycm93LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICN7JHRvb2x0aXAtYXJyb3ctaGVpZ2h0fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luKTtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYCR0b29sdGlwLW1hcmdpbmBcIiwgXCJ2NVwiLCBcInY1LnhcIiwgdHJ1ZSk7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1vcGFjaXR5KTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3cge1xuICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcblxuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICY6OmJlZm9yZSB7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtdG9vbHRpcC1zdGFydCAudG9vbHRpcC1hcnJvdyB7XG4gIHJpZ2h0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcblxuICAmOjpiZWZvcmUge1xuICAgIGxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXN0YXJ0O1xuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXgtd2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXMpKTtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciBvdmVyZmxvdy13cmFwIC8gd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLnBvcG92ZXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleDogI3skemluZGV4LXBvcG92ZXJ9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aDogI3skcG9wb3Zlci1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYmc6ICN7JHBvcG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aDogI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcjogI3skcG9wb3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93OiAjeyRwb3BvdmVyLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWhlYWRlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnOiAjeyRwb3BvdmVyLWhlYWRlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yOiAjeyRwb3BvdmVyLWJvZHktY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoOiAjeyRwb3BvdmVyLWFycm93LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aCk7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdykpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1lbmQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICB0b3A6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1zdGFydCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcik7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKSAje1wiLypydGw6XCIgKyBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZykgKyBcIiovXCJ9O1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpICN7XCIvKnJ0bDpcIiArIGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKSArIFwiKi9cIn07XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG5cbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gRGFyayBtb2RlIGNhcm91c2VsXG5cbkBtaXhpbiBjYXJvdXNlbC1kYXJrKCkge1xuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgZmlsdGVyOiAkY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyO1xuICB9XG5cbiAgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtZGFyayB7XG4gIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICAgIC5jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5jYXJvdXNlbCxcbiAgICAgICYuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2xlYXJmaXhcbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2xlYXJmaXhcbiIsIi8vXG4vLyBSb3RhdGluZyBib3JkZXJcbi8vXG5cbi5zcGlubmVyLWdyb3csXG4uc3Bpbm5lci1ib3JkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0KTtcbiAgdmVydGljYWwtYWxpZ246IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduKTtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkKSBsaW5lYXIgaW5maW5pdGUgdmFyKC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWUpO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpICN7XCIvKiBydGw6aWdub3JlICovXCJ9OyB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuXG4uc3Bpbm5lci1ib3JkZXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ246ICN7JHNwaW5uZXItdmVydGljYWwtYWxpZ259O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lOiBzcGlubmVyLWJvcmRlcjtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuXG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoKSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zcGlubmVyLWJvcmRlci1zbSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1zbS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRoLXNtfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0LXNtfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGg6ICN7JHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1zbS1jc3MtdmFyc1xufVxuXG4vL1xuLy8gR3Jvd2luZyBjaXJjbGVcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuXG4uc3Bpbm5lci1ncm93IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItZ3JvdztcbiAgLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3ctY3NzLXZhcnNcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGlubmVyLWdyb3ctc20ge1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRoLXNtfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0LXNtfTtcbn1cblxuQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5zcGlubmVyLWJvcmRlcixcbiAgICAuc3Bpbm5lci1ncm93IHtcbiAgICAgIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZCAqIDJ9O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiVvZmZjYW52YXMtY3NzLXZhcnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXg6ICN7JHppbmRleC1vZmZjYW52YXN9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGg6ICN7JG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodDogI3skb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXg6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15OiAjeyRvZmZjYW52YXMtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWNvbG9yOiAjeyRvZmZjYW52YXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYmc6ICN7JG9mZmNhbnZhcy1iZy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6ICN7JG9mZmNhbnZhcy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAjeyRvZmZjYW52YXMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3c6ICN7JG9mZmNhbnZhcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRyYW5zaXRpb246ICN7dHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogI3skb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtY3NzLXZhcnNcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAub2ZmY2FudmFzI3skaW5maXh9IHtcbiAgICBAZXh0ZW5kICVvZmZjYW52YXMtY3NzLXZhcnM7XG4gIH1cbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAub2ZmY2FudmFzI3skaW5maXh9IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtemluZGV4KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3IpO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3gtc2hhZG93KSk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbikpO1xuXG4gICAgICAmLm9mZmNhbnZhcy1zdGFydCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLWVuZCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtdG9wIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLWJvdHRvbSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLnNob3dpbmcsXG4gICAgICAmLnNob3c6bm90KC5oaWRpbmcpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLnNob3dpbmcsXG4gICAgICAmLmhpZGluZyxcbiAgICAgICYuc2hvdyB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodDogYXV0bztcbiAgICAgICAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMtYm9keSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIC8vIFJlc2V0IGBiYWNrZ3JvdW5kLWNvbG9yYCBpbiBjYXNlIGAuYmctKmAgY2xhc3NlcyBhcmUgdXNlZCBpbiBvZmZjYW52YXNcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vZmZjYW52YXMtYmFja2Ryb3Age1xuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wLCAkb2ZmY2FudmFzLWJhY2tkcm9wLWJnLCAkb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHkpO1xufVxuXG4ub2ZmY2FudmFzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgbWFyZ2luOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKSBhdXRvO1xuICB9XG59XG5cbi5vZmZjYW52YXMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi5vZmZjYW52YXMtYm9keSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbiIsIi5wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHdhaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4O1xuXG4gICYuYnRuOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLnBsYWNlaG9sZGVyLXhzIHtcbiAgbWluLWhlaWdodDogLjZlbTtcbn1cblxuLnBsYWNlaG9sZGVyLXNtIHtcbiAgbWluLWhlaWdodDogLjhlbTtcbn1cblxuLnBsYWNlaG9sZGVyLWxnIHtcbiAgbWluLWhlaWdodDogMS4yZW07XG59XG5cbi8vIEFuaW1hdGlvblxuLnBsYWNlaG9sZGVyLWdsb3cge1xuICAucGxhY2Vob2xkZXIge1xuICAgIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItZ2xvdyAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cge1xuICA1MCUge1xuICAgIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjtcbiAgfVxufVxuXG4ucGxhY2Vob2xkZXItd2F2ZSB7XG4gIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICRibGFjayA1NSUsIHJnYmEoMCwgMCwgMCwgKDEgLSAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW4pKSA3NSUsICRibGFjayA5NSUpO1xuICBtYXNrLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci13YXZlIDJzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHtcbiAgMTAwJSB7XG4gICAgbWFzay1wb3NpdGlvbjogLTIwMCUgMCU7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAudGV4dC1iZy0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkdmFsdWUpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5saW5rLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgJGhvdmVyLWNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcbiAgICAgICAgY29sb3I6IFJHQkEoI3t0by1yZ2IoJGhvdmVyLWNvbG9yKX0sIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodG8tcmdiKCRob3Zlci1jb2xvciksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT25lLW9mZiBzcGVjaWFsIGxpbmsgaGVscGVyIGFzIGEgYnJpZGdlIHVudGlsIHY2XG4ubGluay1ib2R5LWVtcGhhc2lzIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvY3VzLXJpbmc6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICAvLyBCeSBkZWZhdWx0LCB0aGVyZSBpcyBubyBgLS1icy1mb2N1cy1yaW5nLXhgLCBgLS1icy1mb2N1cy1yaW5nLXlgLCBvciBgLS1icy1mb2N1cy1yaW5nLWJsdXJgLCBidXQgd2UgcHJvdmlkZSBDU1MgdmFyaWFibGVzIHdpdGggZmFsbGJhY2tzIHRvIGluaXRpYWwgYDBgIHZhbHVlc1xuICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy14LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy15LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1ibHVyLCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3IpO1xufVxuIiwiLmljb24tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBnYXA6ICRpY29uLWxpbmstZ2FwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjUpKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICA+IC5iaSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGhlaWdodDogJGljb24tbGluay1pY29uLXNpemU7XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGljb24tbGluay1pY29uLXRyYW5zaXRpb24pO1xuICB9XG59XG5cbi5pY29uLWxpbmstaG92ZXIge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgID4gLmJpIHtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWljb24tbGluay10cmFuc2Zvcm0sICRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbyk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xuICAucmF0aW8tI3ska2V5fSB7XG4gICAgLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvOiAjeyRyYXRpb307XG4gIH1cbn1cbiIsIi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3AgYW5kIGJvdHRvbVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cblxuICAgIC5zdGlja3kjeyRpbmZpeH0tYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBzdGFja3Ncbi5oc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vLyBzY3NzLWRvY3MtZW5kIHN0YWNrc1xuIiwiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OiN7JHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50fSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvL1xuLy8gVGV4dCB0cnVuY2F0aW9uXG4vL1xuXG4udGV4dC10cnVuY2F0ZSB7XG4gIEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLnZyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB3aWR0aDogJHZyLWJvcmRlci13aWR0aDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSRlMgcmVzY2FsaW5nXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHByaW50KSA9PSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFwiLXByaW50XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9cclxuLy8gUmVzZXRcclxuLy9cclxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXHJcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcclxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxyXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxyXG5iLCB1LCBpLCBjZW50ZXIsXHJcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXHJcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxyXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcclxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXHJcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcclxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXHJcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgZm9udC1zaXplOiAxMDAlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxufVxyXG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXHJcbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsXHJcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgbWFpbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuYm9keSB7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxub2wsIHVsIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbmJsb2NrcXVvdGUsIHEge1xyXG4gIHF1b3Rlczogbm9uZTtcclxufVxyXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcclxucTpiZWZvcmUsIHE6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IG5vbmU7XHJcbn1cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn1cclxuXHJcbmh0bWx7XHJcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG4iLCJAbWl4aW4gcGxhY2Vob2xkZXIge1xyXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxyXG4gICY6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICAge0Bjb250ZW50fVxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAge0Bjb250ZW50fVxyXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fVxyXG4gICY6OnBsYWNlaG9sZGVyICAgICAgICAgICAgICAge0Bjb250ZW50fVxyXG59XHJcblxyXG5AbWl4aW4gdGl0bGUge1xyXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgQGNvbnRlbnRcclxuICB9XHJcbn1cclxuXHJcbi8vIHVzZWZ1bCB2aWV3cG9ydCB3aWR0aC9oZWlnaHQvcGFkZGluZy10b3AvcGFkZGluZy1ib3R0b20gaGVscGVyXHJcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAwIHtcclxuICAudnctI3skaX0ge1xyXG4gICAgd2lkdGggOiAjeyRpfXZ3ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC52aC0jeyRpfSB7XHJcbiAgICBoZWlnaHQgOiAjeyRpfXZoICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5wYnZoLSN7JGl9IHtcclxuICAgIHBhZGRpbmctYm90dG9tIDogI3skaX12aCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAucHR2aC0jeyRpfSB7XHJcbiAgICBwYWRkaW5nLXRvcCA6ICN7JGl9dmggIWltcG9ydGFudDtcclxuICB9XHJcbiAgLm1idmgtI3skaX0ge1xyXG4gICAgcGFkZGluZy1ib3R0b20gOiAjeyRpfXZoICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5tdHZoLSN7JGl9IHtcclxuICAgIHBhZGRpbmctdG9wIDogI3skaX12aCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iLCIlZnVsbHNjcmVlbiB7XHJcbiAgd2lkdGggIDogMTAwdnc7XHJcbiAgaGVpZ2h0IDogMTAwdmg7XHJcbn1cclxuXHJcbiVmbGV4LWNlbnRlcmluZyB7XHJcbiAgZGlzcGxheSAgICAgICAgIDogZmxleDtcclxuICBoZWlnaHQgICAgICAgICAgOiAxMDAlO1xyXG4gIHdpZHRoICAgICAgICAgICA6IDEwMCU7XHJcbiAgZmxleC1kaXJlY3Rpb24gIDogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zICAgICA6IGNlbnRlcjtcclxuICB0ZXh0LWFsaWduICAgICAgOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50IDogY2VudGVyO1xyXG59XHJcblxyXG4lZm9ybS10eXBvZ3JhcGh5IHtcclxuICBjb2xvciAgICAgICAgICA6ICR3aGl0ZTtcclxuICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgZm9udC1zaXplICAgICAgOiAxLjVyZW07XHJcbiAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQgICAgOiAzMDA7XHJcbiAgbGluZS1oZWlnaHQgICAgOiAxNDAlOyAvKiAyLjFyZW0gKi9cclxuICBsZXR0ZXItc3BhY2luZyA6IDA7XHJcbn1cclxuXHJcbiIsImIsIHN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6ICRzdHJvbmctZm9udC13ZWlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0IHtcclxuICBmb250LXdlaWdodDogJGJhc2UtZm9udC13ZWlnaHQ7XHJcbn1cclxuXHJcbi50ZXh0IHtcclxuICBAaW5jbHVkZSB0ZXh0O1xyXG4gICZfMSB7XHJcbiAgfVxyXG4gICZfMiB7XHJcblxyXG4gIH1cclxuICAmX3NtIHtcclxuICB9XHJcbn1cclxuXHJcbi5jb250ZW50IHtcclxuICBwOm5vdCg6bGFzdC1vZi10eXBlKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBzZXQtcmVtKDI4cHgpO1xyXG4gIH1cclxufVxyXG5cclxuLnN1YnRpdGxlIHtcclxuICAmXzEge1xyXG5cclxuICB9XHJcbiAgJl8yIHtcclxuXHJcbiAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gICZfMSB7XHJcbiBcclxuICB9XHJcbiAgJl8yIHtcclxuXHJcbiAgfVxyXG4gICZfMyB7XHJcblxyXG4gIH1cclxuICAmXzQge1xyXG5cclxuICB9XHJcbiAgJl81IHtcclxuICBcclxuICB9XHJcbiAgJl82IHtcclxuXHJcbiAgfVxyXG59IiwiLy8gRm9udCBGYW1pbHlcclxuJGdsb2JhbC1mb250OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4kZ2xvYmFsLWZvbnQtY29uZDogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcblxyXG4vLyAgRm9udCBTaXplXHJcbiRzaXplLWZvbnQtYmFzZTogMTY7XHJcbiRzaXplLWZvbnQtYmFzZS10YWJsZXQ6IDE2O1xyXG4kc2l6ZS1mb250LWJhc2UtbW9iaWxlOiAxNjtcclxuXHJcbi8vIEZvbnQgV2VpZ2h0XHJcbiRiYXNlLWZvbnQtd2VpZ2h0OiAzMDA7XHJcbiRzdHJvbmctZm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcbi8vIFRpbWluZ3NcclxuJGdsb2JhbC1mYXN0LXRyYW5zaXRpb24tc3BlZWQ6IDAuMTVzO1xyXG4kZ2xvYmFsLW1lZGl1bS10cmFuc2l0aW9uLXNwZWVkOiAwLjRzO1xyXG4kZ2xvYmFsLXNsb3ctdHJhbnNpdGlvbi1zcGVlZDogMC41cztcclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcbiRnbG9iYWwtZmFzdC10cmFuc2l0aW9uOiAkZ2xvYmFsLWZhc3QtdHJhbnNpdGlvbi1zcGVlZCBlYXNlLW91dDtcclxuJGdsb2JhbC1tZWRpdW0tdHJhbnNpdGlvbjogJGdsb2JhbC1tZWRpdW0tdHJhbnNpdGlvbi1zcGVlZCBlYXNlLW91dDtcclxuJGdsb2JhbC1zbG93LXRyYW5zaXRpb246ICRnbG9iYWwtc2xvdy10cmFuc2l0aW9uLXNwZWVkIGVhc2Utb3V0O1xyXG4kZ2xvYmFsLXRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDtcclxuXHJcbi8vIENvbnRhaW5lciBTaXplc1xyXG4kY29udGFpbmVyLXdpZHRoOiAxOTIwcHg7XHJcbiRjb250YWluZXItZXh0cmFsYXJnZS13aWR0aDogMTYwMHB4O1xyXG4kY29udGFpbmVyLWxhcmdlLXdpZHRoOiAxNDI1cHg7XHJcbiRjb250YWluZXItbWVkaXVtLXdpZHRoOiAxMzI1cHg7XHJcbiRjb250YWluZXItbWVkaXVtYWx0LXdpZHRoOiAxMjM1cHg7XHJcbiRjb250YWluZXItc21hbGwtd2lkdGg6IDExNTBweDtcclxuJGNvbnRhaW5lci1leHRyYXNtYWxsLXdpZHRoOiAxMDAwcHg7XHJcblxyXG4kY29udGFpbmVyLXBhZGRpbmc6IDMwcHg7XHJcbiRjb250YWluZXItcGFkZGluZy1sYXJnZTogNTBweDtcclxuJGNvbnRhaW5lci1wYWRkaW5nLW1vYmlsZTogMzBweDtcclxuXHJcbi8vIEJsb2NrIFNwYWNpbmdcclxuJGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctZGVza3RvcDogNTBweDtcclxuJGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctbW9iaWxlOiBjYWxjKCN7JGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctZGVza3RvcH0gLyAyKTtcclxuXHJcbi8vSGVhZGVyXHJcbiRoZWFkZXItaGVpZ2h0LWRlc2t0b3A6IDE1MHB4O1xyXG4kaGVhZGVyLWhlaWdodC1zdGlja3k6IDEwMHB4O1xyXG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6IDE0MHB4O1xyXG4kaGVhZGVyLWhlaWdodC1zdGlja3ktbW9iaWxlOiAkaGVhZGVyLWhlaWdodC1zdGlja3k7XHJcbiRuYXZiYXItaGVpZ2h0LWRlc2t0b3A6IDU2cHg7XHJcbiRuYXZiYXItaGVpZ2h0LW1vYmlsZTogJG5hdmJhci1oZWlnaHQtZGVza3RvcDtcclxuXHJcbi8vIFNsaWNrIHNsaWRlclxyXG4kYXJyb3ctc2l6ZS1kZXNrdG9wOiA5NXB4O1xyXG4iLCJodG1sLFxyXG5ib2R5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcclxuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcclxuICBmb250LXNpemU6ICRzaXplLWZvbnQtYmFzZSArIHB4O1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgZm9udC1zaXplOiAkc2l6ZS1mb250LWJhc2UtdGFibGV0ICsgcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgZm9udC1zaXplOiAkc2l6ZS1mb250LWJhc2UtbW9iaWxlICsgcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBIaWRlIHNjcm9sbGJhcnMqL1xyXG4vKiBGaXJlZm94ICovXHJcbioge1xyXG4gIHNjcm9sbGJhci13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG4gIHNjcm9sbGJhci1jb2xvcjogIzAwMDAwMCAjZmZmZmZmO1xyXG4gIC8qIElFIGFuZCBFZGdlICovXHJcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4vKiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkgKi9cclxuKjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gIC8vd2lkdGg6IDVweDtcclxuICB3aWR0aDogMDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4qOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxufVxyXG5cclxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkICNmZmZmZmY7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIGhlaWdodDogMTAwdmg7XHJcbiAgYm9keSB7XHJcbiAgICAvL21heC13aWR0aDogJGNvbnRhaW5lci13aWR0aDsgLy8gbm8gbWF4LXdpZHRoIG5lZWRlZCBmb3IgdGhpcyBzaXRlXHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtd2VpZ2h0O1xyXG4gICAgKjpub3QoLmZhKTpub3QoaSkge1xyXG4gICAgICBmb250LWZhbWlseTogJGdsb2JhbC1mb250O1xyXG4gICAgfVxyXG4gICAgY29sb3I6ICR0ZXh0O1xyXG4gIH1cclxufVxyXG5cclxuLmhhcy1zY3JvbGwtc21vb3RoIHtcclxuICBib2R5IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDB2dztcclxuICB9XHJcbn1cclxuXHJcbmE6bm90KC5ibG9jay1saW5rKSB7XHJcbiAgQGluY2x1ZGUgbGluaztcclxufVxyXG5cclxuYS5ibG9jay1saW5rIHtcclxuICBAaW5jbHVkZSBsaW5rLW5vLWRlY29yYXRpb247XHJcbn1cclxuXHJcbi5mYWtlLWxpbmsge1xyXG5cclxufVxyXG5cclxuQG1peGluIGNvbnRhaW5lciB7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKCRjb250YWluZXItd2lkdGggKyAoJGNvbnRhaW5lci1wYWRkaW5nICogMikpO1xyXG4gIHBhZGRpbmc6IDAgJGNvbnRhaW5lci1wYWRkaW5nO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgIHBhZGRpbmc6IDAgJGNvbnRhaW5lci1wYWRkaW5nLW1vYmlsZTtcclxuICB9XHJcbn1cclxuXHJcbi5jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxuICAmLXhsIHtcclxuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxuICAgIG1heC13aWR0aDogY2FsYygkY29udGFpbmVyLWV4dHJhbGFyZ2Utd2lkdGggKyAoJGNvbnRhaW5lci1wYWRkaW5nICogMikpO1xyXG4gIH1cclxuICAmLWxnIHtcclxuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxuICAgIG1heC13aWR0aDogY2FsYygkY29udGFpbmVyLWxhcmdlLXdpZHRoICsgKCRjb250YWluZXItcGFkZGluZyAqIDIpKTtcclxuICB9XHJcbiAgJi1tZCB7XHJcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoJGNvbnRhaW5lci1tZWRpdW0td2lkdGggKyAoJGNvbnRhaW5lci1wYWRkaW5nICogMikpO1xyXG4gIH1cclxuICAmLW1kYWx0IHtcclxuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxuICAgIG1heC13aWR0aDogY2FsYygkY29udGFpbmVyLW1lZGl1bWFsdC13aWR0aCArICgkY29udGFpbmVyLXBhZGRpbmcgKiAyKSk7XHJcbiAgfVxyXG4gICYtc20ge1xyXG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKCRjb250YWluZXItc21hbGwtd2lkdGggKyAoJGNvbnRhaW5lci1wYWRkaW5nICogMikpO1xyXG4gIH1cclxuICAmLXhzIHtcclxuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxuICAgIG1heC13aWR0aDogY2FsYygkY29udGFpbmVyLWV4dHJhc21hbGwtd2lkdGggKyAoJGNvbnRhaW5lci1wYWRkaW5nICogMikpO1xyXG4gIH1cclxuICBcclxuICAmLXBhZGRlZCB7XHJcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XHJcbiAgICBwYWRkaW5nOiAwICRjb250YWluZXItcGFkZGluZy1sYXJnZTtcclxuICB9XHJcbn1cclxuXHJcbnNlY3Rpb24ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm90Z3MtZGV2ZWxvcG1lbnQtc2l0ZS1mcm9udC1lbmQge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8uYWNmLWJsb2NrOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xyXG4vLyAgQGluY2x1ZGUgYmxvY2stc3BhY2luZztcclxuLy99XHJcblxyXG4uZ3JleS1iZyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1iZztcclxufVxyXG5cclxuLnNlY3Rpb24tbWFpbi10ZXh0IHtcclxuICB3aWR0aDogNjAlO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uZmFkaW5nLXRleHQge1xyXG4gIEBpbmNsdWRlIGZpcnN0LWxldHRlci1iaWdnZXI7XHJcbiAgQGluY2x1ZGUgdGV4dC10eXBlLXByZTtcclxuICBAaW5jbHVkZSB0ZXh0LXR5cGUtcG9zdDtcclxuICBAaW5jbHVkZSBsb25nLWxpbmU7XHJcbiAgJjpub3QoLmZpcnN0LWxldHRlci1ub3JtYWwpOmZpcnN0LWxldHRlcixcclxuICBwOm5vdCguZmlyc3QtbGV0dGVyLW5vcm1hbCk6Zmlyc3QtbGV0dGVyLFxyXG4gIC50ZXh0LXR5cGUtcG9zdCB7XHJcbiAgICBmb250LWZhbWlseTogJ1ByYXRhJywgc2VyaWYgIWltcG9ydGFudDtcclxuICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHN0eWxpemVkLWxpbmtzO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIHdpZHRoOiBhdXRvO1xyXG59XHJcblxyXG4uYmxvY2stcGFnZS1oZXJvLnBhZ2VfNDA0IHtcclxuICBcclxuICAudGl0bGUtc3VidGl0bGUtd3JhcHBlciB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIC50aXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1YnRpdGxlIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBAaW5jbHVkZSB0aXRsZSB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5jb250ZW50XzQwNCB7XHJcbiAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHAge1xyXG4gICAgICBmb250LWZhbWlseTogJ25ldWUtbW9udHJlYWwnLCBzZXJpZjtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICBmb250LXNpemU6IHNldC1yZW0oMjRweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDI5cHgpO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgfVxyXG4gICAgLmN0YSAge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMDhweDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2ltcGxlLXBhZ2Uge1xyXG4gIHBhZGRpbmc6IDEwMHB4IDMwcHg7XHJcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgQGluY2x1ZGUgdGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogc2V0LXJlbSgzMHB4KTtcclxuICB9XHJcbiAgaDEge1xyXG4gICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgZm9udC1zaXplOiBzZXQtcmVtKDcwcHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHNldC1yZW0oOTBweCk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSg2MHB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHNldC1yZW0oNzBweCk7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHNldC1yZW0oMzJweCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDUwcHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogc2V0LXJlbSg2MHB4KTtcclxuICAgIH1cclxuICB9XHJcbiAgaDIge1xyXG4gICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgZm9udC1zaXplOiBzZXQtcmVtKDUwcHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHNldC1yZW0oNjBweCk7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDQwcHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogc2V0LXJlbSg1MHB4KTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogc2V0LXJlbSgzMnB4KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBmb250LXNpemU6IHNldC1yZW0oMzBweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDQwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBoMyB7XHJcbiAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICBmb250LXNpemU6IHNldC1yZW0oMzBweCk7XHJcbiAgICBsaW5lLWhlaWdodDogc2V0LXJlbSg0MHB4KTtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBmb250LXNpemU6IHNldC1yZW0oMjZweCk7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDM2cHgpO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiBzZXQtcmVtKDMycHgpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgyNHB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IHNldC1yZW0oMzRweCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGg0LCBoNSwgaDYge1xyXG4gIH1cclxuICBwLCBsaSB7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICBmb250LXNpemU6IHNldC1yZW0oMThweCk7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4MCU7IC8qIDIuMDI1cmVtICovXHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICB9XHJcbiAgcCwgbGkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogc2V0LXJlbSgyNHB4KTtcclxuICB9XHJcbiAgdWwsIG9sIHtcclxuICAgIHBhZGRpbmctbGVmdDogc2V0LXJlbSg0MHB4KTtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xyXG4gIH1cclxuICBvbCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHN0eWxpemVkLWxpbmtzLWFsdDtcclxufVxyXG5cclxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuLmNhcHRjaGEtZGlzY2xhaW1lciB7XHJcbiAgJiwgKiB7XHJcbiAgICBmb250LXNpemU6IHNldC1yZW0oMThweCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIHN0eWxpemVkLWxpbmtzLWFsdDtcclxuICBhIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDIxcHgpO1xyXG4gIH1cclxufSIsIkBtaXhpbiBwb3NpdGlvbi1maXhlZCgkekluZGV4OiBudWxsKSB7XHJcbiAgei1pbmRleDogJHpJbmRleDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG59XHJcblxyXG4vLyBmcm9tIGhlcmUgYXJlIGluaGVyaXRlZCBmcm9tIHN0YXJ0aW5nIHByb2plY3RcclxuXHJcbkBtaXhpbiBsaW5rIHtcclxuICBjb2xvcjogJHRleHQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICRhY2NlbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmaXhlZC1saW5rLWNvbG9yKCRjb2xvcikge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmFjdGl2ZSB7XHJcbiAgICAmLFxyXG4gICAgKiB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZml4ZWQtbGluay1zdHJva2UoJGNvbG9yKSB7XHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6YWN0aXZlIHtcclxuICAgICYsXHJcbiAgICAqIHtcclxuICAgICAgc3Ryb2tlOiAkY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZml4ZWQtbGluay1maWxsKCRjb2xvcikge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmFjdGl2ZSB7XHJcbiAgICAmLFxyXG4gICAgKiB7XHJcbiAgICAgIGZpbGw6ICRjb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5rLW5vLWRlY29yYXRpb24ge1xyXG4gICYsXHJcbiAgJjpob3ZlcixcclxuICAmOmFjdGl2ZSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmxvY2stc3BhY2luZyB7XHJcbiAgcGFkZGluZy10b3A6IGNhbGMoJGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctZGVza3RvcCAqIDIpO1xyXG4gIHBhZGRpbmctYm90dG9tOiAkYmxvY2stdmVydGljYWwtc3BhY2luZy1kZXNrdG9wO1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctbW9iaWxlICogMik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJGJsb2NrLXZlcnRpY2FsLXNwYWNpbmctbW9iaWxlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJsb2NrLXNwYWNpbmctZXF1YWwge1xyXG4gIHBhZGRpbmctdG9wOiBjYWxjKCRibG9jay12ZXJ0aWNhbC1zcGFjaW5nLWRlc2t0b3AgKiAyKTtcclxuICBwYWRkaW5nLWJvdHRvbTogY2FsYygkYmxvY2stdmVydGljYWwtc3BhY2luZy1kZXNrdG9wICogMik7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkYmxvY2stdmVydGljYWwtc3BhY2luZy1tb2JpbGUgKiAyKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRibG9jay12ZXJ0aWNhbC1zcGFjaW5nLW1vYmlsZSAqIDIpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1haW4tcGFnZS10aXRsZS13cmFwcGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAzcmVtO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDIgeGwpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgLy9tYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1haW4tcGFnZS10aXRsZS10ZXh0LWgxIHtcclxuICBvcGFjaXR5OiAwLjE7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAyMHZ3O1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgzIHhsKSB7XHJcbiAgICBmb250LXNpemU6IDE3LjVyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAtNTBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICBvcGFjaXR5OiAwLjI7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWFpbi1wYWdlLXRpdGxlLXRleHQtaDIoJGNvbG9yOiAkd2hpdGUpIHtcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGZvbnQtZmFtaWx5OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgc3BhbiB7XHJcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB9XHJcbiAgJiwgc3BhbiB7XHJcbiAgICBmb250LXNpemU6IDVyZW07XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMTIwJTsgLyogNnJlbSAqL1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oMnhsKSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA3dnc7XHJcbiAgICAgIGZvbnQtc2l6ZTogNnZ3O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIHdpZHRoOiA5MHZ3ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgZm9udC1zaXplOiAxMHZ3O1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBiLFxyXG4gIHN0cm9uZyB7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1haW4tcGFnZS10aXRsZS10ZXh0LWgzKCRjb2xvcjogJHdoaXRlKSB7XHJcbiAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtc2l6ZTogc2V0LXJlbSg2MHB4KTtcclxuICBsaW5lLWhlaWdodDogMTAwJTtcclxuICBsZXR0ZXItc3BhY2luZzogMDtcclxufVxyXG5cclxuQG1peGluIGZpcnN0LWxldHRlci1iaWdnZXIge1xyXG4gICYsIHAge1xyXG4gICAgJjpub3QoLmZpcnN0LWxldHRlci1ub3JtYWwpIHtcclxuICAgICAgJjpmaXJzdC1sZXR0ZXIge1xyXG4gICAgICAgXHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgIC8qZm9udC1zaXplOiA1cmVtOyovXHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgLyogZm9udC1zaXplOiA0cmVtOyovXHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAvKmZvbnQtc2l6ZTogM3JlbTsqL1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICA+IHNwYW46Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiBzZXQtcmVtKDQwcHgpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IHNldC1yZW0oMjBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbG9uZy1saW5lIHtcclxuICAubG9uZy1saW5lIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTVweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAyMDBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LWluZGVudDogLTk5cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdHlsaXplZC1saW5rcyB7XHJcbiAgYSB7XHJcbiAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4xcztcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7XHJcbiAgICAgIH1cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdHlsaXplZC1saW5rcy1hbHQge1xyXG4gIEBpbmNsdWRlIHN0eWxpemVkLWxpbmtzO1xyXG4gIGEge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRleHQtdHlwZS1wcmUge1xyXG4gIC50ZXh0LXR5cGUtcHJlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgZm9udC1zaXplOiBzZXQtcmVtKDI0cHgpO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBkaXJlY3Rpb246IHJ0bDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgyMnB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE2MCU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDIwcHgpO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC1oZWlnaHQ6IDcwMHB4KSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgyMHB4KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LXR5cGUtcG9zdCB7XHJcbiAgLnRleHQtdHlwZS1wb3N0IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDIycHgpO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTYwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBmb250LXNpemU6IHNldC1yZW0oMjBweCk7XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LWhlaWdodDogNzAwcHgpIHtcclxuICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDIwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGhlcm8tYmxhY2stYmFja2dyb3VuZC13aXRoLWJpZy1wYWdlLXRpdGxlLWFuZC10ZXh0KCRoYXZlLWxvbmctbGluZTogZmFsc2UpIHtcclxuICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gIFxyXG4gIGRpdiB7XHJcbiAgICBAaW5jbHVkZSBtYWluLXBhZ2UtdGl0bGUtd3JhcHBlcjtcclxuICAgIFxyXG4gICAgaDEge1xyXG4gICAgICBAaW5jbHVkZSBtYWluLXBhZ2UtdGl0bGUtdGV4dC1oMTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgZmlyc3QtbGV0dGVyLWJpZ2dlcjtcclxuICAgIEBpbmNsdWRlIHRleHQtdHlwZS1wcmU7XHJcbiAgICBAaW5jbHVkZSB0ZXh0LXR5cGUtcG9zdDtcclxuICAgIFxyXG4gICAgQGlmICRoYXZlLWxvbmctbGluZSB7XHJcbiAgICAgIEBpbmNsdWRlIGxvbmctbGluZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgcCB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXJlbSk7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnJlbSk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gdmVydGljYWwtc2hpZnRpbmctdGV4dCgkY29sb3I6ICRibGFjaywgJHBhZGRpbmdfbGVmdDogMTV2dykge1xyXG4gIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZ19sZWZ0O1xyXG4gIG1hcmdpbi1yaWdodDogLTFweDsgLy8gdG8gc29sdmUgZ2FwIGJldHdlZW4gZmxleCBlbGVtZW50cyBkdWUgdG8gcm91bmRpbmcgZGltc1xyXG5cclxuICAmID4gZGl2IHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgdHJhbnNmb3JtOiB1bnNldDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgyLCBoMyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMy43NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgLmZpcnN0IHtcclxuICAgICYsIGgyLCBoMyB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICBmb250LXNpemU6IDMuNzVyZW07XHJcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5maXJzdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc2hpZnRpbmctZmlyc3QgMjBzIGxpbmVhciAxbXMgaW5maW5pdGU7XHJcbiAgICBhbmltYXRpb246IHNoaWZ0aW5nLWZpcnN0IDIwcyBsaW5lYXIgMW1zIGluZmluaXRlO1xyXG4gIH1cclxuXHJcbiAgLnNlY29uZCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc2hpZnRpbmctc2Vjb25kIDIwcyBsaW5lYXIgMW1zIGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uOiBzaGlmdGluZy1zZWNvbmQgMjBzIGxpbmVhciAxbXMgaW5maW5pdGU7XHJcbiAgfVxyXG5cclxuICBALXdlYmtpdC1rZXlmcmFtZXMgc2hpZnRpbmctZmlyc3Qge1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxyXG4gICAgMjUlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTsgfVxyXG4gICAgNzUlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNSUpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIHNoaWZ0aW5nLWZpcnN0IHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cclxuICAgIDI1JSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7IH1cclxuICAgIDc1JSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUlKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxyXG4gIH1cclxuXHJcbiAgQC13ZWJraXQta2V5ZnJhbWVzIHNoaWZ0aW5nLXNlY29uZCB7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XHJcbiAgICAyNSUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1JSk7IH1cclxuICAgIDc1JSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cclxuICB9XHJcblxyXG4gIEBrZXlmcmFtZXMgc2hpZnRpbmctc2Vjb25kIHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cclxuICAgIDI1JSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUlKTsgfVxyXG4gICAgNzUlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LXN0cmlwZSB7XHJcbiAgLy8gVE9ETyB0aGlzIHB1cmUgY3NzIHNoaWZ0aW5nIHRleHQgaGFzIGEgYnVnOiBhdCB0aGUgZW5kIG9mIGFuaW1hdGlvbnMgcmVzdGFydCB3aXRoIGEgc21hbGwgXCJ0aWNrXCIuIE1heWJlIGJldHRlciB0byBtYW5hZ2UgYSBqcyBzb2x1dGlvbiB3aXRoIGluZmluaXRlIGNsb25pbmcgdGV4dFxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luOiA0cmVtIDAgM3JlbSAtMnJlbTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAzLjc1cmVtO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBmb250LXNpemU6IHNldC1yZW0oMzBweCk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHNwYW4ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgfVxyXG5cclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzY3JvbGxpbmcgMzBzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIGFuaW1hdGlvbjogc2Nyb2xsaW5nIDMwcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlO1xyXG5cclxuXHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2Nyb2xsaW5nIHtcclxuICAgICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxyXG4gICAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2Nyb2xsaW5nIHtcclxuICAgICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxyXG4gICAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG5vcm1hbGl6ZS13cC12aWRlbyB7XHJcbiAgLndwLXZpZGVvIHtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBcclxuICAgIC5tZWpzLWNvbnRhaW5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgXHJcbiAgICAgIC5tZWpzLW1lZGlhZWxlbWVudCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgXHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgdmlkZW8ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJGhlYWRlci10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG4kaGVhZGVyLXRyYW5zaXRpb24tc2xvdzogYWxsIDAuNnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBjdXJ0YWluIHtcclxuICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxyXG4gIHRvICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBjdXJ0YWluIHtcclxuICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxyXG4gIHRvICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cclxufVxyXG5cclxuaGVhZGVyIHtcclxuICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcclxuICBcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgLy8gTG9jb21vdGl2ZSBzY3JvbGwgcm9sbGJhY2tcclxuICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgXHJcbiAgLmhlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICBhe1xyXG4gICAgICBzdmd7XHJcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICBcclxuICAgIH1cclxuICAgXHJcbiAgfVxyXG4gIFxyXG4gICNuYXYtdG9nZ2xlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgXHJcbiAgICAub3BlbixcclxuICAgIC5jbG9zZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdHJhbnNpdGlvbjogJGhlYWRlci10cmFuc2l0aW9uO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAub3BlbiB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHNjYWxlKDEpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuY2xvc2Uge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSguNCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubWVnYW1lbnUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAyO1xyXG4gIHdpZHRoOiAxNDAlO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMjB2dztcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdHJhbnNpdGlvbjogJGhlYWRlci10cmFuc2l0aW9uLXNsb3c7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSguOCk7XHJcbiAgb3BhY2l0eTogLjU7XHJcbiAgXHJcbiAgLnNsaWNrLWFycm93IHtcclxuICAgIHdpZHRoOiAzMyUgIWltcG9ydGFudDtcclxuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB6LWluZGV4OiA2O1xyXG4gICAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xyXG4gICAgXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgXHJcbiAgYSB7XHJcbiAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWYgIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB0cmFuc2l0aW9uOiAkaGVhZGVyLXRyYW5zaXRpb24tc2xvdztcclxuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICAuc2xpY2stbGlzdCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAyMHZ3IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAvKmVlNDIqL1xyXG4gICAgXHJcbiAgICBhIHtcclxuICAgICAgZm9udC1zaXplOiA2LjI1cmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogOC43NXJlbTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLnNsaWNrLWNlbnRlciBhIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuc2xpY2stdHJhY2sge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIFxyXG4gICAgICAuc2xpY2stc2xpZGUge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBcclxuICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG4gIFxyXG4gICYsICoge1xyXG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBcclxuICAgIGEge1xyXG4gICAgICBmb250LXNpemU6IDMuMTI1cmVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogNC41cmVtO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgbWFyZ2luOiAyMnB4IDA7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJnO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA3MDBweCkge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiA1NTBweCkge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgICAgIFxyXG4gICAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAxKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNrZXdYKC0yNWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICYtb3ZlcmxheSB7XHJcbiAgICBAaW5jbHVkZSBwb3NpdGlvbi1maXhlZCg5OTgpO1xyXG4gICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAvL3otaW5kZXg6IDk5ODtcclxuICAgIC8vdG9wOiAwO1xyXG4gICAgLy9sZWZ0OiAwO1xyXG4gICAgLy9yaWdodDogMDtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYmFja2dyb3VuZDogJGRhcmstYmc7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHRyYW5zaXRpb246ICRoZWFkZXItdHJhbnNpdGlvbjtcclxuICB9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1kZXRhaWxzIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB0cmFuc2l0aW9uOiAuNnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICBcclxuICA+ICoge1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIGEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICBcclxuICBzdmcge1xyXG4gICAgbWF4LXdpZHRoOiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgLnBhZ2UtbmFtZSB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICYgKyAudG9nZ2xlciB7XHJcbiAgICAgIG1pbi13aWR0aDogMTA2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBcclxuICAuc2VwYXJhdG9yIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMCA2cHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnZSxcclxuLnNpbmdsZSB7XHJcbiAgJi50aXRsZS1hbHdheXMtdmlzaWJsZSxcclxuICAmLnRpdGxlLWVuYWJsZWQsIHtcclxuICAgIGhlYWRlciB7XHJcbiAgICAgIC5sb2NhdGlvbi1kZXRhaWxzIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAuNjtcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLm5hdi1vcGVuIHtcclxuICAgIGhlYWRlciB7XHJcbiAgICAgIC5sb2NhdGlvbi1kZXRhaWxzIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgLmJhY2tkcm9wIHtcclxuICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkKDEpO1xyXG4gICAgLy8gTG9jb21vdGl2ZSBzY3JvbGwgcm9sbGJhY2tcclxuICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy96LWluZGV4OiAxO1xyXG4gICAgLy90b3A6IDA7XHJcbiAgICAvL2xlZnQ6IDA7XHJcbiAgICAvL3JpZ2h0OiAwO1xyXG4gICAgLy9ib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbjogJGhlYWRlci10cmFuc2l0aW9uLXNsb3c7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuOCk7XHJcbiAgICBcclxuICAgICNzbGFzaCB7XHJcbiAgICAgIHdpZHRoOiAxMzJweDtcclxuICAgICAgaGVpZ2h0OiAyODBweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgXHJcbiAgICAgIC5iYXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjVkZWcpO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWJnO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDI4MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkaGVhZGVyLXRyYW5zaXRpb24tc2xvdztcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogY3VydGFpbiAuNnMgbGluZWFyIGZvcndhcmRzO1xyXG4gICAgICAgIGFuaW1hdGlvbjogY3VydGFpbiAuNnMgbGluZWFyIGZvcndhcmRzO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmLnJlZnJlc2g6YWZ0ZXIge1xyXG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm5hdi1vcGVuIHtcclxuICAuYmFja2Ryb3Age1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICB9XHJcbiAgLmhlYWRlciB7XHJcbiAgICAjbmF2LXRvZ2dsZXIge1xyXG4gICAgICAub3BlbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgc2NhbGUoLjQpO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuY2xvc2Uge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5tZWdhbWVudSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIFxyXG4gICAgJi1vdmVybGF5IHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJF9tYWdpY19zaXplOiAyMjBweDtcclxuXHJcbmZvb3RlciB7XHJcbiAgei1pbmRleCAgICAgICAgOiA2MDtcclxuICBwb3NpdGlvbiAgICAgICA6IHJlbGF0aXZlO1xyXG5cclxuICAmLCAjZm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAkZGFyay1iZztcclxuICB9XHJcblxyXG4gICNmb290ZXIge1xyXG4gICAgei1pbmRleCA6IDUwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbiA6IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAmLCBhLCBsaSB7XHJcbiAgICAgIGNvbG9yICAgICAgICAgIDogJHdoaXRlO1xyXG4gICAgICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZSAgICAgIDogMC43NXJlbTtcclxuICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0ICAgIDogNDAwO1xyXG4gICAgICBsaW5lLWhlaWdodCAgICA6IG5vcm1hbDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm0gOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvbGljeSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdCA6IDJyZW07XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheSAgICAgIDogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdCA6IDJyZW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIG9yZGVyICAgICAgICAgOiAyO1xyXG4gICAgICAgIHdpZHRoICAgICAgICAgOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0ICA6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcCAgICA6IDEuNXJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduICAgIDogY2VudGVyO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdCAgOiAycmVtO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodCA6IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNvY2lhbCB7XHJcbiAgICAgIHRleHQtYWxpZ24gOiBjZW50ZXI7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheSAgICAgIDogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdCA6IDJyZW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXkgOiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgb3JkZXIgICAgICAgICA6IDE7XHJcbiAgICAgICAgd2lkdGggICAgICAgICA6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tdG9wICAgIDogMS41cmVtO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdCAgOiAycmVtO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodCA6IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvcHlyaWdodCB7XHJcbiAgICAgIHRleHQtYWxpZ24gICAgOiByaWdodDtcclxuICAgICAgcGFkZGluZy1yaWdodCA6IDJyZW07XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5IDogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmcgOiAwIDFyZW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIG9yZGVyICAgICAgICAgOiAzO1xyXG4gICAgICAgIHdpZHRoICAgICAgICAgOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcCAgICA6IDEuNXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tIDogMXJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduICAgIDogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAud3BtbC1scy1zdGF0aWNzLWZvb3RlciB7XHJcbiAgICBkaXNwbGF5IDogbm9uZTsgLy8gVE9ETyBtYW5hZ2UgdGhpcyBwcm9wZXJseS4gRm9yIHRlc3QgcHVycG9zZXMgSSBuZWVkIHRvIHJlbW92ZSBXUE1MIGxhbmd1YWdlIHN3aXRjaGVyXHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIGhlaWdodDogJF9tYWdpY19zaXplO1xyXG5cclxuICAgICNmb290ZXIge1xyXG4gICAgICBoZWlnaHQ6ICRfbWFnaWNfc2l6ZSAhaW1wb3J0YW50O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZm9vdGVyLWluc2V0IHtcclxuICBmb290ZXIge1xyXG4gICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XHJcbiAgICBtYXJnaW4tdG9wIDogLTkycHg7XHJcbiAgICBoZWlnaHQ6IDkycHg7XHJcbiAgICB6LWluZGV4OiAyMDA7XHJcblxyXG5cclxuICAgICYsICNmb290ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIGZvb3RlciB7XHJcbiAgICAgIGhlaWdodDogJF9tYWdpY19zaXplO1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMSokX21hZ2ljX3NpemU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5jb21wb25lbnQtYmFja2dyb3VuZCB7XHJcbiAgaW1nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIH1cclxufSIsIi5jb21wb25lbnQtaW1hZ2Uge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGltZyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn0iLCJodG1sIGJvZHkgLm1lanMtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgXHJcbiAgLm1lanMtbGF5ZXJzLFxyXG4gIC5tZWpzLWNvbnRyb2xzIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgdmlkZW8ge1xyXG4gICAgLyogTWFrZSB2aWRlbyB0byBhdCBsZWFzdCAxMDAlIHdpZGUgYW5kIHRhbGwgKi9cclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgLyogVG8gcHJldmVudCB0b3AvYm90dG9tIGJsYWNrIHN0cmlwZXMgZHVlIHRvIHJlc3BvbnNpdmUgYWRqdXN0aW5nICovXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLyogU2V0dGluZyB3aWR0aCAmIGhlaWdodCB0byBhdXRvIHByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gc3RyZXRjaGluZyBvciBzcXVpc2hpbmcgdGhlIHZpZGVvICovXHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAvKiBtb2JpbGUgbXVzdCBzZXQgaGVpZ2h0IDEwMCUgKi9cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIFxyXG5cclxuICAgIC8qIENlbnRlciB0aGUgdmlkZW8gKi9cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xyXG4gICAgICBtYXgtd2lkdGg6IHVuc2V0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gZ2xvYmFsLWN0YSgpIHtcclxuICBoZWlnaHQ6IHNldC1yZW0oNDBweCk7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiBzZXQtcmVtKDM3MHB4KTtcclxuICBwYWRkaW5nOiBzZXQtcmVtKDEwcHgpIHNldC1yZW0oMjBweCk7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDE5cHgpO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgdHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAqIHtcclxuICAgIHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcclxuICB9XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IC4xcztcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBsaW5rLW5vLWRlY29yYXRpb247XHJcbn1cclxuXHJcbkBtaXhpbiBtYWluLWN0YSB7XHJcbiAgQGluY2x1ZGUgZ2xvYmFsLWN0YTtcclxuICBAaW5jbHVkZSBmaXhlZC1saW5rLWNvbG9yKCR3aGl0ZSk7XHJcbiAgQGluY2x1ZGUgZml4ZWQtbGluay1zdHJva2UoJHdoaXRlKTtcclxuICBib3JkZXItY29sb3I6ICR3aGl0ZTtcclxuICAmOmJlZm9yZSxcclxuICAmOmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICB9XHJcbiAgJjpob3ZlciB7XHJcbiAgICBAaW5jbHVkZSBmaXhlZC1saW5rLWNvbG9yKCR3aGl0ZSk7XHJcbiAgICBAaW5jbHVkZSBmaXhlZC1saW5rLXN0cm9rZSgkd2hpdGUpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGFsdC1jdGEge1xyXG4gIEBpbmNsdWRlIGdsb2JhbC1jdGE7XHJcbiAgQGluY2x1ZGUgZml4ZWQtbGluay1jb2xvcigkYmxhY2spO1xyXG4gIEBpbmNsdWRlIGZpeGVkLWxpbmstc3Ryb2tlKCRibGFjayk7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgfVxyXG4gIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICY6aG92ZXIge1xyXG4gICAgQGluY2x1ZGUgZml4ZWQtbGluay1jb2xvcigkYmxhY2spO1xyXG4gICAgQGluY2x1ZGUgZml4ZWQtbGluay1zdHJva2UoJGJsYWNrKTtcclxuICB9XHJcbn1cclxuXHJcbi5jdGEsXHJcbmEuY3RhIHtcclxuICBAaW5jbHVkZSBnbG9iYWwtY3RhO1xyXG59XHJcblxyXG4uY3RhLW1haW4sXHJcbmEuY3RhLW1haW4ge1xyXG4gIEBpbmNsdWRlIG1haW4tY3RhO1xyXG59XHJcblxyXG4uY3RhLWFsdCxcclxuYS5jdGEtYWx0IHtcclxuICBAaW5jbHVkZSBhbHQtY3RhO1xyXG59XHJcbiIsIiNjdntcclxuICBkaXNwbGF5Om5vbmU7XHJcbn1cclxuLndwY2Y3e1xyXG4gIGxhYmVse1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxufSBcclxuQG1peGluIGN1c3RvbS1jaGVja2JveCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LXNpemU6IHNldC1yZW0oMTJweCk7XHJcbiAgbGluZS1oZWlnaHQ6IHNldC1yZW0oMjhweCk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAud3BjZjctbGlzdC1pdGVtLFxyXG4gIGxhYmVsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG4gIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCxcclxuICAud3BjZjctZm9ybS1jb250cm9sLFxyXG4gIC53cGNmNy1saXN0LWl0ZW0sIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgJjpjaGVja2Vke1xyXG4gICAgICAmICsgLndwY2Y3LWxpc3QtaXRlbS1sYWJlbCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50IDogJ+Kckyc7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBjb2xvcjogJHRleHQ7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgdG9wOiA0cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYgKyBzcGFuOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC53cGNmNy1saXN0LWl0ZW0tbGFiZWwge1xyXG4gICAgZm9udC1zaXplOiBzZXQtcmVtKDE4cHgpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIEBpbmNsdWRlIHN0eWxpemVkLWxpbmtzLWFsdDtcclxuICAgIGEge1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0b3A6IDRweDtcclxuICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLndwY2Y3LWZvcm0ge1xyXG4gIGJyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIGxhYmVsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZvcm0tdHlwb2dyYWZ5IHtcclxuICBjb2xvciAgICAgICAgICA6ICR3aGl0ZTtcclxuICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgZm9udC1zaXplICAgICAgOiBzZXQtcmVtKDI0cHgpO1xyXG4gIGZvbnQtc3R5bGUgICAgIDogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0ICAgIDogMzAwO1xyXG4gIGxpbmUtaGVpZ2h0ICAgIDogMTQwJTsgLyogMi4xcmVtICovXHJcbiAgbGV0dGVyLXNwYWNpbmcgOiAwO1xyXG59XHJcblxyXG5AbWl4aW4gbWFpbi1mb3JtIHtcclxuICBAaW5jbHVkZSBmb3JtLXR5cG9ncmFmeTtcclxuICBpbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pLCBzZWxlY3QsIHRleHRhcmVhIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBAaW5jbHVkZSBmb3JtLXR5cG9ncmFmeTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4zKTtcclxuICAgIEBpbmNsdWRlIHRleHQ7XHJcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvcm0tdHlwb2dyYWZ5O1xyXG4gICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNCk7XHJcbiAgICB9XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuICAgICYud3BjZjctbm90LXZhbGlkIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmVkO1xyXG4gICAgfVxyXG4gIH1cclxuICBpbnB1dDpub3QoW3R5cGU9XCJmaWxlXCJdKSB7XHJcbiAgICBtYXgtd2lkdGg6IDEycmVtO1xyXG4gIH1cclxuICBpbnB1dFt0eXBlPVwiZmlsZVwiXXtcclxuICAgICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgd2lkdGg6MDtcclxuICAgIH1cclxuICB9XHJcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICBAaW5jbHVkZSBtYWluLWN0YTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxuICBsYWJlbDpob3ZlciB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG4gIC5mb3JtLWNoZWNrIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICB9XHJcbiAgLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcclxuICAgIG1hcmdpbjogMTBweCAwIDMwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC53cGNmNy1ub3QtdmFsaWQtdGlwIHtcclxuICAgIGRpc3BsYXk6bm9uZTtcclxuICB9XHJcbiAgLndwY2Y3LWFjY2VwdGFuY2Uge1xyXG4gICAgQGluY2x1ZGUgY3VzdG9tLWNoZWNrYm94O1xyXG4gIH1cclxuICAuY3RhIHtcclxuICAgIG1hcmdpbi10b3A6IDY1cHg7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAud3BjZjctc3Bpbm5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ud3BjZjctZm9ybSB7XHJcbiAgQGluY2x1ZGUgbWFpbi1mb3JtO1xyXG59XHJcblxyXG5AbWl4aW4gZ2VuZXJpYy1mb3JtLXN0eWxlcyB7XHJcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiA1JSAhaW1wb3J0YW50O1xyXG4gIG1heC13aWR0aDogODByZW07XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICB3aWR0aDogOTB2dyAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG59IiwiLmJsb2NrLXByb2plY3RzLWNhcm91c2VsIHtcclxuICB3aWR0aDogMTAwdnc7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICAkaGFsZi1zbGlkZS1kdXJhdGlvbjogLjVzO1xyXG4gIFxyXG4gID4gZGl2IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjAwcHg7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgcGFkZGluZy10b3A6IDcwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5zbGlkZXItcG9pbnRzIHtcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICAgIFxyXG4gICAgc3BhbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLnRvdGFsIHtcclxuICAgICAgb3BhY2l0eTogLjQ7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5iYXIge1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubmF2LWFycm93IHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBtYXJnaW46IDQwcHggMDtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgJi5zbGljay1kaXNhYmxlZCB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogLjQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKHhsLCAyeGwpIHtcclxuICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMTV2aDtcclxuICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICBcclxuICAgICAgLm5hdi1hcnJvdyB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLmJhciB7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgYm90dG9tOiAyMnZoO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBib3R0b206IHVuc2V0O1xyXG4gICAgICB0b3A6IDE3dmg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICZfX3NsaWRlciB7XHJcbiAgICB3aWR0aDogMTIwMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgXHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICB0b3A6IGF1dG87XHJcbiAgICAgIGJvdHRvbTogLTEyMHB4O1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgLjA0KTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlIDAgMCA1MCU7XHJcbiAgICAgIHRyYW5zaXRpb246ICRoYWxmLXNsaWRlLWR1cmF0aW9uIGN1YmljLWJlemllciguNzYsIC0wLjEsIC41NiwgMS4wNyk7XHJcbiAgICAgIFxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJGhhbGYtc2xpZGUtZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43NiwgLTAuMSwgLjU2LCAxLjA3KTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xyXG4gICAgICAgIFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmLnNsaWNrLWRpc2FibGVkIHtcclxuICAgICAgICBcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMDQpO1xyXG4gICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEwMCUgLSA1MHB4KSk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAwIDAgNTAlO1xyXG4gICAgICBcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC0xMzVkZWcpO1xyXG4gICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xyXG4gICAgICByaWdodDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygxMDAlIC0gNTBweCkpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwIDUwJSA1MCUgMDtcclxuICAgICAgXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmxhY2s7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGJsYWNrO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgICAgYm90dG9tOiAtOTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgd2lkdGg6IDU0MHB4O1xyXG4gICAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICAgIGJvdHRvbTogLTQwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgJl9fc2xpZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgXHJcbiAgICAudGV4dCB7XHJcbiAgICAgIHRyYW5zaXRpb246IDBzICFpbXBvcnRhbnQ7XHJcbiAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjUlLCAtNTAlKTtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIHRyYW5zaXRpb246ICRoYWxmLXNsaWRlLWR1cmF0aW9uIGN1YmljLWJlemllciguNzYsIC0wLjEsIC41NiwgMS4wNyk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlOyAvKiA1cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcclxuICAgICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgICB3aWR0aDogNTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNzVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuY2xhaW0ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwJSwgLTMwJSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJGhhbGYtc2xpZGUtZHVyYXRpb24gY3ViaWMtYmV6aWVyKC43NiwgLTAuMSwgLjU2LCAxLjA3KTtcclxuICAgICAgICBcclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7IC8qIDIuN3JlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDc1cmVtO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcmVtIDAuMzEyNXJlbTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwdnc7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC50aHVtYiB7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgIGJvcmRlcjogMjBweCBzb2xpZCB3aGl0ZTtcclxuICAgICAgdHJhbnNpdGlvbjogMHMgIWltcG9ydGFudDtcclxuICAgICAgXHJcbiAgICAgIC5pbWctY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIFxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY3Vyc29yOiB1cmwoJy93cC1jb250ZW50L3RoZW1lcy92ZWdhbnMvaW1hZ2VzL3N2Zy9jdXJzb3Iuc3ZnJyksIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC5pbWctaGVpZ2h0LWNvbnN0cmFpbnQge1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246ICRoYWxmLXNsaWRlLWR1cmF0aW9uIGN1YmljLWJlemllciguNzYsIC0wLjEsIC41NiwgMS4wNyk7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICZfX3NsaWRlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBcclxuICAgID4gYSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC50ZXh0IHtcclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgICB0b3A6IDMwJTtcclxuICAgICAgICAgIGxlZnQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgdG9wOiAyMCU7XHJcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTAwJTsgLyogMi41cmVtICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MHZ3O1xyXG4gICAgICAgICAgICB3aWR0aDogNzB2dztcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNDM3NXJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA3NSU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICAgIHRvcDogNzAlO1xyXG4gICAgICAgICAgcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgdG9wOiAxMTAlO1xyXG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlOyAvKiAyLjAyNXJlbSAqL1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNTYyNXJlbTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MHZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAudGh1bWIge1xyXG4gICAgICB3aWR0aDogODAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDc3MHB4O1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAuaW1nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAmLFxyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IHRvcCBsZWZ0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuc2xpY2sge1xyXG4gICAgJi1zbGlkZSB7XHJcbiAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICAgICAgei1pbmRleDogMyAhaW1wb3J0YW50O1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzICFpbXBvcnRhbnQ7XHJcbiAgICAgIFxyXG4gICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgei1pbmRleDogNSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgICYudHJhbnNpdGlvbi1mcm9tIHtcclxuICAgICAgICB6LWluZGV4OiA0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuc2xpY2stc2xpZGVyIHtcclxuICAgICYuZnJvbS10b3AsXHJcbiAgICAmLmZyb20tYm90dG9tIHtcclxuICAgICAgLnNsaWNrIHtcclxuICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICY6bm90KC5zbGljay1hY3RpdmUpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpub3QoLnNsaWNrLWFjdGl2ZSkgLnRleHQge1xyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuc2xpY2stYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmc7XHJcbiAgICAgICAgLnRleHQsXHJcbiAgICAgICAgLnRodW1iIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50aHVtYiB7XHJcbiAgICAgICAgICAuaW1nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIC5pbWctaGVpZ2h0LWNvbnN0cmFpbnQge1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgJi50cmFuc2l0aW9uLWZpcnN0LWhhbGYge1xyXG4gICAgICAgIC5zbGljayB7XHJcbiAgICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmUge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgIC50ZXh0IHtcclxuICAgICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmOm5vdCgudHJhbnNpdGlvbi1maXJzdC1oYWxmKSB7XHJcbiAgICAgICAgLnNsaWNrIHtcclxuICAgICAgICAgICYtc2xpZGUge1xyXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJnO1xyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIC50ZXh0LFxyXG4gICAgICAgICAgICAgIC50aHVtYiB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAudGh1bWIge1xyXG4gICAgICAgICAgICAgICAgLmltZy1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAuaW1nLWhlaWdodC1jb25zdHJhaW50IHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5mcm9tLWJvdHRvbSB7XHJcbiAgICAgIC5zbGljayB7XHJcbiAgICAgICAgJi1zbGlkZSB7XHJcbiAgICAgICAgICAmOm5vdCguc2xpY2stYWN0aXZlKSAudGV4dCB7XHJcbiAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgLmNsYWltIHtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTUwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudGh1bWIge1xyXG4gICAgICAgICAgICAuaW1nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgLmltZy1oZWlnaHQtY29uc3RyYWludCB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICYudHJhbnNpdGlvbi1maXJzdC1oYWxmIHtcclxuICAgICAgICAuc2xpY2sge1xyXG4gICAgICAgICAgJi1zbGlkZSB7XHJcbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcclxuICAgICAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxNTBweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDE1MHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIC5zbGljayB7XHJcbiAgICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICAgJjpub3QoLnNsaWNrLWFjdGl2ZSkgLnRleHQge1xyXG4gICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYudHJhbnNpdGlvbi1maXJzdC1oYWxmIHtcclxuICAgICAgICAgIC5zbGljayB7XHJcbiAgICAgICAgICAgICYtc2xpZGUge1xyXG4gICAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIC50ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MHB4KTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgLmNsYWltIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MHB4KTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLmZyb20tdG9wIHtcclxuICAgICAgLnNsaWNrIHtcclxuICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICY6bm90KC5zbGljay1hY3RpdmUpIC50ZXh0IHtcclxuICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxNTBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudGh1bWIge1xyXG4gICAgICAgICAgICAuaW1nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAuaW1nLWhlaWdodC1jb25zdHJhaW50IHtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmLnRyYW5zaXRpb24tZmlyc3QtaGFsZiB7XHJcbiAgICAgICAgLnNsaWNrIHtcclxuICAgICAgICAgICYtc2xpZGUge1xyXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLmNsYWltIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MHB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIC5zbGljayB7XHJcbiAgICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICAgJjpub3QoLnNsaWNrLWFjdGl2ZSkgLnRleHQge1xyXG4gICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MHB4KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgLmNsYWltIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDUwcHgpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmLnRyYW5zaXRpb24tZmlyc3QtaGFsZiB7XHJcbiAgICAgICAgICAuc2xpY2sge1xyXG4gICAgICAgICAgICAmLXNsaWRlIHtcclxuICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAuY2xhaW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuY2Fyb3VzZWwtY29udGFpbmVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2Vlbih4bCwgMiB4bCkge1xyXG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICZbZGF0YS1zdGFuZGFsb25lPVwiMVwiXSB7XHJcbiAgICAuc2xpZGVyLXBvaW50cyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiBtaW4oMTIwcHgsIDEwdmgpO1xyXG4gICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgIFxyXG4gICAgICAubmF2LWFycm93IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuICAgICAgICBcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKC05MGRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuYmFyIHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgYm90dG9tOiAyMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJodG1sIGJvZHkgLmJsb2NrLWZ1bGx3aWR0aC10aXRsZS1jdGEge1xyXG4gIHotaW5kZXg6IDUwO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmc7XHJcbiAgXHJcbiAgaDQge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBmb250LXNpemU6IDVyZW07XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7IC8qIDZyZW0gKi9cclxuICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgXHJcbiAgICBzdHJvbmcsIHNwYW4ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogNXJlbTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTIwJTsgLyogNnJlbSAqL1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNXJlbSk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7IC8qIDEuMDVyZW0gKi9cclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgaDQge1xyXG4gICAgICAmLCAmIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgaDQge1xyXG4gICAgICAmLCAmIHNwYW4sIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbn1cclxuIiwiaHRtbCBib2R5IC5ibG9jay0yLWNvbC10aXRsZS1jdGEge1xyXG4gIHBhZGRpbmc6IDEwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWluLWhlaWdodDogOTB2aDtcclxuXHJcbiAgLmNvbnRlbnQtY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMTYwcHg7XHJcbiAgfVxyXG4gIGg0IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBzcGFuIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgc3Ryb25nIHtcclxuICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgfVxyXG4gIH1cclxuICBhIHtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgcGFkZGluZzogODBweCAxMCUgMjcwcHg7XHJcbiAgICBtaW4taGVpZ2h0OiAwO1xyXG5cclxuICAgIC5pbm5lci1jb2wge1xyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSg0MHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgcGFkZGluZzogMTIwcHggMjBweCAyNzBweDtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcGFkZGluZzogNTBweCAyMHB4IDEwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuaHRtbCBib2R5LmZvb3Rlci1pbnNldCB7XHJcbiAgLmJsb2NrLTItY29sLXRpdGxlLWN0YSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgcGFkZGluZzogNTBweCAyMHB4IG1pbigzMHZoLDMwMHB4KTtcclxuICAgIH1cclxuICB9XHJcbn0iLCJodG1sIGJvZHkgLmJsb2NrLTItcXVvdGVzLWNhcm91c2VsIHtcclxuICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgXHJcbiAgLy8gdGhlc2UgbmV4dCBicmVha3BvaW50cyBzZXQgdG9nZ2xlIHZlcnRpY2FsIChXaGF0IHZlZ2FuL3Mgc2F5KSBhbmQgaG9yaXpvbnRhbCB0ZXh0IChBYm91dCB1cylcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAjdmVydGljYWwtc2hpZnRpbmctdGV4dCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICN0ZXh0LXN0cmlwZS1wb3NpdGlvbnMge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgI3ZlcnRpY2FsLXNoaWZ0aW5nLXRleHQge1xyXG4gICAgICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IHNldC1yZW0oMzBweCkgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI3RleHQtc3RyaXBlLXBvc2l0aW9ucyB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICN2ZXJ0aWNhbC1zaGlmdGluZy10ZXh0IHtcclxuICAgIEBpbmNsdWRlIHZlcnRpY2FsLXNoaWZ0aW5nLXRleHQoJHdoaXRlKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDV2dztcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgI3RleHQtc3RyaXBlLXBvc2l0aW9ucyB7XHJcbiAgICBAaW5jbHVkZSB0ZXh0LXN0cmlwZTtcclxuICAgIG92ZXJmbG93OiB1bnNldDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5zbGlkZXItY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogOTYwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAwIDA7XHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxNTAwcHgpIHtcclxuICAgICAgbWF4LXdpZHRoOiA3NjhweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICB3aWR0aDogOTB2dztcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5zbGlkZSB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgbWluLXdpZHRoOiA2MHZ3O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgdG9wOiA2MCU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBcclxuICAgIC5ndWlsbGVtZXQge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgZ2FwOiAxLjI1cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1heC13aWR0aDogNDUlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7IC8qIDIuN3JlbSAqL1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NXJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgyMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAxMHJlbTtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuICAgICAgICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMi43cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNzVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgI3RleHQtc3RyaXBlLXBvc2l0aW9ucyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5jb250IC5yb3cge1xyXG4gICAgICBwYWRkaW5nOiA1MHB4IDAgMTAwcHggMDtcclxuICAgICAgI3ZlcnRpY2FsLXNoaWZ0aW5nLXRleHQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLl9saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaWdodGdyZXk7XHJcbiAgICAqIHtcclxuICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICBzdmcgcGF0aCB7XHJcbiAgICAgICAgc3Ryb2tlOiAkYmxhY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3VpbGxlbWV0IHtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIHN2ZyBwYXRoIHtcclxuICAgICAgICAgIGZpbGw6IGxpZ2h0Z3JleTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyLWNvbnRhaW5lciAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcclxuICAgICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJsb2NrLXBhZ2UtaGVybyB7XHJcbiAgei1pbmRleDogMjA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmc7XHJcbiAgQGV4dGVuZCAlZnVsbHNjcmVlbjtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgXHJcbiAgLmNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgZmlyc3QtbGV0dGVyLWJpZ2dlcjtcclxuICAgIG1heC13aWR0aDogNjYwcHg7XHJcbiAgICBtYXJnaW46IC03cmVtIGF1dG8gMCBhdXRvO1xyXG4gICAgXHJcbiAgICBwIHtcclxuICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgbWFyZ2luOiAtMnJlbSA3dncgMCA3dnc7XHJcbiAgICAgIFxyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2NjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMCAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuZm9ybSB7XHJcbiAgICBAaW5jbHVkZSBnZW5lcmljLWZvcm0tc3R5bGVzO1xyXG4gICAgbWF4LXdpZHRoOiA2NjBweDtcclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogMjAwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgbWFyZ2luOiA0cmVtIDd2dyAwO1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIG1hcmdpbjogNHJlbSAyMHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC50aXRsZS1zdWJ0aXRsZS13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDAgMjAwcHg7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxuICBcclxuICA+IGRpdiB7XHJcbiAgICBAaW5jbHVkZSBtYWluLXBhZ2UtdGl0bGUtd3JhcHBlcjtcclxuICAgIFxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgQGluY2x1ZGUgdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1haW4tcGFnZS10aXRsZS10ZXh0LWgxO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNXZ3O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDd2dztcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogbWF4KDEydncsIDgwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZ2dztcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBoMntkaXJlY3Rpb246IHJ0bDt9XHJcbiAgICBcclxuICAgIC50aXRsZSArIC5zdWJ0aXRsZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xMHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDN4bCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xMXZ3O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00NSUpO1xyXG4gICAgICB3aWR0aDogOTB2dztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgICBcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgbWFyZ2luOiAtMXJlbSBhdXRvIDAgN3Z3O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdGxle1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiA2NjBweDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgICAgICBAaW5jbHVkZSB0aXRsZXtcclxuICAgICAgICAgIG1heC13aWR0aDogNDYwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICYsIHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigyeGwpIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtYWluLXBhZ2UtdGl0bGUtdGV4dC1oMjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pc28tY2VydGlmaWNhdGVzIHtcclxuICAgIG1heC13aWR0aDogNjYwcHg7XHJcbiAgICBtYXJnaW46IDFyZW0gYXV0byAwO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luICA6IDAgMCAwIDNyZW07XHJcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTIwJTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uIDogY29sdW1uO1xyXG4gICAgICB3aWR0aCAgICAgICAgICA6IDEwMCU7XHJcbiAgICAgIHRleHQtYWxpZ24gICAgIDogY2VudGVyO1xyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW4tbGVmdCAgOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodCA6IDA7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDFyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBiciB7XHJcbiAgICAgICAgICBkaXNwbGF5IDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICAgIH1cclxuICAgIC50aXRsZS1zdWJ0aXRsZS13cmFwcGVyIHtcclxuICAgICAgcGFkZGluZzogMTMwcHggMCAwO1xyXG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5ibG9jay1idWxsZXRwb2ludHMtZm9sbG93LXRocm91Z2gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICZfX2JnIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogLTEwMHZoO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xyXG4gIH1cclxuICAmX19pbnRyby10ZXh0IHtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcbiAgICBcclxuICAgIHAge1xyXG4gICAgICBtYXgtd2lkdGg6IDU1MHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuZG90IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgIFxyXG4gICAgICAmLmhpZGRlbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLmZ1bGx5LXZpc2libGUge1xyXG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDUycHg7XHJcbiAgICAgIC5kb3Qge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgfVxyXG4gICAgICBwIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIHBhZGRpbmc6IDEzMHB4IDIwcHggMDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLm1haW4tcmFpbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwdmg7XHJcbiAgfVxyXG4gIFxyXG4gIC5idWxsZXRwb2ludCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvcGFjaXR5OiAuMTtcclxuICAgIFxyXG4gICAgJiA+IGRpdiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDYwdmg7XHJcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDA7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBoMiB7XHJcbiAgICAgIHdpZHRoOiA1MHZ3O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xyXG4gICAgICBcclxuICAgICAgJiwgcCB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlOyAvKiA2cmVtICovXHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDJ4bCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMHZ3O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBkaXYuc2xpZGUtZGVzYyB7XHJcbiAgICAgIHdpZHRoOiA1MHZ3O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLmN0YSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogLTEwOHB4O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuYnVsbGV0IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwLjJyZW0gMCAuMnJlbSAtLjhyZW07XHJcbiAgICAgICAgcGFkZGluZzogMCA0cHggMCAwO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgcGFkZGluZzogMCA2cHggMCAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAvL21heC13aWR0aDogbWluLWNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfaW5uZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgPnNwYW4ge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcclxuICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgLy9tYXgtd2lkdGg6IG1pbi1jb250ZW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkgIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIvXCI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZzogMCA0cHggMCAwO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNzVyZW07XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigyeGwpIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMCA2cHggMCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZfcGFydCB7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NXJlbTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oMnhsKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjcycmVtIDAuMjVyZW0gMDtcclxuICAgICAgICAgIG1hcmdpbjogMC4ycmVtIDAgLjJyZW0gLS43cmVtO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5kb3Qge1xyXG4gICAgICAmOmJlZm9yZSxcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gOHB4KTtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuMik7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBcclxuICAgICAgLmRvdCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgLjEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmOmZpcnN0LWNoaWxkIC5kb3Q6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogbm9uZTtcclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZCAuZG90OmFmdGVyIHtcclxuICAgICAgY29udGVudDogbm9uZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIGgyLCBkaXYuc2xpZGUtZGVzYyB7XHJcbiAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICAgIGgyIHAge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5kb3Qge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiA2MHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBcclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGhlaWdodDogY2FsYygzMHZoIC0gOHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgcGFkZGluZzogMCAyMHB4IDAgNTRweDtcclxuICAgICAgXHJcbiAgICAgIGgyLCBkaXYuc2xpZGUtZGVzYyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5kb3Qge1xyXG4gICAgICAgIGxlZnQ6IDI2cHg7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMzV2aCAtIDhweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5mbG9hdGluZy1kb3Qge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MHZoO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgXHJcbiAgICAuaW5uZXItY29udCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgXHJcbiAgICAgIC5iYXItYmVmb3JlLFxyXG4gICAgICAuYmFyLWFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgLjEpO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuYmFyLWJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDEpO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5iYXItYWZ0ZXIge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLmhpZGRlbiB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgbGVmdDogNjBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIGxlZnQ6IDI2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC53aGl0ZS1kb3Qge1xyXG4gICAgc3ZnIGNpcmNsZSB7XHJcbiAgICAgIGZpbGw6ICR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgJi5fZGFyayB7XHJcbiAgICAuYnVsbGV0cG9pbnQge1xyXG4gICAgICBoMiB7XHJcbiAgICAgICAgJiwgcCB7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAmLmFuaW1hdGlvbi1kb25lIHtcclxuICAgIC5idWxsZXRwb2ludCB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIFxyXG4gICAgICAuZG90IHtcclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCJodG1sIGJvZHkgLmJsb2NrLWhlcm8tY2xhaW0ge1xyXG4gIFxyXG4gICNoZXJvLWNsYWltIHtcclxuICAgIFxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIHotaW5kZXg6IDIwO1xyXG4gICAgXHJcbiAgICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcclxuICAgIFxyXG4gICAgJi5oaWRkZW4ge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBAZXh0ZW5kICVmbGV4LWNlbnRlcmluZztcclxuICAgIFxyXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xyXG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcclxuICAgIFxyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGZvbnQtc2l6ZTogNi4yNXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiA4Ljc1cmVtOyAvKiAxNDAlICovXHJcbiAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgXHJcbiAgICBlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWYgIWltcG9ydGFudDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICYsIGVtIHtcclxuICAgICAgICBmb250LXNpemU6IDQuNXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTQwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcclxuICAgICAgJiwgZW0ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgaDEge1xyXG4gICAgICAgIG1heC13aWR0aDogNDIwcHg7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGJyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xyXG4gICAgICBcclxuICAgICAgJiwgZW0ge1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgI2hlcm8tYnJpZ2h0LXBhbmVsIHtcclxuICAgIEBleHRlbmQgJWZ1bGxzY3JlZW47XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgfVxyXG4gIFxyXG4gICNob21lLWJhY2tncm91bmQge1xyXG4gICAgQGV4dGVuZCAlZnVsbHNjcmVlbjtcclxuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XHJcbiAgICBcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHotaW5kZXg6IDE1O1xyXG4gICAgXHJcbiAgICAmLmhpZGRlbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm8tY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICBcclxuICAgIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxufVxyXG4iLCJodG1sIGJvZHkubWFuaWZlc3RvIC5ibG9jay1ob3Jpem9udGFsLWFuaW1hdGVkLWNvbnRhaW5lciAjdmVydGljYWwtc2hpZnRpbmctdGV4dCB7XHJcbiAgei1pbmRleCAgICAgOiAxMDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1dnc7XHJcbn1cclxuXHJcbi5kZXNrdG9wLW9ubHkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ubW9iaWxlLW9ubHkge1xyXG4gIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuaHRtbCBib2R5IC5ibG9jay1ob3Jpem9udGFsLWFuaW1hdGVkLWNvbnRhaW5lciB7XHJcblxyXG4gIC5ob3Jpem9udGFsLWNvbnRhaW5lci10ZXh0IHtcclxuICAgIHdpZHRoIDogNTB2dztcclxuICAgIGhlaWdodDogMTAwdmg7XHJcblxyXG4gICAgJi5kYXJrIHtcclxuICAgICAgY29sb3IgICAgICAgICAgIDogJHdoaXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcclxuICAgIH1cclxuXHJcbiAgICAmLmxpZ2h0IHtcclxuICAgICAgY29sb3IgICAgICAgICAgIDogJGJsYWNrO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmc7XHJcbiAgICAgIGJvcmRlci1jb2xvciAgICA6ICRsaWdodC1iZztcclxuICAgICAgYm9yZGVyLXdpZHRoICAgIDogMCAxcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjaG9tZS1zaWRlLWZhZGluZy10ZXh0LnNlY3Rpb24tbWFpbi10ZXh0IC50ZXh0LXR5cGUtcG9zdCB7XHJcbiAgICBvcGFjaXR5ICAgOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBkaXJlY3Rpb24gOiBydGw7XHJcbiAgICBkaXNwbGF5ICAgOiBibG9jaztcclxuXHJcbiAgfVxyXG5cclxuICAjaG9tZS1zaWRlLWZhZGluZy10ZXh0IHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAjdmVydGljYWwtc2hpZnRpbmctdGV4dCB7XHJcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1zaGlmdGluZy10ZXh0KCRibGFjaywgNXZ3KTtcclxuICB9XHJcblxyXG5cclxuICAuc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAudGV4dCB7XHJcbiAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7XHJcbiAgICAgICAgcG9zaXRpb24gICAgICA6IGFic29sdXRlO1xyXG4gICAgICAgIHRvcCAgICAgICAgICAgOiA1MCU7XHJcbiAgICAgICAgbGVmdCAgICAgICAgICA6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZSgtMjUlLCAtNTAlKTtcclxuICAgICAgICBjb2xvciAgICAgICAgIDogJHdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ24gICAgOiByaWdodDtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHkgICA6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgZm9udC1zaXplICAgICA6IDVyZW07XHJcbiAgICAgICAgICBmb250LXdlaWdodCAgIDogNDAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQgICA6IDEwMCU7XHJcbiAgICAgICAgICAvKiA1cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5ICAgOiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgOiAxLjVyZW07XHJcbiAgICAgICAgICBmb250LXdlaWdodCAgIDogNDAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQgICA6IG5vcm1hbDtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgcG9zaXRpb24gOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3AgICAgICA6IDUwJTtcclxuICAgICAgICByaWdodCAgICA6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDAlLCAtMzAlKTtcclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgZGlzcGxheSAgICA6IGlubGluZTtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2xvciAgICAgIDogJGJsYWNrO1xyXG5cclxuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgOiAxLjVyZW07XHJcbiAgICAgICAgICBmb250LXN0eWxlICAgIDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQgICA6IDQwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgOiAxODAlO1xyXG4gICAgICAgICAgLyogMi43cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNzVyZW07XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nICAgIDogMHJlbSAwLjMxMjVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZCA6ICR3aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGh1bWIge1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICBib3JkZXIgICAgICAgICA6IDIwcHggc29saWQgd2hpdGU7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuaHRtbCBib2R5IHtcclxuICAmOm5vdCguZnVsbHktdmVydGljYWwpIHtcclxuICAgIC5ibG9jay1ob3Jpem9udGFsLWFuaW1hdGVkLWNvbnRhaW5lciB7XHJcblxyXG4gICAgICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG5cclxuICAgICAgZGlzcGxheSAgOiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAgei1pbmRleCAgOiA0MDtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmZ1bGx5LXZlcnRpY2FsIHtcclxuICAgIC5ibG9jay1ob3Jpem9udGFsLWFuaW1hdGVkLWNvbnRhaW5lciB7XHJcblxyXG4gICAgICAuaG9yaXpvbnRhbC1jb250YWluZXItdGV4dCB7XHJcbiAgICAgICAgJi5zcGFjZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZmFkaW5nLXRleHQge1xyXG4gICAgICAgICAgei1pbmRleCAgICAgICA6IDUwO1xyXG4gICAgICAgICAgd2lkdGggICAgICAgICA6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgIGhlaWdodCAgICAgICAgOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0ICAgIDogODB2aDtcclxuICAgICAgICAgIHBhZGRpbmctdG9wICAgOiBzZXQtcmVtKDQwcHgpO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHNldC1yZW0oNDBweCk7XHJcblxyXG4gICAgICAgICAgI2hvbWUtc2lkZS1mYWRpbmctdGV4dC5zZWN0aW9uLW1haW4tdGV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgIC50ZXh0LXR5cGUtcG9zdCB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcCAgIDogc2V0LXJlbSgxMDBweCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBzZXQtcmVtKDEwMHB4KTtcclxuXHJcbiAgICAgICAgICAgICNob21lLXNpZGUtZmFkaW5nLXRleHQuc2VjdGlvbi1tYWluLXRleHQge1xyXG4gICAgICAgICAgICAgIHdpZHRoICAgIDogY2FsYygxMDAlIC0gNDBweCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICAgIG1hcmdpbiAgIDogMCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICN2ZXJ0aWNhbC1zaGlmdGluZy10ZXh0IHtcclxuICAgICAgICB3aWR0aCAgICAgICAgIDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodCAgICAgICAgOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy10b3AgICA6IDhyZW07XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDdyZW07XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0ICA6IHVuc2V0O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodCAgOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b20gOiAtMXB4O1xyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBwb3NpdGlvbiAgICAgIDogcmVsYXRpdmU7XHJcbiAgICAgICAgICBmb250LXNpemUgICAgIDogMS44NzVyZW07XHJcbiAgICAgICAgICBsaW5lLWhlaWdodCAgIDogbm9ybWFsO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wICAgOiBzZXQtcmVtKDEwMHB4KTtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgI3NsaWRlci13cmFwcGVyIHtcclxuICAgICAgICB6LWluZGV4OiA1MDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3NsaWRlci13cmFwcGVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigyeGwpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDU1cHg7XHJcblxyXG4gICAgICAuc2xpZGVyLXBvaW50cyB7XHJcbiAgICAgICAgYm90dG9tICAgOiAtMjVweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYsXHJcbiAgICAgIC5ibG9jay1wcm9qZWN0cy1jYXJvdXNlbCxcclxuICAgICAgLmJsb2NrLXByb2plY3RzLWNhcm91c2VsPmRpdiB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2staG9yaXpvbnRhbC1hbmltYXRlZC1jb250YWluZXItMiB7XHJcbiAgI3ZlcnRpY2FsLXNoaWZ0aW5nLXRleHQge1xyXG4gICAgQGluY2x1ZGUgdmVydGljYWwtc2hpZnRpbmctdGV4dCgkYmxhY2ssIDApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNXZ3O1xyXG4gICAgfVxyXG4gIH1cclxuICAuaG9yaXpvbnRhbC1jb250YWluZXItdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5ob3Jpem9udGFsLWNvbnRhaW5lci10ZXh0Om5vdCguc3BhY2VyKSB7XHJcbiAgICBwYWRkaW5nOiAwIG1heCgoMTAwdncgLSAxNjAwcHgpIC8gMiwgMzBweCk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcbiAgICAuY29udGVudC13cmFwcGVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogNzgwcHg7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTV2dyk7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgQGluY2x1ZGUgbWFpbi1wYWdlLXRpdGxlLXRleHQtaDMoJGJsYWNrKTtcclxuICAgICAgQGluY2x1ZGUgdGl0bGUge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgfVxyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBtYXgtd2lkdGg6IDU1MHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7XHJcbiAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5odG1sIGJvZHkuZnVsbHktdmVydGljYWwgLmJsb2NrLWhvcml6b250YWwtYW5pbWF0ZWQtY29udGFpbmVyLTIge1xyXG4gICN2ZXJ0aWNhbC1zaGlmdGluZy10ZXh0IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxuICAgICAgJiArIGRpdiB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICAgICYgKyBkaXYge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAuaG9yaXpvbnRhbC1jb250YWluZXItdGV4dCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgNXZ3O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn0iLCJodG1sIGJvZHkgLmJsb2NrLWhvcml6b250YWwtYW5pbWF0ZWQtdGltZWxpbmUge1xyXG4gICN2ZXJ0aWNhbC1zaGlmdGluZy10ZXh0IC5maXJzdCB7XHJcbiAgICBib3R0b206IC0xMHJlbTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICBib3R0b206IDJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50aW1lbGluZSB7XHJcbiAgICBnYXA6IG1heCg5dncsIDUwcHgpO1xyXG4gICAgbWFyZ2luOiAwIG1heCgzMHZ3LCA3MHB4KSAwIG1heCgxMi41dncsIDcwcHgpO1xyXG4gICAgLnN0ZXAge1xyXG4gICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvIDFmcjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB3aWR0aDogNDMwcHg7XHJcbiAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDgwcHgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDk2cHgpO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgIC8vIHRyYW5zbGF0ZSBkb3duIHRvIGNvbXBlbnNhdGUgdGhlIGZvbnQgbG93ZXIgd2hpdGUgc3BhY2VcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcbiAgICAgIH1cclxuICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgLndoaXRlLWJveGVzIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAud2hpdGUtYm94IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogc2V0LXJlbSg0M3B4KTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5ldmVudHMge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICByb3ctZ2FwOiA0MHB4O1xyXG4gICAgICAgIC5ldmVudCB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICZfX3RpdGxlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDEycHgpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogc2V0LXJlbSgxNHB4KTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmX19zZXBhcmF0b3Ige1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDYwcHgpO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBzZXQtcmVtKDcycHgpO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmX19jb250ZW50IHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDIwcHgpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogc2V0LXJlbSgyNHB4KTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5zaGFkeS1kb3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgICAgICBzdmcgY2lyY2xlIHtcclxuICAgICAgICAgIGZpbGw6ICNiM2IzYjM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5kb3QtZml4ZWQge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIG1heCg5dncsIDUwcHgpKTtcclxuICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcztcclxuICAgICAgICB9XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAuZG90LWZpeGVkIHtcclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDUwJSArIG1heCgxMHZ3LCA3MHB4KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAuZG90LWZpeGVkIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRvdC10cmFjayB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHJpZ2h0OiBtaW4oLTMwdncsIC03MHB4KTtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIG1heCgxMHZ3LCA3MHB4KSArIG1heCgzMHZ3LCA3MHB4KSk7XHJcbiAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjApO1xyXG4gICAgfVxyXG4gICAgLy8uZG90LWFjdGl2ZS10cmFjayB7XHJcbiAgICAvLyAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy8gIHRvcDogNTAlO1xyXG4gICAgLy8gIGxlZnQ6IG1pbigtMTB2dywgLTcwcHgpO1xyXG4gICAgLy8gIHdpZHRoOiA1MHZ3O1xyXG4gICAgLy8gIGhlaWdodDogMXB4O1xyXG4gICAgLy8gIGJhY2tncm91bmQ6ICRibGFjaztcclxuICAgIC8vICByaWdodDogbWluKC0xMi41dncsIC03MHB4KTtcclxuICAgIC8vfVxyXG4gIH1cclxufVxyXG5cclxuaHRtbCBib2R5LmZ1bGx5LXZlcnRpY2FsIC5ibG9jay1ob3Jpem9udGFsLWFuaW1hdGVkLXRpbWVsaW5lIHtcclxuICAjdmVydGljYWwtc2hpZnRpbmctdGV4dCB7XHJcbiAgICAvL0BpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgcGFkZGluZy10b3A6IDRyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIC8vfVxyXG4gIH1cclxuICAuaG9yaXpvbnRhbC1jb250YWluZXItdGV4dCB7XHJcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgPiBkaXY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAuYmxvY2stZnVsbHdpZHRoLXNpbXBsZS1jb250ZW50IHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgICAgIC5zZWN0aW9uLW1haW4tdGV4dCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggODBweDtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAudGltZWxpbmUge1xyXG4gICAgLy9AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtYXJnaW46IDUwcHggYXV0bztcclxuICAgIHBhZGRpbmctbGVmdDogNzBweDtcclxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgIC8vfVxyXG4gICAgLmRvdC10cmFjayB7XHJcbiAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMzBweDtcclxuICAgIH1cclxuICAgIC5zdGVwIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAuZG90LWZpeGVkIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kb3QtZml4ZWQge1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAuc2hhZHktZG90IHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICB3aWR0aDogMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2U1ZTVlNTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAtNDBweDtcclxuICAgICAgICAgICAgdG9wOiA1NnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuZG90LWZpeGVkIHtcclxuICAgICAgICB0b3A6IDU2cHg7XHJcbiAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbGVmdDogLTQwcHg7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgIGxlZnQ6IC04cHg7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5zaGFkeS1kb3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGxlZnQ6IC00OHB4O1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MHB4KTtcclxuICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndoaXRlLWJveGVzIHtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ldmVudHMge1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgICAuZXZlbnQge1xyXG4gICAgICAgICAgICAmX19zZXBhcmF0b3Ige1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCJodG1sIGJvZHkgLmJsb2NrLW9mZmljZXMge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgPiBkaXYge1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gICN0ZXh0LXN0cmlwZSB7XHJcbiAgICBAaW5jbHVkZSB0ZXh0LXN0cmlwZTtcclxuICB9XHJcbiAgLmFkZHJlc3NlcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDQ4LjMxMjVyZW07XHJcbiAgICBoZWlnaHQ6IDI2LjU2MjVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcclxuICAgIHBhZGRpbmc6IDAgNXJlbTtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIGJvcmRlcjogMjBweCBzb2xpZCAkd2hpdGU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgd2lkdGg6IDUwdnc7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICB3aWR0aDogNjV2dztcclxuICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmFkZHJlc3Mge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAvL2hlaWdodDogMjEuMjVyZW07XHJcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBnYXA6IDEuMjVyZW07XHJcbiAgICAgIFxyXG4gICAgICBwLCBhe1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC40MCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgxMnB4KTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMS4zNXJlbSAqL1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVyZW07XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGEge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrLCAwLjQwKTtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuY2l0eSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdGl0bGUge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlOyAvKiAyLjI1cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNjI1cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgZW0ge1xyXG4gICAgICAgICAgcGFkZGluZzogNHB4IC41cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLCBhLCBzdHJvbmcge1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHVsIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTAlO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgd2lkdGg6IDQ4JTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzcmVtO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICBcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlOyAvKiAyLjI1cmVtICovXHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNXJlbTtcclxuICAgICAgICBcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrLCAwLjQwKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMS4zNXJlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NXJlbTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICZfX29mZmljZXMge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDtcclxuICAgIH1cclxuICB9XHJcbn0iLCJodG1sIGJvZHkgLmJsb2NrLXZlcnRpY2FsLXNsaWRlciB7XHJcbiAgei1pbmRleDogMzA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgXHJcbiAgLm1haW4tcmFpbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwdmg7XHJcbiAgfVxyXG4gIFxyXG4gIC5kb3Qge1xyXG4gICAgJi5zdGF0aWMtZG90IHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLmhpZGRlbiB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAuc2xpZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3BhY2l0eTogLjE7XHJcbiAgICBcclxuICAgICYgPiBkaXYge1xyXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAudGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSB0aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlOyAvKiA2cmVtICovXHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDIgeGwpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgd2lkdGg6IDUwdnc7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLnNsaWRlLWRlc2Mge1xyXG4gICAgICB3aWR0aDogNTB2dztcclxuICAgICAgcGFkZGluZzogMCAycmVtO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC5zbGlkZS1kZXNjLXRleHQge1xyXG4gICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDAuMnJlbSAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC4ycmVtO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMi43cmVtICovXHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlOyAvKiA2cmVtICovXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuY3RhIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAtMTA4cHg7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5idWxsZXQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW46IDAuMnJlbSAwIC4ycmVtIC0uOHJlbTtcclxuICAgICAgICBwYWRkaW5nOiAwIDFyZW0gMCAwO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiL1wiO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZzogMCA0cHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oMiB4bCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjcycmVtIDAuMjVyZW0gMDtcclxuICAgICAgICAgIG1hcmdpbjogMC4ycmVtIDAgLjJyZW0gLS43cmVtO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDZweCAwIDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5kb3Qge1xyXG4gICAgICAmOmJlZm9yZSxcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gOHB4KTtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMik7XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAuZG90IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICY6Zmlyc3QtY2hpbGQgLmRvdDpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBub25lO1xyXG4gICAgfVxyXG4gICAgJjpsYXN0LWNoaWxkIC5kb3Q6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBub25lO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSB0aXRsZSB7XHJcbiAgICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuc2xpZGUtZGVzYyB7XHJcbiAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuZG90IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNjBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMzB2aCAtIDhweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDU0cHg7XHJcbiAgICAgIFxyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuc2xpZGUtZGVzYyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5kb3Qge1xyXG4gICAgICAgIGxlZnQ6IDI2cHg7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMzV2aCAtIDhweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5mbG9hdGluZy1kb3Qge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MHZoO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLmlubmVyLWNvbnQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIFxyXG4gICAgICAuYmFyLWJlZm9yZSxcclxuICAgICAgLmJhci1hZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4xKTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLmJhci1iZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAxKTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuYmFyLWFmdGVyIHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5oaWRkZW4ge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIGxlZnQ6IDYwcHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBsZWZ0OiAyNnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAmLmFuaW1hdGlvbi1kb25lIHtcclxuICAgIC5zbGlkZSB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIC5kb3Qge1xyXG4gICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2stc2VydmljZXMtdmVydGljYWwtc2xpZGVyIHtcclxuXHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAuYmctY29udGFpbmVyIHtcclxuICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICYuaGlkZGVuIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tbWFpbi10ZXh0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZy10b3A6IDMwdmg7XHJcbiAgICBcclxuICAgICNzbGlkZS1tYWluLXRleHQge1xyXG4gICAgICBAaW5jbHVkZSBmaXJzdC1sZXR0ZXItYmlnZ2VyO1xyXG4gICAgICBwIHtcclxuICAgICAgICBAaW5jbHVkZSB0ZXh0LXR5cGUtcHJlO1xyXG4gICAgICAgIEBpbmNsdWRlIHRleHQtdHlwZS1wb3N0O1xyXG4gICAgICAgIEBpbmNsdWRlIGxvbmctbGluZTtcclxuICAgICAgICBcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNSU7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5kb3Qge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiAtMjAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIGxlZnQ6IDUlO1xyXG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHN2ZyB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04cHgsIC04cHgpOyAvLyBoYWxmIGRvdCBzaXplIHRvIGNlbnRlcmluZyBob3Jpem9udGFsbHlcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuICAgICYtZml4ZWQge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgLnN2Zy1jb250YWluZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi53aGl0ZS1kb3Qge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kIDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLndoaXRlLWRvdCB7XHJcbiAgICBzdmcge1xyXG4gICAgICBjaXJjbGUge1xyXG4gICAgICAgIGZpbGw6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5zbGlkZS10eXBlIHtcclxuICAgIFxyXG4gICAgaDIge1xyXG4gICAgICAmLCBwIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwLnNsaWRlLWRlc2Mge1xyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbn1cclxuIiwiaHRtbCBib2R5IC5ibG9jay1mdWxsd2lkdGgtc2ltcGxlLWNvbnRlbnQge1xyXG4gIEBleHRlbmQgJWZ1bGxzY3JlZW47XHJcbiAgLmNvbnRlbnQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG4gIC5zZWN0aW9uLW1haW4tdGV4dCB7XHJcbiAgICBtYXgtd2lkdGg6IDY2MHB4O1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6MzBweCAwIDEwMHB4O1xyXG4gICAgLnNlY3Rpb24tbWFpbi10ZXh0IHtcclxuICAgICAgd2lkdGg6IDkwdnc7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2stZnVsbHdpZHRoLWltYWdlIHtcclxuICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gIFxyXG4gIC5iaWctaW1hZ2Uge1xyXG4gICAgJi5maXhlZCB7XHJcbiAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkKDEwKTsgLy8gd2l0aCB6LWluZGV4IDEwXHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBleHRlbmQgJWZ1bGxzY3JlZW47XHJcbiAgICBwYWRkaW5nOiAzdmggMXZ3O1xyXG4gICAgXHJcbiAgICAmLWlubmVyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaW1nIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5iaWctdmlkZW8ge1xyXG4gICAgJi5maXhlZCB7XHJcbiAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkKDEwKTsgLy8gd2l0aCB6LWluZGV4IDEwXHJcbiAgICB9XHJcbiAgICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2stcG9zaXRpb25zLWNhcm91c2VsIHtcclxuICBcclxuICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JleTtcclxuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBwYWRkaW5nOiA1MHB4IDAgMTAwcHg7XHJcbiAgfVxyXG4gIFxyXG4gICN0ZXh0LXN0cmlwZSB7XHJcbiAgICBAaW5jbHVkZSB0ZXh0LXN0cmlwZTtcclxuICAgIG92ZXJmbG93OiB1bnNldDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICBwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5ibG9jay1wb3NpdGlvbnMtY2Fyb3VzZWwtc2xpZGVyIHtcclxuICAgIC5zbGlkZXIge1xyXG4gICAgICAucG9zaXRpb24tdHlwZSB7XHJcbiAgICAgICAgQGV4dGVuZCAlZmxleC1jZW50ZXJpbmc7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcclxuICAgICAgICB3aWR0aDogNDB2dztcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oM3hsKSB7XHJcbiAgICAgICAgICB3aWR0aDogNTB2dztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgICB3aWR0aDogNjB2dztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICB3aWR0aDogNzV2dztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICB3aWR0aDogOTB2dztcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgbWFyZ2luOiAxMHZoIGF1dG8gMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDNyZW0gM3JlbSA1cmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgbWFyZ2luOiA3dmggYXV0byAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAycmVtIDNyZW0gMnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICBib3JkZXI6IDIwcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDQwdnc7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlOyAvKiA2cmVtICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oM3hsKSB7XHJcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiA1MHZ3O1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNXZ3O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgIC8vZm9udC1mYW1pbHkgICAgOiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMS41NzVyZW0gKi9cclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0Mzc1cmVtO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgLy9mb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7IC8qIDIuMjVyZW0gKi9cclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA2MjVyZW07XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDE2cHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuY3RhLXBsdXMge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA0cmVtO1xyXG4gICAgICAgICAgcmlnaHQ6IDRyZW07XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2staG9yaXpvbnRhbC1zZXJ2aWNlLXNjb3BlcyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICAuc2VydmljZS1zY29wZSB7XHJcbiAgICBAZXh0ZW5kICVmdWxsc2NyZWVuO1xyXG4gICAgbWluLXdpZHRoOiBtYXgoMTAwdncsIDE0NDBweCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmc7XHJcbiAgICAuYmFja2dyb3VuZC1pbWFnZSBpbWcge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDEwdnc7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgICAgYm9yZGVyOiAyMHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlcnZpY2UtdGV4dCB7XHJcbiAgICAgIEBleHRlbmQgJWZsZXgtY2VudGVyaW5nO1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW46IDAgYXV0byAwIGNhbGMoKDEwMHZoICogMC41NSkgKyAxMHZ3IC0gMTAwcHgpO1xyXG4gICAgICBtYXgtd2lkdGg6IDc2OHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB3aWR0aDogNTB2dztcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgaDIge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQm9kb25pIE1vZGEnLCBzZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IHNldC1yZW0oNjBweCk7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7IC8qIDMuNzVyZW0gKi9cclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgfVxyXG4gICAgICBkaXYgcCB7XHJcbiAgICAgICAgbWFyZ2luOiA2cmVtIDAgM3JlbSAxMnJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgxOHB4KTtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMi4wMjVyZW0gKi9cclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNTYyNXJlbTtcclxuICAgICAgICBkaXJlY3Rpb246IHJ0bDtcclxuICAgICAgfVxyXG4gICAgICAuY3RhLXdyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAuY3RhIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnJhbmQtbGlzdC1zY3JvbGwge1xyXG4gICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgdWwgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNldC1yZW0oODBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5leHRyYS1zcGFjaW5nLXJpZ2h0IHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XHJcbiAgICAgIC5zZXJ2aWNlLXNjb3BlOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC5icmFuZC1saXN0LXNjcm9sbCB7XHJcbiAgICAgICAgICByaWdodDogMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IG1heChjYWxjKDEwMHZ3ICsgMTAwcHgpLCAxNTQwcHgpO1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgKyAxMDBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE2MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJnO1xyXG4gICAgXHJcbiAgICAuc2VydmljZS1zY29wZSB7XHJcbiAgICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgICAgXHJcbiAgICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcclxuICAgICAgICB3aWR0aDogNDV2dztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuc2VydmljZS10ZXh0IHtcclxuICAgICAgICB3aWR0aDogNTB2dztcclxuICAgICAgICBcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgZGl2IHAge1xyXG4gICAgICAgICAgbWFyZ2luOiA0MHB4IDAgMCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuY3RhLXdyYXBwZXIge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAuYnJhbmQtbGlzdC1zY3JvbGwge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDB2dztcclxuICAgICAgICBtYXJnaW4tdG9wOiA4NHB4O1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCAwIDA7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDMwdnc7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIC5zZXJ2aWNlLXNjb3BlIHtcclxuICAgICAgLmJhY2tncm91bmQtaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiA3MHZ3O1xyXG4gICAgICB9XHJcbiAgICAgIC5zZXJ2aWNlLXRleHQge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICBkaXYgcCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHNldC1yZW0oMTZweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jdGEtd3JhcHBlciB7XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDE0cHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2stc2VydmljZXMtbGlzdCB7XHJcbiAgLnNlcnZpY2Utd3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIFxyXG4gICAgLmlubmVyLWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIH1cclxuICAgIC50aXRsZXtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDYwdnc7XHJcbiAgICBtYXJnaW46IDgwcHggMCA4MHB4IDE1dnc7XHJcbiAgICBkaXJlY3Rpb246IHJ0bDtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgIHdpZHRoOiA4NXZ3O1xyXG4gICAgfVxyXG4gICAgfVxyXG4gICBcclxuICAgIHB7XHJcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAmLmRhcmsge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuICAgICYubGlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50O1xyXG4gICAgICBcclxuICAgICAgJiB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSB0aXRsZSB7XHJcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC50aXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBtYWluLXBhZ2UtdGl0bGUtdGV4dC1oMjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNXZ3O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IG1pbig0cmVtLDEwMHB4KTtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAvL21hcmdpbi1ib3R0b20gOiAtM3JlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuc2VydmljZS12ZXJ0aWNhbC10ZXh0IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogMTIlO1xyXG5cclxuICAgICAgLnNlcnZpY2UtdmVydGljYWwtd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZXJ2aWNlLXZlcnRpY2FsLWlubmVyIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogdmVydGljYWwtc2Nyb2xsaW5nIDMwcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAgICAgYW5pbWF0aW9uOiB2ZXJ0aWNhbC1zY3JvbGxpbmcgMzBzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgdGl0bGV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHNldC1yZW0oMTBweCk7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICBcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlOyAvKiAyLjdyZW0gKi9cclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIHZlcnRpY2FsLXNjcm9sbGluZyB7XHJcbiAgICAgICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBrZXlmcmFtZXMgdmVydGljYWwtc2Nyb2xsaW5nIHtcclxuICAgICAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIFxyXG4gICAgJF9lbGVtZW50X3dpZHRoOiA2MHZ3O1xyXG4gICAgJF9lbGVtZW50X21hcmdpbl9sZWZ0OiAxNXZ3O1xyXG4gICAgLnRleHQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdpZHRoOiAkX2VsZW1lbnRfd2lkdGg7XHJcbiAgICAgIG1hcmdpbjogODBweCAwIDgwcHggJF9lbGVtZW50X21hcmdpbl9sZWZ0O1xyXG4gICAgICBcclxuICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxuICAgICAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMi4yNXJlbSAqL1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNjI1cmVtO1xyXG4gICAgICBcclxuICAgICAgcCB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICY6OmZpcnN0LWxldHRlciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnICc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMS4xMjVyZW07XHJcbiAgICAgICAgbGVmdDogLTIwdnc7XHJcbiAgICAgICAgd2lkdGg6IDIwdnc7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTAwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgMCk7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMDhweDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm5vdGUge1xyXG4gICAgICB3aWR0aDogJF9lbGVtZW50X3dpZHRoO1xyXG4gICAgICBtYXJnaW4tbGVmdDogJF9lbGVtZW50X21hcmdpbl9sZWZ0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDhweDtcclxuICAgICAgXHJcbiAgICAgIHAge1xyXG4gICAgICAgIGJvcmRlcjogMjBweCBzb2xpZCAjMDAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDIuNXJlbTtcclxuICAgICAgICBcclxuICAgICAgICAmLCBhIHtcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTsgLyogMi4yNXJlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIC5pbm5lci1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNTBweDtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSB0aXRsZSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgIC5pbm5lci1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICAgIG1hcmdpbjogNjBweCAyMHB4IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC5zZXJ2aWNlLXZlcnRpY2FsLXRleHQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIHRpdGxlIHtcclxuICAgICAgICAgIHdyaXRpbmctbW9kZTogbHI7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZXJ2aWNlLXZlcnRpY2FsLXdyYXBwZXIge1xyXG4gICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VydmljZS12ZXJ0aWNhbC1pbm5lciB7XHJcbiAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBob3Jpem9udGFsLXNjcm9sbGluZyAzMHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgICAgYW5pbWF0aW9uOiBob3Jpem9udGFsLXNjcm9sbGluZyAzMHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGhvcml6b250YWwtc2Nyb2xsaW5nIHtcclxuICAgICAgICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cclxuICAgICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAa2V5ZnJhbWVzIGhvcml6b250YWwtc2Nyb2xsaW5nIHtcclxuICAgICAgICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cclxuICAgICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAubm90ZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsImh0bWwgYm9keSAuYmxvY2stbWVkaWEge1xyXG4gIEBpbmNsdWRlIGJsb2NrLXNwYWNpbmctZXF1YWw7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcbn0iLCIuYmxvY2stcHJvamVjdC1tZWRpYSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAubWVkaWEge1xyXG4gICAgJi1jb250YWluZXIge1xyXG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtd3AtdmlkZW87XHJcbiAgICAgIHdpZHRoOiAxMDB2dztcclxuICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAgIFxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgd2lkdGg6IDkwdnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYudHlwZSB7XHJcbiAgICAmLWZ1bGwge1xyXG4gICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYubWVkaWEtY292ZXIge1xyXG4gICAgLm1lZGlhIHtcclxuICAgICAgJi1jb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmJvcmRlciB7XHJcbiAgICAmLWVuYWJsZWQge1xyXG4gICAgICAubWVkaWEtY29udGFpbmVyIHtcclxuICAgICAgICBib3JkZXI6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi13aGl0ZSB7XHJcbiAgICAgIC5tZWRpYS1jb250YWluZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1ibGFjayB7XHJcbiAgICAgIC5tZWRpYS1jb250YWluZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1iZztcclxuXHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgJiArIC5saWdodCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm1vYmlsZS1uby1zcGFjaW5nIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi5ibG9jay1wcm9qZWN0LWNvbnRlbnQge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDIwMHB4IDAgMTcwcHg7XHJcbiAgXHJcbiAgLnNtYWxsLXRpdGxlIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4MCU7IC8qIDIxLjZweCAqL1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDBweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG4gIH1cclxuXHJcbiAgLmNvbnRlbnQge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIG1heC13aWR0aDogNzAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgfVxyXG5cclxuICAmLmxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1iZztcclxuICAgIFxyXG4gICAgLnNtYWxsLXRpdGxlIHtcclxuICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcblxyXG4gICAgICAubG9uZy1saW5lIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgKyAubGlnaHQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5uby1zcGFjaW5nIHtcclxuICAgICYtYm90dG9tIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLXRvcCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAmLm5vLXNwYWNpbmctZGVza3RvcCB7XHJcbiAgICAgICYtYm90dG9tIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLXRvcCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICBwYWRkaW5nOiAxMjBweCAwO1xyXG4gIH1cclxufSIsIi5ibG9jay1wcm9qZWN0LXF1b3RlcyB7XHJcbiAgbWluLWhlaWdodDogOTB2aDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC5jb250IHtcclxuICAgIC5yb3cge1xyXG4gICAgICBtaW4taGVpZ2h0OiA5MHZoO1xyXG4gICAgfVxyXG4gICAgLnNsaWRlci1hcnJvd3Mge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBwYWRkaW5nOiAwIDUwcHg7XHJcbiAgICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDc1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stZGlzYWJsZWQge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWRpbmctdGV4dCB7XHJcbiAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyO1xyXG4gICAgZm9udC1zaXplOiAzLjc1cmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAmLWNvbnRhaW5lciB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgbWF4LWhlaWdodDogOTB2aDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgIH1cclxuICAgIC5hbHQge1xyXG4gICAgICBmb250LWZhbWlseTogJ25ldWUtbW9udHJlYWwnLCBzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICBtYXgtd2lkdGg6IDY2MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIC5zbGlkZSB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIC5hdXRob3Ige1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLnF1b3RlbWFyayB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgYm90dG9tOiAtODBweDtcclxuICAgICAgbGkge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIG9wYWNpdHk6IC4yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zbGljay1hY3RpdmUge1xyXG4gICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIC5zbGlkaW5nLXRleHQge1xyXG4gICAgICB3cml0aW5nLW1vZGU6IGxyO1xyXG4gICAgICAmLWNvbnRhaW5lciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGhlaWdodDogMTQwcHg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAgKyA0MHB4KTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgICAgIH1cclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjEyNXJlbTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250IHtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMTMwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLnNsaWRlci1hcnJvd3Mge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICB0b3A6IDYwJVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLmNvbnQge1xyXG4gICAgICAuc2xpZGVyLWFycm93cyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi5ibG9jay1wcm9qZWN0LXNjcmVlbnMtY2Fyb3VzZWwge1xyXG4gIHBhZGRpbmc6IDE1MHB4IDA7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gIC5zbGlkZXItY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gICYtc2xpZGVyIHtcclxuICAgIHdpZHRoOiAxMTh2dztcclxuICAgIG1hcmdpbi1sZWZ0OiAtOXZ3O1xyXG5cclxuICAgIC5zbGlkZSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDM3MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIHdpZHRoOiAxMjh2dztcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0xNHZ3O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICB3aWR0aDogMjA0dnc7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNTJ2dztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtcGhvbmUtb3ZlcmxheSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC0xMHB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgd2lkdGg6IDE5MnB4O1xyXG5cclxuICAgIHN2ZyB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDIuOXB4LCAtM3B4KSBzY2FsZSgwLjk4KTtcclxuICAgIH1cclxuXHJcbiAgICBzdmcge1xyXG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDNweCwgMnB4KSBzY2FsZSgxKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDJweCkgc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgycHgsIDFweCkgc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCkgc2NhbGUoMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYubGlnaHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJnO1xyXG5cclxuICAgICYgKyAubGlnaHQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5uby1zcGFjaW5nIHtcclxuICAgICYtYm90dG9tIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi10b3Age1xyXG4gICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcbn0iLCIuYmxvY2stcHJvamVjdC1ob3Jpem9udGFsLXNlY3Rpb24ge1xyXG4gIC5tYWluLXJhaWwge1xyXG4gICAgaGVpZ2h0OiAxMDB2aDtcclxuICAgIG1heC1oZWlnaHQ6IDEwMHZ3ICFpbXBvcnRhbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAuaG9yaXpvbnRhbC1zZWN0aW9uLWlubmVyLWJsb2NrIHtcclxuICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgIC5pbm5lci1jb250YWluZXIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5pbWFnZS1jb250YWluZXIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi50eXBlLXNtYWxsLWZ1bGwgaW1nIHtcclxuICAgICAgICAgIG1heC1oZWlnaHQ6IDUwdmg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuaW1hZ2UtY2FwdGlvbiB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIG9wYWNpdHk6IC40O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICYuZXh0cmEtc3BhY2luZyB7XHJcbiAgICAgICAgICAmLWxlZnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDExMHB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYtcmlnaHQge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgcGFkZGluZzogODBweCAwIDEyMHB4IDA7XHJcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgIC5ob3Jpem9udGFsLXNlY3Rpb24taW5uZXItYmxvY2sge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgLmltYWdlLWNvbnRhaW5lciBpbWcge1xyXG4gICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tb2JpbGUtbGVzcy1zcGFjaW5nIHtcclxuICAgICAgICAgICYtYm90dG9tIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiBzZXQtcmVtKDIwcHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1iZztcclxuXHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJsb2NrLXByb2plY3QtaG9yaXpvbnRhbC1zZWN0aW9ucy1jb250ZW50LWltYWdlIHtcclxuXHJcbiAgLmNvbnRlbnQge1xyXG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDU1MHB4O1xyXG4gICAgbWFyZ2luOiAwIDEzMHB4IDAgMTgwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBmaXJzdC1sZXR0ZXItYmlnZ2VyO1xyXG4gIH1cclxuICBcclxuICAudHlwZS1zbWFsbGVyLFxyXG4gIC50eXBlLXNtYWxsZXItbW9iaWxlLXNxdWFyZSB7XHJcbiAgICAmLFxyXG4gICAgLmltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDU1dmg7XHJcbiAgICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICAgIGZsZXgtZ3JvdzogMDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbiAgICAuaW1hZ2UtY29udGFpbmVye1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbWFnZS1jb250YWluZXIge1xyXG4gICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5ib3JkZXIge1xyXG4gICAgICAmLWVuYWJsZWQge1xyXG4gICAgICAgIGJvcmRlcjogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYtd2hpdGUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLWJsYWNrIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm1lZGlhLXBhcnQ6bm90KC50eXBlLXNtYWxsZXIpOm5vdCgudHlwZS1zbWFsbGVyLW1vYmlsZS1zcXVhcmUpIHtcclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIC5jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogNjBweCAyMHB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAudHlwZS1tb2JpbGUtc3F1YXJlLFxyXG4gICAgLnR5cGUtc21hbGxlci1tb2JpbGUtc3F1YXJlIHtcclxuICAgICAgJixcclxuICAgICAgLmltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgICAgLmltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59IiwiLmJsb2NrLXByb2plY3QtaG9yaXpvbnRhbC1zZWN0aW9ucy1jb250ZW50LWltYWdlLW92ZXJsYXBwZWQge1xyXG5cclxuICAuY29udGVudCB7XHJcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogNTUwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgbWFyZ2luOiAwIDExMHB4IDAgMTMwcHg7XHJcblxyXG4gICAgaDQge1xyXG4gICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZTogMy43NXJlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTIwMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZWRpYS1wYXJ0IHtcclxuICAgIG1heC1oZWlnaHQ6IDU1dmg7XHJcbiAgICBtYXgtd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgZmxleC1ncm93OiAwO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuaW1hZ2UtY29udGFpbmVyIHtcclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYuYm9yZGVyIHtcclxuICAgICAgJi1lbmFibGVkIHtcclxuICAgICAgICBib3JkZXI6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi13aGl0ZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYtYmxhY2sge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgIC5jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICBoNCB7XHJcbiAgICAgICAgbWFyZ2luOiAtMjRweCAwIDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2UtY2FwdGlvbiB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDEwcHggMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCJALXdlYmtpdC1rZXlmcmFtZXMgc2Nyb2xsLWRvd24ge1xyXG4gIDAlICAgeyB0b3A6IDA7IGhlaWdodDogMDsgfVxyXG4gIDQwJSAgeyB0b3A6IDA7IGhlaWdodDogMTAwJTsgfVxyXG4gIDUwJSAgeyB0b3A6IGF1dG87IGJvdHRvbTogMDsgaGVpZ2h0OiAxMDAlOyB9XHJcbiAgOTAlICB7IGJvdHRvbTogMDsgaGVpZ2h0OiAwOyB9XHJcbiAgMTAwJSB7IGJvdHRvbTogMDsgaGVpZ2h0OiAwOyB9XHJcbn1cclxuQGtleWZyYW1lcyBzY3JvbGwtZG93biB7XHJcbiAgMCUgICB7IHRvcDogMDsgaGVpZ2h0OiAwOyB9XHJcbiAgNDAlICB7IHRvcDogMDsgaGVpZ2h0OiAxMDAlOyB9XHJcbiAgNTAlICB7IHRvcDogYXV0bzsgYm90dG9tOiAwOyBoZWlnaHQ6IDEwMCU7IH1cclxuICA5MCUgIHsgYm90dG9tOiAwOyBoZWlnaHQ6IDA7IH1cclxuICAxMDAlIHsgYm90dG9tOiAwOyBoZWlnaHQ6IDA7IH1cclxufVxyXG5cclxuI3Byb2plY3QtaGVybyB7XHJcbiAgLmhlcm8ge1xyXG4gICAgJl9wYXJ0IHtcclxuICAgICAgcGFkZGluZy10b3A6IDE0MHB4O1xyXG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJl90ZXh0IHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgXHJcbiAgICAgIGgxIHtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGgyIHtcclxuICAgICAgICBmb250LWZhbWlseTogJ0JvZG9uaSBNb2RhJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICZfYmFja2dyb3VuZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgXHJcbiAgICAgIC5jbGFpbSB7XHJcbiAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcmVtIDAuNnJlbTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdCb2RvbmkgTW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43MjVyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgdG9wOiAxMjBweDtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAlKTtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MHZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLmJhY2tncm91bmQge1xyXG4gICAgICAgIHdpZHRoOiA1NiU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJi1jb250YWluZXIge1xyXG4gICAgICAgICAgYm9yZGVyOiAyMHB4IHNvbGlkICRibGFjaztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJi1pbWFnZSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLmxvZ28ge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTIwcHg7XHJcbiAgICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLmJhY2tncm91bmQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICRibGFjaztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLmJhY2tncm91bmQtaW1hZ2Uge1xyXG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGxlZnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBcclxuICAgICAgICAuY2xhaW0ge1xyXG4gICAgICAgICAgdG9wOiAxOHZoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTh2aDtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIC5jb250ZW50IHtcclxuICAgICZfcGFydCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDE0MHB4O1xyXG4gICAgICBcclxuICAgICAgJixcclxuICAgICAgKiB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogJ25ldWUtbW9udHJlYWwnLCBzYW5zLXNlcmlmO1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAucm93ID4gKiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgPi5yb3c6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgICAgICAgY29sdW1uLWdhcDogMTAwcHg7XHJcbiAgICAgICAgICAmLl9sYXJnZSB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgXHJcbiAgICAgIHNtYWxsIHtcclxuICAgICAgICBmb250LXNpemU6IC43NXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogc2V0LXJlbSgxNnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICZfY29sdW1ucyB7XHJcbiAgICAgIG1hcmdpbjogMzVweCAtNjVweCAwO1xyXG4gICAgICBcclxuICAgICAgPiAqIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDY1cHg7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgbWFyZ2luOiA0MHB4IC0yMHB4IDA7XHJcbiAgICAgICAgXHJcbiAgICAgICAgPiAqIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiA6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgXHJcbiAgLnNjcm9sbC1kb3duIHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiAycyBzY3JvbGwtZG93biBpbmZpbml0ZTtcclxuICAgICAgYW5pbWF0aW9uOiAycyBzY3JvbGwtZG93biBpbmZpbml0ZTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIuY29udGFjdC11cyB7XHJcbiAgcG9zaXRpb24gICAgOiByZWxhdGl2ZTtcclxuICAvL3BhZGRpbmctdG9wIDogMzVyZW07XHJcbiAgLy9AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oMnhsKSB7XHJcbiAgLy8gIHBhZGRpbmctdG9wIDogM3JlbTtcclxuICAvL31cclxuXHJcbiAgI21haW4tdGl0bGUge1xyXG5cclxuICAgIC8vQGluY2x1ZGUgbWFpbi1wYWdlLXRpdGxlLXdyYXBwZXI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgbWFyZ2luLXRvcCAgICA6IDVyZW07XHJcbiAgICAgIG1hcmdpbi1ib3R0b20gOiA1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIGgxIHtcclxuICAgICAgQGluY2x1ZGUgbWFpbi1wYWdlLXRpdGxlLXRleHQtaDE7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAvL3RyYW5zZm9ybSAgIDogdHJhbnNsYXRlWSgtNzUlKTtcclxuICAgICAgLy9AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgLy8gIHRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC8vfVxyXG4gICAgICAvL0BpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAvLyAgdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtMjAlKTtcclxuICAgICAgLy99XHJcbiAgICAgIC8vXHJcbiAgICAgIC8vQGluY2x1ZGUgbWFpbi1wYWdlLXRpdGxlLXRleHQtaDI7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgIG1hcmdpbi10b3A6IC03cmVtO1xyXG4gICAgICBtYXgtd2lkdGg6IDExMDBweDtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDN4bCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTd2dztcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpe1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC01dnc7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJiwgc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDJ4bCkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQgOiAwO1xyXG4gICAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWFpbi1wYWdlLXRpdGxlLXRleHQtaDI7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2NvbnRhY3QtZm9ybS13cmFwcGVyIHtcclxuXHJcbiAgICBAaW5jbHVkZSBnZW5lcmljLWZvcm0tc3R5bGVzO1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgfVxyXG4gIFxyXG4gIC8vIG1vdmVkIHRvIHNyYy9hc3NldHMvYmxvY2tzL19vZmZpY2VzLnNjc3NcclxuICAjb2ZmaWNlcy13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uICAgICAgICA6IHJlbGF0aXZlO1xyXG4gICAgbWluLWhlaWdodCAgICAgIDogMTAwdmggIWltcG9ydGFudDtcclxuICAgIC8vYmFja2dyb3VuZCAgICAgIDogbGlnaHRncmF5IHVybCgvd3AtY29udGVudC91cGxvYWRzLzIwMjMvMDgvY29udGFjdC11cy1iYWNrZ3JvdW5kLnBuZykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZSA6IGNvdmVyO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAudmgtMTAwIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICN0ZXh0LXN0cmlwZSB7XHJcbiAgICAgIEBpbmNsdWRlIHRleHQtc3RyaXBlO1xyXG4gICAgfVxyXG5cclxuICAgIC5hZGRyZXNzZXMge1xyXG4gICAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xyXG4gICAgICB3aWR0aCAgICAgICAgICAgOiA0OC4zMTI1cmVtO1xyXG4gICAgICBoZWlnaHQgICAgICAgICAgOiAyNi41NjI1cmVtO1xyXG4gICAgICBtYXJnaW4tYm90dG9tICAgOiAxMHJlbTtcclxuICAgICAgcGFkZGluZyAgICAgICAgIDogMCA1cmVtO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQgOiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBhbGlnbi1pdGVtcyAgICAgOiBjZW50ZXI7XHJcbiAgICAgIGZsZXgtc2hyaW5rICAgICA6IDA7XHJcblxyXG4gICAgICBib3JkZXIgICAgICAgICAgOiAyMHB4IHNvbGlkICR3aGl0ZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uIDogY29sdW1uO1xyXG4gICAgICAgIHdpZHRoICAgICAgICAgIDogNTB2dztcclxuICAgICAgICBoZWlnaHQgICAgICAgICA6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQgICAgOiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodCAgIDogYXV0bztcclxuICAgICAgICBwYWRkaW5nICAgICAgICA6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbSAgIDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgd2lkdGggICAgICAgICAgOiA2NXZ3O1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBwIHtcclxuICAgICAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xyXG4gICAgICAgIC8vaGVpZ2h0ICAgICAgICAgIDogMjEuMjVyZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcCAgICAgIDogMnJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tICAgOiAycmVtO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uICA6IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQgOiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXMgICAgIDogY2VudGVyO1xyXG4gICAgICAgIGdhcCAgICAgICAgICAgICA6IDEuMjVyZW07XHJcblxyXG4gICAgICAgICYsIGEsIHN0cm9uZyB7XHJcbiAgICAgICAgICBjb2xvciAgICAgICAgICA6IHJnYmEoJGJsYWNrLCAwLjQwKTtcclxuICAgICAgICAgIHRleHQtYWxpZ24gICAgIDogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplICAgICAgOiAwLjc1cmVtO1xyXG4gICAgICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodCAgICA6IDQwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgIDogMTgwJTsgLyogMS4zNXJlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmcgOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgIGNvbG9yICAgICAgICAgIDogJGJsYWNrO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm0gOiBjYXBpdGFsaXplO1xyXG5cclxuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgIDogMS4yNXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGUgICAgIDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQgICAgOiAzMDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodCAgICA6IDE4MCU7IC8qIDIuMjVyZW0gKi9cclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nIDogMC4wNjI1cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZW0ge1xyXG4gICAgICAgICAgZGlzcGxheSAgICAgICAgICA6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHBhZGRpbmctbGVmdCAgICAgOiAwLjVyZW07XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0ICAgIDogMC41cmVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvciA6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3IgICAgICAgOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0IDogNDAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAuNXJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYsIGEsIHN0cm9uZyB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgIDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcCAgICAgICA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50IDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtYXgtd2lkdGggICAgICAgOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQgICAgIDogMTAlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgbWF4LXdpZHRoICAgOiB1bnNldDtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0IDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIHdpZHRoICAgICAgICAgIDogNDglO1xyXG4gICAgICAgICAgbWluLWhlaWdodCAgICAgOiAzcmVtO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcCAgICAgOiAxcmVtO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbSAgOiAxcmVtO1xyXG5cclxuICAgICAgICAgIHRleHQtYWxpZ24gICAgIDogY2VudGVyO1xyXG4gICAgICAgICAgZm9udC1zaXplICAgICAgOiAxLjI1cmVtO1xyXG4gICAgICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodCAgICA6IDMwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgIDogMTgwJTsgLyogMi4yNXJlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmcgOiAwO1xyXG5cclxuICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5ICAgICAgICA6IGJsb2NrO1xyXG4gICAgICAgICAgICBjb2xvciAgICAgICAgICA6IHJnYmEoJGJsYWNrLCAwLjQwKTtcclxuICAgICAgICAgICAgZm9udC1zaXplICAgICAgOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlICAgICA6IG5vcm1hbDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQgICAgOiA0MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgIDogMTgwJTsgLyogMS4zNXJlbSAqL1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZyA6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtIDogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ibG9jay1vZmZpY2VzX19vZmZpY2VzIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIiRfdmVydGljYWxfZ2FwIDogODVweDtcclxuXHJcbi5wYWdlLXRlbXBsYXRlLXN0YXJ0dXAtbGFuZGluZy1ibG9jay10ZW1wbGF0ZSxcclxuLnBhZ2UtdGVtcGxhdGUtY29ycG9yYXRpb25zLWxhbmRpbmctYmxvY2stdGVtcGxhdGUge1xyXG4gIC5sb2NhdGlvbi1kZXRhaWxzIC5wYWdlLW5hbWUge1xyXG4gICAgZGlzcGxheSA6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIGZvb3RlciB7XHJcbiAgICB0b3AgOiAtMSokX3ZlcnRpY2FsX2dhcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgZm9vdGVyLCAjZm9vdGVyIHtcclxuICAgICAgaGVpZ2h0IDogMTMwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4ucGFnZS10ZW1wbGF0ZS1jb3Jwb3JhdGlvbnMtbGFuZGluZy1ibG9jay10ZW1wbGF0ZSB7XHJcbiAgLmhvcml6b250YWwtY29udGFpbmVyLXRleHQgLnNlcnZpY2Utd3JhcHBlciAucHJlLXRpdGxlIHtcclxuICAgIGgxLCBoMiB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIHdpZHRoIDogNjB2dyAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIHdpZHRoIDogNzB2dyAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIHdpZHRoIDogODB2dyAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICAgIHdpZHRoIDogOTB2dyAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuI2N1c3RvbS1hZHYtbGFuZGluZy13cnAge1xyXG5cclxuICAuY3RhLWxpbmstdG8ge1xyXG4gICAgZmxvYXQgICAgICA6IHJpZ2h0O1xyXG4gICAgbWluLXdpZHRoICA6IDEyMHB4O1xyXG4gICAgbWF4LXdpZHRoICA6IDE1MHB4O1xyXG4gICAgZGlzcGxheSAgICA6IGJsb2NrO1xyXG4gICAgcGFkZGluZyAgICA6IDA7XHJcbiAgICBtYXJnaW4gICAgIDogdW5zZXQ7XHJcbiAgICB0cmFuc2Zvcm0gIDogdW5zZXQ7XHJcbiAgICB0ZXh0LWFsaWduIDogY2VudGVyO1xyXG4gICAgd2lkdGggICAgICA6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICAuYmxvY2stcGFnZS1oZXJvIHtcclxuICAgIG1pbi1oZWlnaHQgOiB1bnNldDtcclxuXHJcbiAgICAudGl0bGUtc3VidGl0bGUtd3JhcHBlciB7XHJcbiAgICAgIHBhZGRpbmctdG9wICAgIDogNXJlbTtcclxuICAgICAgcGFkZGluZy1ib3R0b20gOiAxMHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3AgICAgOiAyLjVyZW07XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b20gOiA1cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBtYXgtd2lkdGggOiA1MHZ3O1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICBtYXgtd2lkdGggOiA2MHZ3O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0ICA6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0IDogYXV0bztcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICBtYXgtd2lkdGggOiA4MHZ3O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDVyZW07XHJcbiAgICAgICAgY29sb3IgICAgICAgICA6ICR3aGl0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduICAgIDogY2VudGVyO1xyXG5cclxuICAgICAgICAmLCAmOjpmaXJzdC1sZXR0ZXIge1xyXG4gICAgICAgICAgZm9udC1mYW1pbHkgOiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9udC1zaXplICAgICA6IDMuNzVyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgICBmb250LXNpemUgICAgIDogMy4yNXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICBmb250LXNpemUgICAgIDogMi43NXJlbTtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b20gOiAzcmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgOiAyLjI1cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb250LXN0eWxlICAgIDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0ICAgOiAzMDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQgICA6IG5vcm1hbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJsb2NrLXNlcnZpY2VzLWxpc3QsXHJcbiAgLmJsb2NrLXBhZ2UtaGVybyB7XHJcbiAgICAuc3BhY2VyIHtcclxuICAgICAgbWluLWhlaWdodCA6IDVyZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmxvY2stc2VydmljZXMtbGlzdCAuc2VydmljZS13cmFwcGVyIHtcclxuICAgICYsIC5pbm5lci1jb250YWluZXIge1xyXG4gICAgICBtaW4taGVpZ2h0IDogdW5zZXQ7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tIDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZSBoMiB7XHJcbiAgICAgIGZvbnQtc2l6ZSA6IDIuNXJlbTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDA7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcCA6IDFyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGV4dCB7XHJcbiAgICAgIHdpZHRoICA6IDUwdnc7XHJcbiAgICAgIG1hcmdpbiA6IDJyZW0gYXV0bztcclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgbGVmdCAgOiAtMzB2dztcclxuICAgICAgICB3aWR0aCA6IDQwdnc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIHdpZHRoICA6IDYwdnc7XHJcbiAgICAgICAgbWFyZ2luIDogMS41cmVtIGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgd2lkdGggOiA4MHZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjaGVybyB7XHJcbiAgICBoZWlnaHQgICAgIDogY2FsYygxMDB2aCAtICRfdmVydGljYWxfZ2FwKTtcclxuICAgIG1hcmdpbi10b3AgOiAkX3ZlcnRpY2FsX2dhcDtcclxuXHJcbiAgICAuZml4ZWQtc2VjdGlvbi1pbm5lciB7XHJcbiAgICAgIHdpZHRoICAgICAgICAgICAgICAgOiAxMDAlO1xyXG4gICAgICBoZWlnaHQgICAgICAgICAgICAgIDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvciAgICA6IHRyYW5zcGFyZW50O1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdCAgIDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemUgICAgIDogY292ZXI7XHJcblxyXG4gICAgICAmLnN0YXJ0dXAge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIzLzEwL2hlcm8uanBnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5jb3Jwb3JhdGlvbnMge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIzLzEwL2hlcm8tY29ycG9yYXRpb25zLmpwZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY2xhaW0ge1xyXG4gICAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbiAgOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zICAgICA6IGNlbnRlcjtcclxuICAgICAgdGV4dC1hbGlnbiAgICAgIDogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQgOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoICAgICAgICAgICA6IDcwJTtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDN4bCkge1xyXG4gICAgICAgIHdpZHRoIDogODAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigyeGwpIHtcclxuICAgICAgICB3aWR0aCA6IDkwJTtcclxuICAgICAgfVxyXG4gICAgICBoZWlnaHQgICAgICAgICAgOiAxMDAlO1xyXG4gICAgICBtYXJnaW4gICAgICAgICAgOiAwIGF1dG87XHJcbiAgICAgIHRleHQtYWxpZ24gICAgICA6IGNlbnRlcjtcclxuXHJcbiAgICAgIGgxIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tICA6IDJyZW07XHJcbiAgICAgICAgdGV4dC1zaGFkb3cgICAgOiAwcHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuICAgICAgICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQgICAgOiA5MDA7XHJcbiAgICAgICAgZm9udC1zaXplICAgICAgOiA0LjcyNXJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZSA6IDRyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgZm9udC1zaXplIDogMy41cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b20gOiAxcmVtO1xyXG4gICAgICAgICAgZm9udC1zaXplICAgICA6IDIuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQgICAgOiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm0gOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgY29sb3IgICAgICAgICAgOiAkd2hpdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tICA6IDNyZW07XHJcbiAgICAgICAgdGV4dC1zaGFkb3cgICAgOiAwcHggNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuICAgICAgICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplICAgICAgOiAyLjI1cmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgICAgZm9udC1zaXplIDogMnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICBmb250LXNpemUgOiAxLjhyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDJyZW07XHJcbiAgICAgICAgICBmb250LXNpemUgICAgIDogMS41cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb250LXN0eWxlICAgICA6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodCAgICA6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodCAgICA6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybSA6IHVwcGVyY2FzZTtcclxuICAgICAgICBjb2xvciAgICAgICAgICA6ICR3aGl0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmN0YSB7XHJcbiAgICAgICAgaGVpZ2h0ICAgICAgICAgICA6IDMuMTI1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b20gICAgOiAzcmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhZGRpbmcgICAgICAgICAgOiAwLjYyNXJlbSAyLjE4NzVyZW07XHJcbiAgICAgICAgbWF4LXdpZHRoICAgICAgICA6IDI3MHB4O1xyXG4gICAgICAgIGN1cnNvciAgICAgICAgICAgOiBwb2ludGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgOiAkYmxhY2s7XHJcbiAgICAgICAgY29sb3IgICAgICAgICAgICA6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemUgICAgICAgIDogMS4yNXJlbTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQgIDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zICAgICAgOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwICAgICAgICAgICAgICA6IDAuNjI1cmVtO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rICAgICAgOiAwO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yICAgICAgICAgICAgOiAkYmxhY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhvcml6b250YWwtY29udGFpbmVyLXRleHQgLnNlcnZpY2Utd3JhcHBlciAucHJlLXRpdGxlIHtcclxuICAgIGgxIHtcclxuICAgICAgd2lkdGggICAgICAgICAgOiA1MHZ3O1xyXG4gICAgICBtYXJnaW4gICAgICAgICA6IDRyZW0gYXV0bztcclxuICAgICAgY29sb3IgICAgICAgICAgOiAkd2hpdGU7XHJcbiAgICAgIHRleHQtYWxpZ24gICAgIDogY2VudGVyO1xyXG4gICAgICBmb250LWZhbWlseSAgICA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcbiAgICAgIGZvbnQtc2l6ZSAgICAgIDogMy43NXJlbTtcclxuICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgIGZvbnQtd2VpZ2h0ICAgIDogMzAwO1xyXG4gICAgICBsaW5lLWhlaWdodCAgICA6IDEyMCU7IC8qIDQuNXJlbSAqL1xyXG4gICAgICBsZXR0ZXItc3BhY2luZyA6IDA7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIG1hcmdpbiAgICA6IDMuNXJlbSBhdXRvO1xyXG4gICAgICAgIGZvbnQtc2l6ZSA6IDMuMjVyZW07XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgbWFyZ2luICAgIDogM3JlbSBhdXRvO1xyXG4gICAgICAgIGZvbnQtc2l6ZSA6IDNyZW07XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgbWFyZ2luICAgIDogMy41cmVtIGF1dG8gMnJlbTtcclxuICAgICAgICBmb250LXNpemUgOiAyLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgIHdpZHRoICAgICAgIDogNDB2dztcclxuICAgICAgbWFyZ2luICAgICAgOiA0cmVtIGF1dG87XHJcbiAgICAgIGNvbG9yICAgICAgIDogJHdoaXRlO1xyXG4gICAgICB0ZXh0LWFsaWduICA6IGNlbnRlcjtcclxuICAgICAgZm9udC1mYW1pbHkgOiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICBmb250LXNpemUgICA6IDIuMjVyZW07XHJcbiAgICAgIGZvbnQtc3R5bGUgIDogbm9ybWFsO1xyXG4gICAgICBmb250LXdlaWdodCA6IDMwMDtcclxuICAgICAgbGluZS1oZWlnaHQgOiAxODAlOyAvKiA0LjA1cmVtICovXHJcbiAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgZm9udC1mYW1pbHkgOiAnYm9kb25pLW1vZGEnLCBzZXJpZjtcclxuICAgICAgICBmb250LXN0eWxlICA6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodCA6IDUwMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgbWFyZ2luICAgIDogM3JlbSBhdXRvO1xyXG4gICAgICAgIGZvbnQtc2l6ZSA6IDJyZW07XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgbWFyZ2luICAgIDogMy41cmVtIGF1dG8gMnJlbTtcclxuICAgICAgICBmb250LXNpemUgOiAxLjc1cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgIC53aHktdmVnYW5zLXdyYXBwZXIsIC53aHktdmVnYW5zLXdyYXBwZXIgLmQtZmxleCwgLndoeS12ZWdhbnMge1xyXG4gICAgICBoZWlnaHQgOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjcHJlLXdoeS12ZWdhbnMge1xyXG4gICAgbWFyZ2luLWJvdHRvbSA6IDhyZW07XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbSA6IDRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAud2h5LXZlZ2FucyB7XHJcblxyXG4gICAgbWF4LXdpZHRoIDogOTAwcHg7XHJcbiAgICB0cmFuc2Zvcm0gOiB0cmFuc2xhdGVYKC0xMHZ3KTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigyeGwpIHtcclxuICAgICAgdHJhbnNmb3JtIDogdHJhbnNsYXRlWCgtMnZ3KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICB0cmFuc2Zvcm0gOiB1bnNldDtcclxuICAgICAgbWF4LXdpZHRoIDogdW5zZXQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgcGFkZGluZy10b3AgICAgOiAycmVtO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbSA6IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnRpdGxlIGgyIHtcclxuICAgICAgZm9udC1mYW1pbHkgOiAnbmV1ZS1tb250cmVhbCcsIHNlcmlmO1xyXG4gICAgICBmb250LXdlaWdodCA6IDMwMDtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDJ4bCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b20gOiAzMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b20gOiAxNXB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZSAgICAgOiAyLjVyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIG1heC13aWR0aCA6IHVuc2V0O1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0IDogMTNyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdCA6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tICA6IDFweCBzb2xpZCAkYmxhY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gIDogMS44cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbSA6IDEuOHJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKDJ4bCkge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gIDogMS40cmVtO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tIDogMS40cmVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gIDogMXJlbTtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbSA6IDFyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbiA6IGNvbHVtbjtcclxuXHJcbiAgICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXkgICAgICAgOiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gOiAwLjVyZW07XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoICAgICAgOiAxOHJlbTtcclxuICAgICAgICAgICAgY29sb3IgICAgICAgICAgOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5ICAgIDogJ2JvZG9uaS1tb2RhJywgc2VyaWY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZSAgICAgIDogMnJlbTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0ICAgIDogNDAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodCAgICA6IDEyMCU7IC8qIDIuN3JlbSAqL1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZyA6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtIDogY2FwaXRhbGl6ZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplIDogMS44NXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemUgICAgICA6IDEuMjVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGUgICAgIDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodCAgICA6IDMwMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQgICAgOiBub3JtYWw7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtIDogY2FwaXRhbGl6ZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplIDogMXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5ibG9jay1wcmUtZm9ybS13cmFwcGVyIHtcclxuICAgIHotaW5kZXggICAgICAgICAgOiA0MDtcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiAkZGFyay1iZztcclxuXHJcbiAgICAuc2VjdGlvbi1tYWluLXRleHQge1xyXG4gICAgICBjb2xvciAgICAgICAgIDogJHdoaXRlO1xyXG4gICAgICBtYXgtd2lkdGggICAgIDogODB2dztcclxuICAgICAgbWFyZ2luICAgICAgICA6IDAgYXV0byAxMHJlbTtcclxuICAgICAgcGFkZGluZyAgICAgICA6IDEwcmVtIDE1dnc7XHJcbiAgICAgIGJvcmRlci1ib3R0b20gOiAxcHggc29saWQgd2hpdGU7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xyXG4gICAgICAgIG1heC13aWR0aCA6IDkwdnc7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgLy9tYXgtd2lkdGggICAgIDogOTB2dztcclxuICAgICAgICBtYXJnaW4tYm90dG9tICA6IDVyZW07XHJcbiAgICAgICAgcGFkZGluZy10b3AgICAgOiA1cmVtO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tIDogNXJlbTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuICAgICAgICBtYXgtd2lkdGggICAgIDogOTB2dztcclxuICAgICAgICBtYXJnaW4tYm90dG9tIDogMnJlbTtcclxuICAgICAgICBwYWRkaW5nICAgICAgIDogNHJlbSA1dnc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50ZXh0LXR5cGUtc3RkIHtcclxuICAgICAgICBjb2xvciAgICAgICA6ICR3aGl0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduICA6IGNlbnRlcjtcclxuICAgICAgICBmb250LWZhbWlseSA6ICduZXVlLW1vbnRyZWFsJywgc2VyaWY7XHJcblxyXG4gICAgICAgICYsICY6OmZpcnN0LWxldHRlciB7XHJcbiAgICAgICAgICBmb250LXNpemUgOiAxLjI1cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9udC1zdHlsZSAgOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQgOiAzMDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQgOiAyLjVyZW07IC8qIDIwMCUgKi9cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjb250YWN0LWZvcm0td3JwIHtcclxuICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTtcclxuICAgICAgdG9wICAgICAgOiAtNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdC1mb3JtIHtcclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBjb2xvciA6ICR3aGl0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmQtZmxleCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbiA6IGNvbHVtbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aXRsZSwgLmNvbnRhY3QtZm9ybS13cnAge1xyXG4gICAgICAgICAgd2lkdGggOiA1MCU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICAgICAgd2lkdGggOiAxMDAlXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0ICAgOiAxMnJlbTtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5ICAgIDogJ25ldWUtbW9udHJlYWwnLCBzZXJpZjtcclxuICAgICAgICAgIGZvbnQtc2l6ZSAgICAgIDogMy43NXJlbTtcclxuICAgICAgICAgIGZvbnQtc3R5bGUgICAgIDogbm9ybWFsO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQgICAgOiAzMDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodCAgICA6IDEyMCU7IC8qIDQuNXJlbSAqL1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmcgOiAwO1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gOiAycmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQgIDogMnJlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplICAgICA6IDIuNXJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0LWZvcm0td3JwIHtcclxuICAgICAgICAgIC53cGNmNy1mb3JtIHtcclxuXHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQgOiAxMnJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0ICA6IDJyZW07XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodCA6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mb3JtLWZpZWxkLXdycCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheSAgICAgICA6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICB3aWR0aCAgICAgICAgIDogNDklO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gOiAycmVtO1xyXG5cclxuICAgICAgICAgICAgICBpbnB1dCwgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoICAgICA6IDgwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aCA6IHVuc2V0O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aCA6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBpbnB1dCwgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgd2lkdGggOiA5MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZ290by1tYWluLXNpdGUtd3JwIHtcclxuXHJcbiAgICAgICAgbWF4LXdpZHRoICA6IDMwdnc7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgICAgICBtYXgtd2lkdGggIDogNzB2dztcclxuICAgICAgICAgIG1pbi1oZWlnaHQgOiAxMDB2aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbWFyZ2luICAgICA6IDAgYXV0bztcclxuICAgICAgICB0ZXh0LWFsaWduIDogY2VudGVyO1xyXG5cclxuICAgICAgICAudGl0bGUgaDIge1xyXG4gICAgICAgICAgbWFyZ2luICAgICAgICAgOiA4cmVtIDA7XHJcbiAgICAgICAgICBmb250LWZhbWlseSAgICA6ICdib2RvbmktbW9kYScsIHNlcmlmO1xyXG4gICAgICAgICAgZm9udC1zaXplICAgICAgOiAyLjI1cmVtO1xyXG4gICAgICAgICAgZm9udC1zdHlsZSAgICAgOiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXdlaWdodCAgICA6IDQwMDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0ICAgIDogMTIwJTsgLyogMi43cmVtICovXHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZyA6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY3RhIHtcclxuICAgICAgICAgIGhlaWdodCAgICAgICAgICAgOiAzLjEyNXJlbTtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b20gICAgOiAxMHJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tIDogN3JlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tIDogNHJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHBhZGRpbmcgICAgICAgICAgOiAwLjYyNXJlbSAyLjE4NzVyZW07XHJcbiAgICAgICAgICBtYXgtd2lkdGggICAgICAgIDogMjcwcHg7XHJcbiAgICAgICAgICBjb2xvciAgICAgICAgICAgIDogJHdoaXRlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvciA6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyICAgICAgICAgICA6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICBmb250LXNpemUgICAgICAgIDogMS4yNXJlbTtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudCAgOiBjZW50ZXI7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtcyAgICAgIDogY2VudGVyO1xyXG4gICAgICAgICAgZ2FwICAgICAgICAgICAgICA6IDAuNjI1cmVtO1xyXG4gICAgICAgICAgZmxleC1zaHJpbmsgICAgICA6IDA7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGNvbG9yICAgICAgICAgICAgOiAkYmxhY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjdmVydGljYWwtc2hpZnRpbmctdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0IDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIGRpc3BsYXkgOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0= */
