/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./assets/styles/user.scss ***!
  \****************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400&display=swap);
/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-13.use[1]!./node_modules/resolve-url-loader/index.js??clonedRuleSet-13.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-13.use[3]!./assets/styles/user.scss (1) ***!
  \********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
footer {
  background: #ecf0f1;
  margin-top: 2em;
  padding-top: 2em;
  padding-bottom: 2em;
}

footer p {
  color: #7b8a8b;
  font-size: 13px;
  margin-bottom: 0.25em;
}

footer #footer-resources {
  text-align: right;
}

footer #footer-resources i {
  color: #7b8a8b;
  font-size: 28.5px;
  margin-left: 0.5em;
}

.form-group.required .control-label:after {
  content: "*";
  color: red;
}

.modal {
  --bs-modal-zindex: 9999999;
}

/*!
 * 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: #2c3e50;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #e83e8c;
  --bs-red: #e74c3c;
  --bs-orange: #fd7e14;
  --bs-yellow: #f39c12;
  --bs-green: #18bc9c;
  --bs-teal: #20c997;
  --bs-cyan: #3498db;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #95a5a6;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #ecf0f1;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #b4bcc2;
  --bs-gray-600: #95a5a6;
  --bs-gray-700: #7b8a8b;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #2c3e50;
  --bs-secondary: #95a5a6;
  --bs-success: #18bc9c;
  --bs-info: #3498db;
  --bs-warning: #f39c12;
  --bs-danger: #e74c3c;
  --bs-light: #ecf0f1;
  --bs-dark: #7b8a8b;
  --bs-primary-rgb: 44, 62, 80;
  --bs-secondary-rgb: 149, 165, 166;
  --bs-success-rgb: 24, 188, 156;
  --bs-info-rgb: 52, 152, 219;
  --bs-warning-rgb: 243, 156, 18;
  --bs-danger-rgb: 231, 76, 60;
  --bs-light-rgb: 236, 240, 241;
  --bs-dark-rgb: 123, 138, 139;
  --bs-primary-text-emphasis: rgb(17.6, 24.8, 32);
  --bs-secondary-text-emphasis: rgb(59.6, 66, 66.4);
  --bs-success-text-emphasis: rgb(9.6, 75.2, 62.4);
  --bs-info-text-emphasis: rgb(20.8, 60.8, 87.6);
  --bs-warning-text-emphasis: rgb(97.2, 62.4, 7.2);
  --bs-danger-text-emphasis: rgb(92.4, 30.4, 24);
  --bs-light-text-emphasis: #7b8a8b;
  --bs-dark-text-emphasis: #7b8a8b;
  --bs-primary-bg-subtle: rgb(212.8, 216.4, 220);
  --bs-secondary-bg-subtle: rgb(233.8, 237, 237.2);
  --bs-success-bg-subtle: rgb(208.8, 241.6, 235.2);
  --bs-info-bg-subtle: rgb(214.4, 234.4, 247.8);
  --bs-warning-bg-subtle: rgb(252.6, 235.2, 207.6);
  --bs-danger-bg-subtle: rgb(250.2, 219.2, 216);
  --bs-light-bg-subtle: rgb(251.5, 252, 252.5);
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: rgb(170.6, 177.8, 185);
  --bs-secondary-border-subtle: rgb(212.6, 219, 219.4);
  --bs-success-border-subtle: rgb(162.6, 228.2, 215.4);
  --bs-info-border-subtle: rgb(173.8, 213.8, 240.6);
  --bs-warning-border-subtle: rgb(250.2, 215.4, 160.2);
  --bs-danger-border-subtle: rgb(245.4, 183.4, 177);
  --bs-light-border-subtle: #ecf0f1;
  --bs-dark-border-subtle: #b4bcc2;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #ecf0f1;
  --bs-secondary-bg-rgb: 236, 240, 241;
  --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: #18bc9c;
  --bs-link-color-rgb: 24, 188, 156;
  --bs-link-decoration: underline;
  --bs-link-hover-color: rgb(19.2, 150.4, 124.8);
  --bs-link-hover-color-rgb: 19, 150, 125;
  --bs-code-color: #e83e8c;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: rgb(252.6, 235.2, 207.6);
  --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(44, 62, 80, 0.25);
  --bs-form-valid-color: #18bc9c;
  --bs-form-valid-border-color: #18bc9c;
  --bs-form-invalid-color: #e74c3c;
  --bs-form-invalid-border-color: #e74c3c;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;
  --bs-tertiary-bg: rgb(42.5, 47.5, 52.5);
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: rgb(128.4, 139.2, 150);
  --bs-secondary-text-emphasis: rgb(191.4, 201, 201.6);
  --bs-success-text-emphasis: rgb(116.4, 214.8, 195.6);
  --bs-info-text-emphasis: rgb(133.2, 193.2, 233.4);
  --bs-warning-text-emphasis: rgb(247.8, 195.6, 112.8);
  --bs-danger-text-emphasis: rgb(240.6, 147.6, 138);
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: rgb(8.8, 12.4, 16);
  --bs-secondary-bg-subtle: rgb(29.8, 33, 33.2);
  --bs-success-bg-subtle: rgb(4.8, 37.6, 31.2);
  --bs-info-bg-subtle: rgb(10.4, 30.4, 43.8);
  --bs-warning-bg-subtle: rgb(48.6, 31.2, 3.6);
  --bs-danger-bg-subtle: rgb(46.2, 15.2, 12);
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: rgb(26.4, 37.2, 48);
  --bs-secondary-border-subtle: rgb(89.4, 99, 99.6);
  --bs-success-border-subtle: rgb(14.4, 112.8, 93.6);
  --bs-info-border-subtle: rgb(31.2, 91.2, 131.4);
  --bs-warning-border-subtle: rgb(145.8, 93.6, 10.8);
  --bs-danger-border-subtle: rgb(138.6, 45.6, 36);
  --bs-light-border-subtle: #7b8a8b;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: rgb(128.4, 139.2, 150);
  --bs-link-hover-color: rgb(153.72, 162.36, 171);
  --bs-link-color-rgb: 128, 139, 150;
  --bs-link-hover-color-rgb: 154, 162, 171;
  --bs-code-color: rgb(241.2, 139.2, 186);
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: rgb(97.2, 62.4, 7.2);
  --bs-border-color: #7b8a8b;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: rgb(116.4, 214.8, 195.6);
  --bs-form-valid-border-color: rgb(116.4, 214.8, 195.6);
  --bs-form-invalid-color: rgb(240.6, 147.6, 138);
  --bs-form-invalid-border-color: rgb(240.6, 147.6, 138);
}

*,
*::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.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 3rem;
  }
}

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

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

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: #95a5a6;
}
.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;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

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

.col {
  flex: 1 0 0%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.table-primary {
  --bs-table-color: #fff;
  --bs-table-bg: #2c3e50;
  --bs-table-border-color: rgb(86.2, 100.6, 115);
  --bs-table-striped-bg: rgb(54.55, 71.65, 88.75);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(65.1, 81.3, 97.5);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(59.825, 76.475, 93.125);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #fff;
  --bs-table-bg: #95a5a6;
  --bs-table-border-color: rgb(170.2, 183, 183.8);
  --bs-table-striped-bg: rgb(154.3, 169.5, 170.45);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(159.6, 174, 174.9);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(156.95, 171.75, 172.675);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #fff;
  --bs-table-bg: #18bc9c;
  --bs-table-border-color: rgb(70.2, 201.4, 175.8);
  --bs-table-striped-bg: rgb(35.55, 191.35, 160.95);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(47.1, 194.7, 165.9);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(41.325, 193.025, 163.425);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #fff;
  --bs-table-bg: #3498db;
  --bs-table-border-color: rgb(92.6, 172.6, 226.2);
  --bs-table-striped-bg: rgb(62.15, 157.15, 220.8);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(72.3, 162.3, 222.6);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(67.225, 159.725, 221.7);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #fff;
  --bs-table-bg: #f39c12;
  --bs-table-border-color: rgb(245.4, 175.8, 65.4);
  --bs-table-striped-bg: rgb(243.6, 160.95, 29.85);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(244.2, 165.9, 41.7);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(243.9, 163.425, 35.775);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #fff;
  --bs-table-bg: #e74c3c;
  --bs-table-border-color: rgb(235.8, 111.8, 99);
  --bs-table-striped-bg: rgb(232.2, 84.95, 69.75);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(233.4, 93.9, 79.5);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(232.8, 89.425, 74.625);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #ecf0f1;
  --bs-table-border-color: rgb(188.8, 192, 192.8);
  --bs-table-striped-bg: rgb(224.2, 228, 228.95);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(212.4, 216, 216.9);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(218.3, 222, 222.925);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #7b8a8b;
  --bs-table-border-color: rgb(149.4, 161.4, 162.2);
  --bs-table-striped-bg: rgb(129.6, 143.85, 144.8);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(136.2, 149.7, 150.6);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(132.9, 146.775, 147.7);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

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

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

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

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

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

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: rgb(149.5, 158.5, 167.5);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(44, 62, 80, 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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 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: rgb(149.5, 158.5, 167.5);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(44, 62, 80, 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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23dee2e6%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e");
}

.form-check {
  display: block;
  min-height: 1.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: rgb(149.5, 158.5, 167.5);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(44, 62, 80, 0.25);
}
.form-check-input:checked {
  background-color: #2c3e50;
  border-color: #2c3e50;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23fff%27/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #2c3e50;
  border-color: #2c3e50;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

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

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

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

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

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(44, 62, 80, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(44, 62, 80, 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: #2c3e50;
  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: rgb(191.7, 197.1, 202.5);
}
.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: #2c3e50;
  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: rgb(191.7, 197.1, 202.5);
}
.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: #95a5a6;
}
.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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%2318bc9c%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%2318bc9c%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
  padding-right: 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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23e74c3c%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23e74c3c%27 stroke=%27none%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23e74c3c%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23e74c3c%27 stroke=%27none%27/%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: #fff;
  --bs-btn-bg: #2c3e50;
  --bs-btn-border-color: #2c3e50;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(37.4, 52.7, 68);
  --bs-btn-hover-border-color: rgb(35.2, 49.6, 64);
  --bs-btn-focus-shadow-rgb: 76, 91, 106;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(35.2, 49.6, 64);
  --bs-btn-active-border-color: rgb(33, 46.5, 60);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #2c3e50;
  --bs-btn-disabled-border-color: #2c3e50;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #95a5a6;
  --bs-btn-border-color: #95a5a6;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(126.65, 140.25, 141.1);
  --bs-btn-hover-border-color: rgb(119.2, 132, 132.8);
  --bs-btn-focus-shadow-rgb: 165, 179, 179;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(119.2, 132, 132.8);
  --bs-btn-active-border-color: rgb(111.75, 123.75, 124.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #95a5a6;
  --bs-btn-disabled-border-color: #95a5a6;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #18bc9c;
  --bs-btn-border-color: #18bc9c;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(20.4, 159.8, 132.6);
  --bs-btn-hover-border-color: rgb(19.2, 150.4, 124.8);
  --bs-btn-focus-shadow-rgb: 59, 198, 171;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(19.2, 150.4, 124.8);
  --bs-btn-active-border-color: #128d75;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #18bc9c;
  --bs-btn-disabled-border-color: #18bc9c;
}

.btn-info {
  --bs-btn-color: #fff;
  --bs-btn-bg: #3498db;
  --bs-btn-border-color: #3498db;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(44.2, 129.2, 186.15);
  --bs-btn-hover-border-color: rgb(41.6, 121.6, 175.2);
  --bs-btn-focus-shadow-rgb: 82, 167, 224;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(41.6, 121.6, 175.2);
  --bs-btn-active-border-color: rgb(39, 114, 164.25);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #3498db;
  --bs-btn-disabled-border-color: #3498db;
}

.btn-warning {
  --bs-btn-color: #fff;
  --bs-btn-bg: #f39c12;
  --bs-btn-border-color: #f39c12;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(206.55, 132.6, 15.3);
  --bs-btn-hover-border-color: rgb(194.4, 124.8, 14.4);
  --bs-btn-focus-shadow-rgb: 245, 171, 54;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(194.4, 124.8, 14.4);
  --bs-btn-active-border-color: rgb(182.25, 117, 13.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #f39c12;
  --bs-btn-disabled-border-color: #f39c12;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #e74c3c;
  --bs-btn-border-color: #e74c3c;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(196.35, 64.6, 51);
  --bs-btn-hover-border-color: rgb(184.8, 60.8, 48);
  --bs-btn-focus-shadow-rgb: 235, 103, 89;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(184.8, 60.8, 48);
  --bs-btn-active-border-color: rgb(173.25, 57, 45);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #e74c3c;
  --bs-btn-disabled-border-color: #e74c3c;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #ecf0f1;
  --bs-btn-border-color: #ecf0f1;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(200.6, 204, 204.85);
  --bs-btn-hover-border-color: rgb(188.8, 192, 192.8);
  --bs-btn-focus-shadow-rgb: 201, 204, 205;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(188.8, 192, 192.8);
  --bs-btn-active-border-color: rgb(177, 180, 180.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ecf0f1;
  --bs-btn-disabled-border-color: #ecf0f1;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #7b8a8b;
  --bs-btn-border-color: #7b8a8b;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(142.8, 155.55, 156.4);
  --bs-btn-hover-border-color: rgb(136.2, 149.7, 150.6);
  --bs-btn-focus-shadow-rgb: 143, 156, 156;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(149.4, 161.4, 162.2);
  --bs-btn-active-border-color: rgb(136.2, 149.7, 150.6);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #7b8a8b;
  --bs-btn-disabled-border-color: #7b8a8b;
}

.btn-outline-primary {
  --bs-btn-color: #2c3e50;
  --bs-btn-border-color: #2c3e50;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #2c3e50;
  --bs-btn-hover-border-color: #2c3e50;
  --bs-btn-focus-shadow-rgb: 44, 62, 80;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #2c3e50;
  --bs-btn-active-border-color: #2c3e50;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #2c3e50;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #2c3e50;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #95a5a6;
  --bs-btn-border-color: #95a5a6;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #95a5a6;
  --bs-btn-hover-border-color: #95a5a6;
  --bs-btn-focus-shadow-rgb: 149, 165, 166;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #95a5a6;
  --bs-btn-active-border-color: #95a5a6;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #95a5a6;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #95a5a6;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #18bc9c;
  --bs-btn-border-color: #18bc9c;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #18bc9c;
  --bs-btn-hover-border-color: #18bc9c;
  --bs-btn-focus-shadow-rgb: 24, 188, 156;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #18bc9c;
  --bs-btn-active-border-color: #18bc9c;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #18bc9c;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #18bc9c;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #3498db;
  --bs-btn-border-color: #3498db;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #3498db;
  --bs-btn-hover-border-color: #3498db;
  --bs-btn-focus-shadow-rgb: 52, 152, 219;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #3498db;
  --bs-btn-active-border-color: #3498db;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #3498db;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #3498db;
  --bs-gradient: none;
}

.btn-outline-warning {
  --bs-btn-color: #f39c12;
  --bs-btn-border-color: #f39c12;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #f39c12;
  --bs-btn-hover-border-color: #f39c12;
  --bs-btn-focus-shadow-rgb: 243, 156, 18;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #f39c12;
  --bs-btn-active-border-color: #f39c12;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #f39c12;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f39c12;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #e74c3c;
  --bs-btn-border-color: #e74c3c;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #e74c3c;
  --bs-btn-hover-border-color: #e74c3c;
  --bs-btn-focus-shadow-rgb: 231, 76, 60;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #e74c3c;
  --bs-btn-active-border-color: #e74c3c;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #e74c3c;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #e74c3c;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #ecf0f1;
  --bs-btn-border-color: #ecf0f1;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ecf0f1;
  --bs-btn-hover-border-color: #ecf0f1;
  --bs-btn-focus-shadow-rgb: 236, 240, 241;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ecf0f1;
  --bs-btn-active-border-color: #ecf0f1;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ecf0f1;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ecf0f1;
  --bs-gradient: none;
}

.btn-outline-dark {
  --bs-btn-color: #7b8a8b;
  --bs-btn-border-color: #7b8a8b;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #7b8a8b;
  --bs-btn-hover-border-color: #7b8a8b;
  --bs-btn-focus-shadow-rgb: 123, 138, 139;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #7b8a8b;
  --bs-btn-active-border-color: #7b8a8b;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #7b8a8b;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #7b8a8b;
  --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: #95a5a6;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 59, 198, 171;
  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: #ced4da;
  --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: #ced4da;
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: var(--bs-box-shadow);
  --bs-dropdown-link-color: #7b8a8b;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-link-hover-bg: #2c3e50;
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #2c3e50;
  --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: #95a5a6;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

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

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

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--bs-dropdown-spacer);
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: var(--bs-dropdown-spacer);
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: var(--bs-dropdown-spacer);
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: #ced4da;
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: #ced4da;
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #2c3e50;
  --bs-dropdown-link-disabled-color: #b4bcc2;
  --bs-dropdown-header-color: #b4bcc2;
}

.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: 2rem;
  --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: #95a5a6;
  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(44, 62, 80, 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: #ced4da;
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: #ced4da #ced4da transparent;
  --bs-nav-tabs-link-active-color: #18bc9c;
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: #ced4da #ced4da transparent;
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #2c3e50;
}
.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: 1rem;
  --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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%2833, 37, 41, 0.75%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%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-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    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-xxl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .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: #fff;
  --bs-navbar-hover-color: #18bc9c;
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #18bc9c;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #18bc9c;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e");
}

[data-bs-theme=dark] .navbar-toggler-icon {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23212529%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27rgb%2817.6, 24.8, 32%29%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(44, 62, 80, 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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27rgb%28128.4, 139.2, 150%29%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27rgb%28128.4, 139.2, 150%29%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e");
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0.75rem;
  --bs-breadcrumb-padding-y: 0.375rem;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: 0.25rem;
  --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: #fff;
  --bs-pagination-bg: #18bc9c;
  --bs-pagination-border-width: 0;
  --bs-pagination-border-color: transparent;
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: #fff;
  --bs-pagination-hover-bg: rgb(15.3396226415, 120.1603773585, 99.7075471698);
  --bs-pagination-hover-border-color: transparent;
  --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(44, 62, 80, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: rgb(15.3396226415, 120.1603773585, 99.7075471698);
  --bs-pagination-active-border-color: transparent;
  --bs-pagination-disabled-color: #ecf0f1;
  --bs-pagination-disabled-bg: rgb(58.5754716981, 229.9245283019, 196.4905660377);
  --bs-pagination-disabled-border-color: transparent;
  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(0 * -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: #fff;
  --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: #fff;
  --bs-progress-bar-bg: #2c3e50;
  --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: #ecf0f1;
  --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: #ecf0f1;
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #2c3e50;
  --bs-list-group-active-border-color: #2c3e50;
  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-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .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-xxl > .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-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .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: #fff;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M.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%27/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.4;
  --bs-btn-close-hover-opacity: 1;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(44, 62, 80, 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: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin: 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-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.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: #fff;
  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: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

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

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

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M11.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%27/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%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=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M4.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%27/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%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: #fff;
  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: #fff;
  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: #000;
}
.carousel-dark .carousel-caption {
  color: #000;
}

[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: #000;
}
[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {
  color: #000;
}

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

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

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.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, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 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: #fff !important;
  background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

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

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

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

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

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

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

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

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-primary:hover, .link-primary:focus {
  color: RGBA(35, 50, 64, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(35, 50, 64, 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(119, 132, 133, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(119, 132, 133, 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(19, 150, 125, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(19, 150, 125, 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(42, 122, 175, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(42, 122, 175, 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(194, 125, 14, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(194, 125, 14, 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(185, 61, 48, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(185, 61, 48, 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(240, 243, 244, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(240, 243, 244, 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(98, 110, 111, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(98, 110, 111, 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-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

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

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

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

.shadow {
  box-shadow: var(--bs-box-shadow) !important;
}

.shadow-sm {
  box-shadow: var(--bs-box-shadow-sm) !important;
}

.shadow-lg {
  box-shadow: var(--bs-box-shadow-lg) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.focus-ring-primary {
  --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
  --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
  --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
  --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
  --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
  --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
  --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
  --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.border {
  border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

.border-top {
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

.border-end {
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

.border-bottom {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

.border-start {
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

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

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

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

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

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

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

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

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

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

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

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

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

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

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

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

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

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

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

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

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

.align-self-stretch {
  align-self: stretch !important;
}

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

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

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

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

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

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

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

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

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

.m-1 {
  margin: 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.425rem + 2.1vw) !important;
}

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

.fs-3 {
  font-size: calc(1.325rem + 0.9vw) !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-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .object-fit-xxl-contain {
    object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    object-fit: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xxl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xxl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xxl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xxl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xxl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-xxl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-xxl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-xxl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-xxl-5 {
    column-gap: 3rem !important;
  }
  .text-xxl-start {
    text-align: left !important;
  }
  .text-xxl-end {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 3rem !important;
  }
  .fs-2 {
    font-size: 2.5rem !important;
  }
  .fs-3 {
    font-size: 2rem !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;
  }
}
.pagination a:hover {
  text-decoration: none;
}

.badge.bg-light {
  color: #7b8a8b;
}

.alert {
  color: #fff;
  border: none;
}
.alert a,
.alert .alert-link {
  color: #fff;
  text-decoration: underline;
}
.alert-primary {
  background-color: #2c3e50;
}
.alert-secondary {
  background-color: #95a5a6;
}
.alert-success {
  background-color: #18bc9c;
}
.alert-info {
  background-color: #3498db;
}
.alert-warning {
  background-color: #f39c12;
}
.alert-danger {
  background-color: #e74c3c;
}
.alert-light {
  background-color: #ecf0f1;
}
.alert-dark {
  background-color: #7b8a8b;
}
.alert-light,
.alert-light a,
.alert-light .alert-link {
  color: #212529;
}

.modal .btn-close,
.toast .btn-close,
.offcanvas .btn-close {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23000%27%3e%3cpath d=%27M.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%27/%3e%3c/svg%3e");
}

/* theme */
.categoryFilter .form-check {
  padding-left: 0px;
}

.max-width-50 {
  max-width: 50%;
}

/* pentru conversații */
:root {
  --body-bg: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  --msger-bg: #fff;
  --border: 2px solid #ddd;
  --left-msg-bg: #ececec;
  --right-msg-bg: #499341;
}

.remove-image-form {
  margin-top: 15px;
}

.tag.price {
  line-height: 1;
}
.tag.price strong {
  color: #000000;
  font-weight: 600;
}

.my-properties .heading {
  display: inline-block;
}

tr.incative-state {
  opacity: 0.7;
}

.form-check .form-check {
  padding-right: 15px;
}

.image-property-container {
  position: relative;
  width: 100%;
  height: 100%;
  display: inline-block;
  min-height: 60px;
  text-align: center;
}

.thumnail_item {
  margin-bottom: 20px;
}
.thumnail_item .img-fluid {
  margin-bottom: 10px;
  border: 1px solid #ddd;
  padding: 3px;
}
.thumnail_item .img-fluid img {
  max-width: 100%;
}
.thumnail_item .btn-icon-custom {
  border: none;
  padding: 3px 10px 2px 10px;
  background: #dc3545;
  font-size: 12px;
  position: absolute;
  top: -10px;
  right: 15px;
  text-transform: none;
}

.live__scroll {
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: 30px;
}

.scroll_listing_item {
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 15px;
}

.scroll_item {
  position: relative;
  width: 220px;
  flex: 0 0 220px;
  padding: 0 15px;
}

.scroll_item img {
  border: 1px solid red;
}

.scroll_item .btn {
  position: absolute;
  top: 15px;
  right: 31px;
  background-color: red;
  color: white;
  font-size: 12px;
  padding: 8px 12px;
  border: none;
  cursor: pointer;
  border-radius: 5px;
  text-align: center;
}

.scroll_item .btn:hover {
  background-color: black;
}

.image-profile-container .icon-photo-hover {
  opacity: 0;
  animation: fadeOut 0.2s both ease;
  background-image: url(/build/images/photo.730ce596.svg);
  background-position: center;
  background-repeat: no-repeat;
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: -23px;
  left: 50%;
  margin-left: -20px;
}
.image-profile-container:hover .icon-photo-hover {
  display: inline-block;
  opacity: 1;
  animation: fadeIn 0.3s both ease;
}

.my-properties table tbody tr td .actions .edit {
  float: inherit;
}

.my-properties .table tr:last-child td {
  border: none;
}

.current-avatar {
  border-top: 1px solid #f6f6f6;
  padding-top: 15px;
  margin-top: 15px;
}
.current-avatar img {
  display: inline-block;
  padding: 5px;
  border: 1px solid #f6f6f6;
  border-radius: 5px;
}

.my-messages {
  background: #FFFFFF;
  box-shadow: 0 0 20px rgba(38, 38, 38, 0.2);
  padding-top: 30px;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
@media (max-width: 575.98px) {
  .my-messages {
    padding-top: 15px;
    margin-top: 15px;
  }
}
.my-messages .heading {
  padding-left: 30px;
  display: inline-block;
}
@media (max-width: 575.98px) {
  .my-messages .heading {
    padding-left: 15px;
    margin-bottom: 15px;
  }
}
.my-messages .top-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.my-messages .property-title {
  font-size: 18px;
  font-weight: 500;
  color: #202020;
  padding-bottom: 8px;
}
.my-messages .inner-box {
  width: 100%;
  margin-bottom: 0;
}
.my-messages .inner-box .property-features {
  columns: 2;
}

.conversation-list {
  height: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.conversation-list .conversation-item:last-child {
  border-bottom: none;
}
.conversation-list .paginate-loader {
  display: flex;
  justify-content: center;
  flex-direction: row;
  padding: 15px;
}
.conversation-list .paginate-loader a.loadMoreMsg {
  width: 100%;
  text-align: center;
  color: #727272;
  background: #f8f8f8;
  padding: 7px;
}

.conversation-inf {
  display: flex;
  flex-direction: row;
  flex: 1;
}
@media (max-width: 575.98px) {
  .conversation-inf {
    flex-direction: column;
  }
}

.conversation-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 15px 30px;
  border-bottom: 1px solid #fbfbfb;
  border-top: 1px solid #ededed;
  position: relative;
  background: #fcfcfe;
}
@media (max-width: 767.98px) {
  .conversation-item {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.conversation-item.is-owner {
  background: #f8f8f8;
}
.conversation-item .general-info {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.conversation-item .general-info .property-id {
  min-width: 110px;
  line-height: 1;
}
.conversation-item .general-info .property-price {
  min-width: 110px;
  padding: 0 5px;
  align-self: flex-start;
  line-height: 1.2;
  font-weight: 700;
  color: #499341;
}
.conversation-item:hover {
  background: #f6f6f6;
}
.conversation-item .property-info {
  line-height: 1.5;
}
.conversation-item .conversation-user {
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-left: 5px;
  padding-left: 5px;
  line-height: 1.2;
  width: 100%;
  max-width: 140px;
}
@media (max-width: 575.98px) {
  .conversation-item .conversation-user {
    max-width: 100%;
    margin-left: 0;
    padding-left: 0;
  }
}
.conversation-item .conversation-user .customer-name {
  overflow: hidden;
  text-overflow: ellipsis;
  color: #499341;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 5px;
}
.conversation-item .conversation-user .field-msg-time span {
  font-size: 12px;
}
.conversation-item .conversation-property {
  flex: 1;
  padding-left: 21px;
  border-left: 1px solid #95c514;
  margin-left: 15px;
}
.conversation-item .conversation-property .last-message {
  color: #242424;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 5px;
}
.conversation-item .conversation-property .property-name {
  font-weight: bold;
  color: #000;
  font-size: 16px;
  flex: 1;
  width: 100%;
}
@media (max-width: 575.98px) {
  .conversation-item .conversation-property {
    margin-left: 0;
    padding-left: 0;
    padding-top: 15px;
    border: none;
  }
}
.conversation-item.seen-n .last-message {
  padding: 2px;
  position: relative;
}
.conversation-item.seen-n .last-message:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 5px;
  height: 5px;
  background: red;
  border-radius: 50%;
  top: 7px;
  left: -10px;
}
.conversation-item .property-info {
  color: #737373;
}
@media (max-width: 767.98px) {
  .conversation-item .customer-inf {
    display: none;
  }
}
.conversation-item .customer-inf img {
  max-width: 60px;
  max-height: 60px;
  background-clip: padding-box;
  border: 3px solid #fff;
  border-radius: 90%;
}
.conversation-item .customer-inf figcaption {
  display: inline-block;
  max-width: 60px;
  max-height: 60px;
  background-clip: padding-box;
  border: 3px solid #fff;
  border-radius: 90%;
}

/* Chat container */
.msger {
  display: flex;
  flex-flow: column wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 867px;
  margin: 25px 10px;
  height: calc(100% - 50px);
  border: var(--border);
  border-radius: 5px;
  background: var(--msger-bg);
  box-shadow: 0 15px 15px -5px rgba(0, 0, 0, 0.2);
}

.msger-header {
  display: flex;
  justify-content: space-between;
  padding: 10px;
  border-bottom: var(--border);
  background: #eee;
  color: #666;
}

.msger-chat {
  flex: 1;
  padding: 10px;
  display: flex;
  flex-direction: column;
  max-height: 500px;
  overflow-y: scroll;
  overflow-x: hidden;
}

.msger-chat::-webkit-scrollbar {
  width: 6px;
}

.msger-chat::-webkit-scrollbar-track {
  background: #ddd;
}

.msger-chat::-webkit-scrollbar-thumb {
  background: #bdbdbd;
}

.msg {
  display: flex;
  align-items: flex-end;
  margin-bottom: 10px;
  padding: 10px 15px;
}
.msg:hover {
  background: #f8f8f8;
  transition: ease-in-out 0.5s;
}

.msg:last-of-type {
  margin: 0;
}

.msg-img {
  width: 50px;
  height: 50px;
  margin-right: 10px;
  background: #ddd;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 50%;
}

.msg-bubble {
  max-width: 450px;
  padding: 15px;
  border-radius: 15px;
  background: var(--left-msg-bg);
}

.msg-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.msg-info-name {
  margin-right: 10px;
  font-weight: 600;
}

.msg-info-time {
  font-size: 0.85em;
}

.left-msg .msg-bubble {
  border-bottom-left-radius: 0;
}

.right-msg {
  flex-direction: row-reverse;
}

.right-msg .msg-bubble {
  background: var(--right-msg-bg);
  color: #fff;
  border-bottom-right-radius: 0;
}

.right-msg .msg-img {
  margin: 0 0 0 10px;
}

.msger-inputarea {
  display: flex;
  padding: 10px;
  border-top: var(--border);
  background: #eee;
}

.msger-inputarea * {
  padding: 10px;
  border: none;
  border-radius: 3px;
  font-size: 1em;
}

.msger-input {
  flex: 1;
  background: #ddd;
}

.msger-send-btn {
  margin-left: 10px;
  background: #499341;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.23s;
}

.msger-send-btn:hover {
  background: #28a745;
}

.msger-chat {
  background-color: #fcfcfe;
  padding-bottom: 30px;
}

.msg-text {
  line-height: 1.3;
}

.back-btn-link {
  display: inline-block;
  margin-right: 30px;
}

.property-message-details {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding-left: 30px;
  padding-right: 30px;
  border-bottom: 1px solid #f6f6f6;
  padding-bottom: 15px;
}
.property-message-details .details {
  width: 100%;
  order: 2;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-top: 5px;
}
.property-message-details .details .details-listing {
  min-width: inherit;
  padding-top: 0;
  padding-left: 0;
  padding-right: 10px;
  line-height: 1.2;
  flex: 1;
}
.property-message-details .details .details-listing:first-child {
  flex: 0;
}
.property-message-details .details .details-listing p {
  font-size: 16px;
  color: #272727;
}
.property-message-details .details .details-listing h5, .property-message-details .details .details-listing .h5 {
  margin: 0;
  font-size: 16px;
  color: #888;
}
.property-message-details .details .details-listing img {
  max-width: 80px;
  max-height: 45px;
}
.property-message-details .details .details-listing:last-child {
  padding-right: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5jc3MiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLGdCQUFnQjtBQ0FoQjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FES0Y7O0FDRkE7RUFDRTtFQUNBO0VBQ0E7QURLRjs7QUNGQTtFQUNFO0FES0Y7O0FDRkE7RUFDRTtFQUNBO0VBQ0E7QURLRjs7QUNGQTtFQUNFO0VBQ0E7QURLRjs7QUNGQTtFQUNFO0FES0Y7O0FFakNFOzs7O0VBQUE7QUNERjs7RUFTSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBT0E7RUMyT0kseUJBTEk7RURwT1I7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7RUFDQTtBSGlDRjs7QUtqSkk7RUZzSEE7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0U7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0Y7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBSGlDSjs7QU16TUE7OztFQUdFO0FONE1GOztBTTdMSTtFQU5KO0lBT007RU5pTUo7QUFDRjs7QU1wTEE7RUFDRTtFQUNBO0VGNk9JLG1DQUxJO0VFdE9SO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOdUxGOztBTTlLQTtFQUNFO0VBQ0EsY0NtbkI0QjtFRGxuQjVCO0VBQ0E7RUFDQSxhQ3luQjRCO0FQeGM5Qjs7QU12S0E7RUFDRTtFQUNBLHFCQ3dqQjRCO0VEcmpCNUIsZ0JDd2pCNEI7RUR2akI1QixnQkN3akI0QjtFRHZqQjVCO0FOd0tGOztBTXJLQTtFRnVNUTtBSjlCUjtBSTlISTtFRTNDSjtJRjhNUTtFSmpDTjtBQUNGOztBTXpLQTtFRmtNUTtBSnJCUjtBSXZJSTtFRXRDSjtJRnlNUTtFSnhCTjtBQUNGOztBTTdLQTtFRjZMUTtBSlpSO0FJaEpJO0VFakNKO0lGb01RO0VKZk47QUFDRjs7QU1qTEE7RUZ3TFE7QUpIUjtBSXpKSTtFRTVCSjtJRitMUTtFSk5OO0FBQ0Y7O0FNckxBO0VGK0tNLGtCQUxJO0FKZVY7O0FNcExBO0VGMEtNLGVBTEk7QUptQlY7O0FNN0tBO0VBQ0U7RUFDQSxtQkN3VjBCO0FQeEs1Qjs7QU10S0E7RUFDRTtFQUNBO0VBQ0E7QU55S0Y7O0FNbktBO0VBQ0U7RUFDQTtFQUNBO0FOc0tGOztBTWhLQTs7RUFFRTtBTm1LRjs7QU1oS0E7OztFQUdFO0VBQ0E7QU5tS0Y7O0FNaEtBOzs7O0VBSUU7QU5tS0Y7O0FNaEtBO0VBQ0UsZ0JDNmI0QjtBUDFSOUI7O0FNOUpBO0VBQ0U7RUFDQTtBTmlLRjs7QU0zSkE7RUFDRTtBTjhKRjs7QU10SkE7O0VBRUUsbUJDc2E0QjtBUDdROUI7O0FNakpBO0VGNkVNLGtCQUxJO0FKNkVWOztBTTlJQTtFQUNFLGlCQ3FmNEI7RURwZjVCO0VBQ0E7QU5pSkY7O0FNeElBOztFQUVFO0VGd0RJLGlCQUxJO0VFakRSO0VBQ0E7QU4ySUY7O0FNeElBO0VBQU07QU40SU47O0FNM0lBO0VBQU07QU4rSU47O0FNMUlBO0VBQ0U7RUFDQSwwQkNnTndDO0FQbkUxQztBTTNJRTtFQUNFO0FONklKOztBTWxJRTtFQUVFO0VBQ0E7QU5vSUo7O0FNN0hBOzs7O0VBSUUscUNDZ1Y0QjtFSGxVeEIsY0FMSTtBSndIVjs7QU16SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFRkVJLGtCQUxJO0FKZ0lWO0FNeEhFO0VGSEksa0JBTEk7RUVVTjtFQUNBO0FOMEhKOztBTXRIQTtFRlZNLGtCQUxJO0VFaUJSO0VBQ0E7QU55SEY7QU10SEU7RUFDRTtBTndISjs7QU1wSEE7RUFDRTtFRnRCSSxrQkFMSTtFRTZCUix3QkN5NUNrQztFRHg1Q2xDLHNDQ3k1Q2tDO0VDOXJEaEM7QVI2Wko7QU1ySEU7RUFDRTtFRjdCRSxjQUxJO0FKMEpWOztBTTdHQTtFQUNFO0FOZ0hGOztBTTFHQTs7RUFFRTtBTjZHRjs7QU1yR0E7RUFDRTtFQUNBO0FOd0dGOztBTXJHQTtFQUNFLG1CQzRYNEI7RUQzWDVCLHNCQzJYNEI7RUQxWDVCLGdDQzRaNEI7RUQzWjVCO0FOd0dGOztBTWpHQTtFQUVFO0VBQ0E7QU5tR0Y7O0FNaEdBOzs7Ozs7RUFNRTtFQUNBO0VBQ0E7QU5tR0Y7O0FNM0ZBO0VBQ0U7QU44RkY7O0FNeEZBO0VBRUU7QU4wRkY7O0FNbEZBO0VBQ0U7QU5xRkY7O0FNaEZBOzs7OztFQUtFO0VBQ0E7RUY1SEksa0JBTEk7RUVtSVI7QU5tRkY7O0FNL0VBOztFQUVFO0FOa0ZGOztBTTdFQTtFQUNFO0FOZ0ZGOztBTTdFQTtFQUdFO0FOOEVGO0FNM0VFO0VBQ0U7QU42RUo7O0FNdEVBO0VBQ0U7QU55RUY7O0FNakVBOzs7O0VBSUU7QU5vRUY7QU1qRUk7Ozs7RUFDRTtBTnNFTjs7QU0vREE7RUFDRTtFQUNBO0FOa0VGOztBTTdEQTtFQUNFO0FOZ0VGOztBTXREQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FOeURGOztBTWpEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHFCQ21ONEI7RUhwYXRCO0VFb05OO0FObURGO0FJbmFJO0VFeVdKO0lGdE1RO0VKb1FOO0FBQ0Y7QU10REU7RUFDRTtBTndESjs7QU1qREE7Ozs7Ozs7RUFPRTtBTm9ERjs7QU1qREE7RUFDRTtBTm9ERjs7QU0zQ0E7RUFDRTtFQUNBO0FOOENGOztBTXRDQTs7Ozs7OztDQUFBO0FBV0E7RUFDRTtBTnNDRjs7QU1qQ0E7RUFDRTtBTm9DRjs7QU03QkE7RUFDRTtFQUNBO0FOZ0NGOztBTTNCQTtFQUNFO0FOOEJGOztBTXpCQTtFQUNFO0FONEJGOztBTXJCQTtFQUNFO0VBQ0E7QU53QkY7O0FNaEJBO0VBQ0U7QU5tQkY7O0FNWEE7RUFDRTtBTmNGOztBU25sQkE7RUxtUU0sa0JBTEk7RUs1UFIsZ0JGd29CNEI7QVBsRDlCOztBU2psQkU7RUxnUU07RUs1UEosZ0JGeW5Ca0I7RUV4bkJsQixnQkZ3bUIwQjtBUHRCOUI7QUluZkk7RUtwR0Y7SUx1UU07RUpvVk47QUFDRjs7QVM1bEJFO0VMZ1FNO0VLNVBKLGdCRnluQmtCO0VFeG5CbEIsZ0JGd21CMEI7QVBYOUI7QUk5Zkk7RUtwR0Y7SUx1UU07RUorVk47QUFDRjs7QVN2bUJFO0VMZ1FNO0VLNVBKLGdCRnluQmtCO0VFeG5CbEIsZ0JGd21CMEI7QVBBOUI7QUl6Z0JJO0VLcEdGO0lMdVFNO0VKMFdOO0FBQ0Y7O0FTbG5CRTtFTGdRTTtFSzVQSixnQkZ5bkJrQjtFRXhuQmxCLGdCRndtQjBCO0FQVzlCO0FJcGhCSTtFS3BHRjtJTHVRTTtFSnFYTjtBQUNGOztBUzduQkU7RUxnUU07RUs1UEosZ0JGeW5Ca0I7RUV4bkJsQixnQkZ3bUIwQjtBUHNCOUI7QUkvaEJJO0VLcEdGO0lMdVFNO0VKZ1lOO0FBQ0Y7O0FTeG9CRTtFTGdRTTtFSzVQSixnQkZ5bkJrQjtFRXhuQmxCLGdCRndtQjBCO0FQaUM5QjtBSTFpQkk7RUtwR0Y7SUx1UU07RUoyWU47QUFDRjs7QVMzbkJBO0VDdkRFO0VBQ0E7QVZzckJGOztBUzNuQkE7RUM1REU7RUFDQTtBVjJyQkY7O0FTN25CQTtFQUNFO0FUZ29CRjtBUzluQkU7RUFDRSxvQkZzb0IwQjtBUE45Qjs7QVN0bkJBO0VMOE1NLGtCQUxJO0VLdk1SO0FUeW5CRjs7QVNybkJBO0VBQ0UsbUJGaVVPO0VIMUhILGtCQUxJO0FKdWJWO0FTdG5CRTtFQUNFO0FUd25CSjs7QVNwbkJBO0VBQ0U7RUFDQSxtQkZ1VE87RUgxSEgsa0JBTEk7RUt0TFIsY0VyRlM7QVg0c0JYO0FTcm5CRTtFQUNFO0FUdW5CSjs7QVl2dEJBO0VDSUU7RUFHQTtBYnF0QkY7O0FZdHRCQTtFQUNFLGdCTCtqRGtDO0VLOWpEbEMsbUNMK2pEa0M7RUs5akRsQztFSkdFO0VLUkY7RUFHQTtBYjh0QkY7O0FZaHRCQTtFQUVFO0Faa3RCRjs7QVkvc0JBO0VBQ0U7RUFDQTtBWmt0QkY7O0FZL3NCQTtFUnlQTSxrQkFMSTtFUWxQUixnQ0xrakRrQztBUGgyQnBDOztBY3B2QkU7Ozs7Ozs7RUNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZml3QkY7O0FnQjNzQkk7RUY1Q0U7SUFDRSxnQlBrZWU7RVB5UnJCO0FBQ0Y7QWdCanRCSTtFRjVDRTtJQUNFLGdCUGtlZTtFUDhSckI7QUFDRjtBZ0J0dEJJO0VGNUNFO0lBQ0UsZ0JQa2VlO0VQbVNyQjtBQUNGO0FnQjN0Qkk7RUY1Q0U7SUFDRSxpQlBrZWU7RVB3U3JCO0FBQ0Y7QWdCaHVCSTtFRjVDRTtJQUNFLGlCUGtlZTtFUDZTckI7QUFDRjtBaUJoeUJBO0VBRUk7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FqQnN5Qko7O0FpQmp5QkU7RUNOQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBbEIweUJGO0FpQnh5Qkk7RUNPRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCb3lCRjs7QWtCcnZCTTtFQUNFO0FsQnd2QlI7O0FrQnJ2Qk07RUFwQ0o7RUFDQTtBbEI2eEJGOztBa0Ivd0JFO0VBQ0U7RUFDQTtBbEJreEJKOztBa0JweEJFO0VBQ0U7RUFDQTtBbEJ1eEJKOztBa0J6eEJFO0VBQ0U7RUFDQTtBbEI0eEJKOztBa0I5eEJFO0VBQ0U7RUFDQTtBbEJpeUJKOztBa0JueUJFO0VBQ0U7RUFDQTtBbEJzeUJKOztBa0J4eUJFO0VBQ0U7RUFDQTtBbEIyeUJKOztBa0I1d0JNO0VBaERKO0VBQ0E7QWxCZzBCRjs7QWtCM3dCVTtFQWhFTjtFQUNBO0FsQiswQko7O0FrQmh4QlU7RUFoRU47RUFDQTtBbEJvMUJKOztBa0JyeEJVO0VBaEVOO0VBQ0E7QWxCeTFCSjs7QWtCMXhCVTtFQWhFTjtFQUNBO0FsQjgxQko7O0FrQi94QlU7RUFoRU47RUFDQTtBbEJtMkJKOztBa0JweUJVO0VBaEVOO0VBQ0E7QWxCdzJCSjs7QWtCenlCVTtFQWhFTjtFQUNBO0FsQjYyQko7O0FrQjl5QlU7RUFoRU47RUFDQTtBbEJrM0JKOztBa0JuekJVO0VBaEVOO0VBQ0E7QWxCdTNCSjs7QWtCeHpCVTtFQWhFTjtFQUNBO0FsQjQzQko7O0FrQjd6QlU7RUFoRU47RUFDQTtBbEJpNEJKOztBa0JsMEJVO0VBaEVOO0VBQ0E7QWxCczRCSjs7QWtCL3pCWTtFQXhEVjtBbEIyM0JGOztBa0JuMEJZO0VBeERWO0FsQiszQkY7O0FrQnYwQlk7RUF4RFY7QWxCbTRCRjs7QWtCMzBCWTtFQXhEVjtBbEJ1NEJGOztBa0IvMEJZO0VBeERWO0FsQjI0QkY7O0FrQm4xQlk7RUF4RFY7QWxCKzRCRjs7QWtCdjFCWTtFQXhEVjtBbEJtNUJGOztBa0IzMUJZO0VBeERWO0FsQnU1QkY7O0FrQi8xQlk7RUF4RFY7QWxCMjVCRjs7QWtCbjJCWTtFQXhEVjtBbEIrNUJGOztBa0J2MkJZO0VBeERWO0FsQm02QkY7O0FrQmgyQlE7O0VBRUU7QWxCbTJCVjs7QWtCaDJCUTs7RUFFRTtBbEJtMkJWOztBa0IxMkJROztFQUVFO0FsQjYyQlY7O0FrQjEyQlE7O0VBRUU7QWxCNjJCVjs7QWtCcDNCUTs7RUFFRTtBbEJ1M0JWOztBa0JwM0JROztFQUVFO0FsQnUzQlY7O0FrQjkzQlE7O0VBRUU7QWxCaTRCVjs7QWtCOTNCUTs7RUFFRTtBbEJpNEJWOztBa0J4NEJROztFQUVFO0FsQjI0QlY7O0FrQng0QlE7O0VBRUU7QWxCMjRCVjs7QWtCbDVCUTs7RUFFRTtBbEJxNUJWOztBa0JsNUJROztFQUVFO0FsQnE1QlY7O0FnQi84Qkk7RUVVRTtJQUNFO0VsQnk4Qk47RWtCdDhCSTtJQXBDSjtJQUNBO0VsQjYrQkE7RWtCLzlCQTtJQUNFO0lBQ0E7RWxCaStCRjtFa0JuK0JBO0lBQ0U7SUFDQTtFbEJxK0JGO0VrQnYrQkE7SUFDRTtJQUNBO0VsQnkrQkY7RWtCMytCQTtJQUNFO0lBQ0E7RWxCNitCRjtFa0IvK0JBO0lBQ0U7SUFDQTtFbEJpL0JGO0VrQm4vQkE7SUFDRTtJQUNBO0VsQnEvQkY7RWtCdDlCSTtJQWhESjtJQUNBO0VsQnlnQ0E7RWtCcDlCUTtJQWhFTjtJQUNBO0VsQnVoQ0Y7RWtCeDlCUTtJQWhFTjtJQUNBO0VsQjJoQ0Y7RWtCNTlCUTtJQWhFTjtJQUNBO0VsQitoQ0Y7RWtCaCtCUTtJQWhFTjtJQUNBO0VsQm1pQ0Y7RWtCcCtCUTtJQWhFTjtJQUNBO0VsQnVpQ0Y7RWtCeCtCUTtJQWhFTjtJQUNBO0VsQjJpQ0Y7RWtCNStCUTtJQWhFTjtJQUNBO0VsQitpQ0Y7RWtCaC9CUTtJQWhFTjtJQUNBO0VsQm1qQ0Y7RWtCcC9CUTtJQWhFTjtJQUNBO0VsQnVqQ0Y7RWtCeC9CUTtJQWhFTjtJQUNBO0VsQjJqQ0Y7RWtCNS9CUTtJQWhFTjtJQUNBO0VsQitqQ0Y7RWtCaGdDUTtJQWhFTjtJQUNBO0VsQm1rQ0Y7RWtCNS9CVTtJQXhEVjtFbEJ1akNBO0VrQi8vQlU7SUF4RFY7RWxCMGpDQTtFa0JsZ0NVO0lBeERWO0VsQjZqQ0E7RWtCcmdDVTtJQXhEVjtFbEJna0NBO0VrQnhnQ1U7SUF4RFY7RWxCbWtDQTtFa0IzZ0NVO0lBeERWO0VsQnNrQ0E7RWtCOWdDVTtJQXhEVjtFbEJ5a0NBO0VrQmpoQ1U7SUF4RFY7RWxCNGtDQTtFa0JwaENVO0lBeERWO0VsQitrQ0E7RWtCdmhDVTtJQXhEVjtFbEJrbENBO0VrQjFoQ1U7SUF4RFY7RWxCcWxDQTtFa0I3aENVO0lBeERWO0VsQndsQ0E7RWtCcmhDTTs7SUFFRTtFbEJ1aENSO0VrQnBoQ007O0lBRUU7RWxCc2hDUjtFa0I3aENNOztJQUVFO0VsQitoQ1I7RWtCNWhDTTs7SUFFRTtFbEI4aENSO0VrQnJpQ007O0lBRUU7RWxCdWlDUjtFa0JwaUNNOztJQUVFO0VsQnNpQ1I7RWtCN2lDTTs7SUFFRTtFbEIraUNSO0VrQjVpQ007O0lBRUU7RWxCOGlDUjtFa0JyakNNOztJQUVFO0VsQnVqQ1I7RWtCcGpDTTs7SUFFRTtFbEJzakNSO0VrQjdqQ007O0lBRUU7RWxCK2pDUjtFa0I1akNNOztJQUVFO0VsQjhqQ1I7QUFDRjtBZ0J6bkNJO0VFVUU7SUFDRTtFbEJrbkNOO0VrQi9tQ0k7SUFwQ0o7SUFDQTtFbEJzcENBO0VrQnhvQ0E7SUFDRTtJQUNBO0VsQjBvQ0Y7RWtCNW9DQTtJQUNFO0lBQ0E7RWxCOG9DRjtFa0JocENBO0lBQ0U7SUFDQTtFbEJrcENGO0VrQnBwQ0E7SUFDRTtJQUNBO0VsQnNwQ0Y7RWtCeHBDQTtJQUNFO0lBQ0E7RWxCMHBDRjtFa0I1cENBO0lBQ0U7SUFDQTtFbEI4cENGO0VrQi9uQ0k7SUFoREo7SUFDQTtFbEJrckNBO0VrQjduQ1E7SUFoRU47SUFDQTtFbEJnc0NGO0VrQmpvQ1E7SUFoRU47SUFDQTtFbEJvc0NGO0VrQnJvQ1E7SUFoRU47SUFDQTtFbEJ3c0NGO0VrQnpvQ1E7SUFoRU47SUFDQTtFbEI0c0NGO0VrQjdvQ1E7SUFoRU47SUFDQTtFbEJndENGO0VrQmpwQ1E7SUFoRU47SUFDQTtFbEJvdENGO0VrQnJwQ1E7SUFoRU47SUFDQTtFbEJ3dENGO0VrQnpwQ1E7SUFoRU47SUFDQTtFbEI0dENGO0VrQjdwQ1E7SUFoRU47SUFDQTtFbEJndUNGO0VrQmpxQ1E7SUFoRU47SUFDQTtFbEJvdUNGO0VrQnJxQ1E7SUFoRU47SUFDQTtFbEJ3dUNGO0VrQnpxQ1E7SUFoRU47SUFDQTtFbEI0dUNGO0VrQnJxQ1U7SUF4RFY7RWxCZ3VDQTtFa0J4cUNVO0lBeERWO0VsQm11Q0E7RWtCM3FDVTtJQXhEVjtFbEJzdUNBO0VrQjlxQ1U7SUF4RFY7RWxCeXVDQTtFa0JqckNVO0lBeERWO0VsQjR1Q0E7RWtCcHJDVTtJQXhEVjtFbEIrdUNBO0VrQnZyQ1U7SUF4RFY7RWxCa3ZDQTtFa0IxckNVO0lBeERWO0VsQnF2Q0E7RWtCN3JDVTtJQXhEVjtFbEJ3dkNBO0VrQmhzQ1U7SUF4RFY7RWxCMnZDQTtFa0Juc0NVO0lBeERWO0VsQjh2Q0E7RWtCdHNDVTtJQXhEVjtFbEJpd0NBO0VrQjlyQ007O0lBRUU7RWxCZ3NDUjtFa0I3ckNNOztJQUVFO0VsQityQ1I7RWtCdHNDTTs7SUFFRTtFbEJ3c0NSO0VrQnJzQ007O0lBRUU7RWxCdXNDUjtFa0I5c0NNOztJQUVFO0VsQmd0Q1I7RWtCN3NDTTs7SUFFRTtFbEIrc0NSO0VrQnR0Q007O0lBRUU7RWxCd3RDUjtFa0JydENNOztJQUVFO0VsQnV0Q1I7RWtCOXRDTTs7SUFFRTtFbEJndUNSO0VrQjd0Q007O0lBRUU7RWxCK3RDUjtFa0J0dUNNOztJQUVFO0VsQnd1Q1I7RWtCcnVDTTs7SUFFRTtFbEJ1dUNSO0FBQ0Y7QWdCbHlDSTtFRVVFO0lBQ0U7RWxCMnhDTjtFa0J4eENJO0lBcENKO0lBQ0E7RWxCK3pDQTtFa0JqekNBO0lBQ0U7SUFDQTtFbEJtekNGO0VrQnJ6Q0E7SUFDRTtJQUNBO0VsQnV6Q0Y7RWtCenpDQTtJQUNFO0lBQ0E7RWxCMnpDRjtFa0I3ekNBO0lBQ0U7SUFDQTtFbEIrekNGO0VrQmowQ0E7SUFDRTtJQUNBO0VsQm0wQ0Y7RWtCcjBDQTtJQUNFO0lBQ0E7RWxCdTBDRjtFa0J4eUNJO0lBaERKO0lBQ0E7RWxCMjFDQTtFa0J0eUNRO0lBaEVOO0lBQ0E7RWxCeTJDRjtFa0IxeUNRO0lBaEVOO0lBQ0E7RWxCNjJDRjtFa0I5eUNRO0lBaEVOO0lBQ0E7RWxCaTNDRjtFa0JsekNRO0lBaEVOO0lBQ0E7RWxCcTNDRjtFa0J0ekNRO0lBaEVOO0lBQ0E7RWxCeTNDRjtFa0IxekNRO0lBaEVOO0lBQ0E7RWxCNjNDRjtFa0I5ekNRO0lBaEVOO0lBQ0E7RWxCaTRDRjtFa0JsMENRO0lBaEVOO0lBQ0E7RWxCcTRDRjtFa0J0MENRO0lBaEVOO0lBQ0E7RWxCeTRDRjtFa0IxMENRO0lBaEVOO0lBQ0E7RWxCNjRDRjtFa0I5MENRO0lBaEVOO0lBQ0E7RWxCaTVDRjtFa0JsMUNRO0lBaEVOO0lBQ0E7RWxCcTVDRjtFa0I5MENVO0lBeERWO0VsQnk0Q0E7RWtCajFDVTtJQXhEVjtFbEI0NENBO0VrQnAxQ1U7SUF4RFY7RWxCKzRDQTtFa0J2MUNVO0lBeERWO0VsQms1Q0E7RWtCMTFDVTtJQXhEVjtFbEJxNUNBO0VrQjcxQ1U7SUF4RFY7RWxCdzVDQTtFa0JoMkNVO0lBeERWO0VsQjI1Q0E7RWtCbjJDVTtJQXhEVjtFbEI4NUNBO0VrQnQyQ1U7SUF4RFY7RWxCaTZDQTtFa0J6MkNVO0lBeERWO0VsQm82Q0E7RWtCNTJDVTtJQXhEVjtFbEJ1NkNBO0VrQi8yQ1U7SUF4RFY7RWxCMDZDQTtFa0J2MkNNOztJQUVFO0VsQnkyQ1I7RWtCdDJDTTs7SUFFRTtFbEJ3MkNSO0VrQi8yQ007O0lBRUU7RWxCaTNDUjtFa0I5MkNNOztJQUVFO0VsQmczQ1I7RWtCdjNDTTs7SUFFRTtFbEJ5M0NSO0VrQnQzQ007O0lBRUU7RWxCdzNDUjtFa0IvM0NNOztJQUVFO0VsQmk0Q1I7RWtCOTNDTTs7SUFFRTtFbEJnNENSO0VrQnY0Q007O0lBRUU7RWxCeTRDUjtFa0J0NENNOztJQUVFO0VsQnc0Q1I7RWtCLzRDTTs7SUFFRTtFbEJpNUNSO0VrQjk0Q007O0lBRUU7RWxCZzVDUjtBQUNGO0FnQjM4Q0k7RUVVRTtJQUNFO0VsQm84Q047RWtCajhDSTtJQXBDSjtJQUNBO0VsQncrQ0E7RWtCMTlDQTtJQUNFO0lBQ0E7RWxCNDlDRjtFa0I5OUNBO0lBQ0U7SUFDQTtFbEJnK0NGO0VrQmwrQ0E7SUFDRTtJQUNBO0VsQm8rQ0Y7RWtCdCtDQTtJQUNFO0lBQ0E7RWxCdytDRjtFa0IxK0NBO0lBQ0U7SUFDQTtFbEI0K0NGO0VrQjkrQ0E7SUFDRTtJQUNBO0VsQmcvQ0Y7RWtCajlDSTtJQWhESjtJQUNBO0VsQm9nREE7RWtCLzhDUTtJQWhFTjtJQUNBO0VsQmtoREY7RWtCbjlDUTtJQWhFTjtJQUNBO0VsQnNoREY7RWtCdjlDUTtJQWhFTjtJQUNBO0VsQjBoREY7RWtCMzlDUTtJQWhFTjtJQUNBO0VsQjhoREY7RWtCLzlDUTtJQWhFTjtJQUNBO0VsQmtpREY7RWtCbitDUTtJQWhFTjtJQUNBO0VsQnNpREY7RWtCditDUTtJQWhFTjtJQUNBO0VsQjBpREY7RWtCMytDUTtJQWhFTjtJQUNBO0VsQjhpREY7RWtCLytDUTtJQWhFTjtJQUNBO0VsQmtqREY7RWtCbi9DUTtJQWhFTjtJQUNBO0VsQnNqREY7RWtCdi9DUTtJQWhFTjtJQUNBO0VsQjBqREY7RWtCMy9DUTtJQWhFTjtJQUNBO0VsQjhqREY7RWtCdi9DVTtJQXhEVjtFbEJrakRBO0VrQjEvQ1U7SUF4RFY7RWxCcWpEQTtFa0I3L0NVO0lBeERWO0VsQndqREE7RWtCaGdEVTtJQXhEVjtFbEIyakRBO0VrQm5nRFU7SUF4RFY7RWxCOGpEQTtFa0J0Z0RVO0lBeERWO0VsQmlrREE7RWtCemdEVTtJQXhEVjtFbEJva0RBO0VrQjVnRFU7SUF4RFY7RWxCdWtEQTtFa0IvZ0RVO0lBeERWO0VsQjBrREE7RWtCbGhEVTtJQXhEVjtFbEI2a0RBO0VrQnJoRFU7SUF4RFY7RWxCZ2xEQTtFa0J4aERVO0lBeERWO0VsQm1sREE7RWtCaGhETTs7SUFFRTtFbEJraERSO0VrQi9nRE07O0lBRUU7RWxCaWhEUjtFa0J4aERNOztJQUVFO0VsQjBoRFI7RWtCdmhETTs7SUFFRTtFbEJ5aERSO0VrQmhpRE07O0lBRUU7RWxCa2lEUjtFa0IvaERNOztJQUVFO0VsQmlpRFI7RWtCeGlETTs7SUFFRTtFbEIwaURSO0VrQnZpRE07O0lBRUU7RWxCeWlEUjtFa0JoakRNOztJQUVFO0VsQmtqRFI7RWtCL2lETTs7SUFFRTtFbEJpakRSO0VrQnhqRE07O0lBRUU7RWxCMGpEUjtFa0J2akRNOztJQUVFO0VsQnlqRFI7QUFDRjtBZ0JwbkRJO0VFVUU7SUFDRTtFbEI2bUROO0VrQjFtREk7SUFwQ0o7SUFDQTtFbEJpcERBO0VrQm5vREE7SUFDRTtJQUNBO0VsQnFvREY7RWtCdm9EQTtJQUNFO0lBQ0E7RWxCeW9ERjtFa0Izb0RBO0lBQ0U7SUFDQTtFbEI2b0RGO0VrQi9vREE7SUFDRTtJQUNBO0VsQmlwREY7RWtCbnBEQTtJQUNFO0lBQ0E7RWxCcXBERjtFa0J2cERBO0lBQ0U7SUFDQTtFbEJ5cERGO0VrQjFuREk7SUFoREo7SUFDQTtFbEI2cURBO0VrQnhuRFE7SUFoRU47SUFDQTtFbEIyckRGO0VrQjVuRFE7SUFoRU47SUFDQTtFbEIrckRGO0VrQmhvRFE7SUFoRU47SUFDQTtFbEJtc0RGO0VrQnBvRFE7SUFoRU47SUFDQTtFbEJ1c0RGO0VrQnhvRFE7SUFoRU47SUFDQTtFbEIyc0RGO0VrQjVvRFE7SUFoRU47SUFDQTtFbEIrc0RGO0VrQmhwRFE7SUFoRU47SUFDQTtFbEJtdERGO0VrQnBwRFE7SUFoRU47SUFDQTtFbEJ1dERGO0VrQnhwRFE7SUFoRU47SUFDQTtFbEIydERGO0VrQjVwRFE7SUFoRU47SUFDQTtFbEIrdERGO0VrQmhxRFE7SUFoRU47SUFDQTtFbEJtdURGO0VrQnBxRFE7SUFoRU47SUFDQTtFbEJ1dURGO0VrQmhxRFU7SUF4RFY7RWxCMnREQTtFa0JucURVO0lBeERWO0VsQjh0REE7RWtCdHFEVTtJQXhEVjtFbEJpdURBO0VrQnpxRFU7SUF4RFY7RWxCb3VEQTtFa0I1cURVO0lBeERWO0VsQnV1REE7RWtCL3FEVTtJQXhEVjtFbEIwdURBO0VrQmxyRFU7SUF4RFY7RWxCNnVEQTtFa0JyckRVO0lBeERWO0VsQmd2REE7RWtCeHJEVTtJQXhEVjtFbEJtdkRBO0VrQjNyRFU7SUF4RFY7RWxCc3ZEQTtFa0I5ckRVO0lBeERWO0VsQnl2REE7RWtCanNEVTtJQXhEVjtFbEI0dkRBO0VrQnpyRE07O0lBRUU7RWxCMnJEUjtFa0J4ckRNOztJQUVFO0VsQjByRFI7RWtCanNETTs7SUFFRTtFbEJtc0RSO0VrQmhzRE07O0lBRUU7RWxCa3NEUjtFa0J6c0RNOztJQUVFO0VsQjJzRFI7RWtCeHNETTs7SUFFRTtFbEIwc0RSO0VrQmp0RE07O0lBRUU7RWxCbXREUjtFa0JodERNOztJQUVFO0VsQmt0RFI7RWtCenRETTs7SUFFRTtFbEIydERSO0VrQnh0RE07O0lBRUU7RWxCMHREUjtFa0JqdURNOztJQUVFO0VsQm11RFI7RWtCaHVETTs7SUFFRTtFbEJrdURSO0FBQ0Y7QW1CeDFEQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLG1CWmtZTztFWWpZUCxtQlp1c0I0QjtFWXRzQjVCO0FuQnUxREY7QW1CaDFERTtFQUNFO0VBRUE7RUFDQTtFQUNBLDJDWitzQjBCO0VZOXNCMUI7QW5CaTFESjtBbUI5MERFO0VBQ0U7QW5CZzFESjtBbUI3MERFO0VBQ0U7QW5CKzBESjs7QW1CMzBEQTtFQUNFO0FuQjgwREY7O0FtQnYwREE7RUFDRTtBbkIwMERGOztBbUJoMERFO0VBQ0U7QW5CbTBESjs7QW1CcHpERTtFQUNFO0FuQnV6REo7QW1CcHpESTtFQUNFO0FuQnN6RE47O0FtQi95REU7RUFDRTtBbkJrekRKO0FtQi95REU7RUFDRTtBbkJpekRKOztBbUJ2eURFO0VBQ0U7RUFDQTtBbkIweURKOztBbUJweURFO0VBQ0U7RUFDQTtBbkJ1eURKOztBbUIveERBO0VBQ0U7RUFDQTtBbkJreURGOztBbUIxeERFO0VBQ0U7RUFDQTtBbkI2eERKOztBb0J6NkRFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEJxNkRKOztBb0J2N0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEJtN0RKOztBb0JyOERFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEJpOERKOztBb0JuOURFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEIrOERKOztBb0JqK0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEI2OURKOztBb0IvK0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEIyK0RKOztBb0I3L0RFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEJ5L0RKOztBb0IzZ0VFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBcEJ1Z0VKOztBbUJ0M0RJO0VBQ0U7RUFDQTtBbkJ5M0ROOztBZ0JwOURJO0VHeUZBO0lBQ0U7SUFDQTtFbkIrM0RKO0FBQ0Y7QWdCMzlESTtFR3lGQTtJQUNFO0lBQ0E7RW5CcTRESjtBQUNGO0FnQmorREk7RUd5RkE7SUFDRTtJQUNBO0VuQjI0REo7QUFDRjtBZ0J2K0RJO0VHeUZBO0lBQ0U7SUFDQTtFbkJpNURKO0FBQ0Y7QWdCNytESTtFR3lGQTtJQUNFO0lBQ0E7RW5CdTVESjtBQUNGO0FxQjNqRUE7RUFDRSxxQmR1MkJzQztBUHN0Q3hDOztBcUJwakVBO0VBQ0U7RUFDQTtFQUNBO0VqQjhRSSxrQkFMSTtFaUJyUVIsZ0JkK2xCNEI7QVBzOUM5Qjs7QXFCampFQTtFQUNFO0VBQ0E7RWpCb1FJLGtCQUxJO0FKc3pEVjs7QXFCampFQTtFQUNFO0VBQ0E7RWpCOFBJLG1CQUxJO0FKNHpEVjs7QXNCbGxFQTtFQUNFLG1CZisxQnNDO0VIcmtCbEMsa0JBTEk7RWtCalJSLGdDZisxQnNDO0FQb3ZDeEM7O0F1QnhsRUE7RUFDRTtFQUNBO0VBQ0E7RW5Cd1JJLGVBTEk7RW1CaFJSLGdCaEJrbUI0QjtFZ0JqbUI1QixnQmhCeW1CNEI7RWdCeG1CNUIsMkJoQjQzQnNDO0VnQjMzQnRDO0VBQ0EsbUNoQnEzQnNDO0VnQnAzQnRDO0VBQ0E7RWZHRTtFZ0JIRSx3RURNSjtBdkJzbEVGO0F3QnhsRU07RURoQk47SUNpQlE7RXhCMmxFTjtBQUNGO0F1QnpsRUU7RUFDRTtBdkIybEVKO0F1QnpsRUk7RUFDRTtBdkIybEVOO0F1QnRsRUU7RUFDRSwyQmhCczJCb0M7RWdCcjJCcEMsbUNoQmcyQm9DO0VnQi8xQnBDLHNDaEI4MkJvQztFZ0I3MkJwQztFQUtFLGdEaEJraEJrQjtBUGtrRHhCO0F1QmhsRUU7RUFNRTtFQU1BO0VBS0E7QXZCb2tFSjtBdUIvakVFO0VBQ0U7RUFDQTtBdkJpa0VKO0F1QjdqRUU7RUFDRSxnQ2hCNDBCb0M7RWdCMTBCcEM7QXZCOGpFSjtBdUJ0akVFO0VBRUUsd0NoQjh5Qm9DO0VnQjN5QnBDO0F2QnFqRUo7QXVCampFRTtFQUNFO0VBQ0E7RUFDQSwwQmhCb3JCMEI7RWdCbnJCMUIsMkJoQnN5Qm9DO0VrQnA0QnRDLHVDbEJxaUNnQztFZ0JyOEI5QjtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDaEJnc0IwQjtFZ0IvckIxQjtFQ3pGRSxxSUQwRkY7QXZCbWpFSjtBd0J6b0VNO0VEMEVKO0lDekVNO0V4QjRvRU47QUFDRjtBdUJyakVFO0VBQ0Usd0NoQjQ3QjhCO0FQMm5DbEM7O0F1QjlpRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCaEJ3ZjRCO0VnQnZmNUIsMkJoQjJ4QnNDO0VnQjF4QnRDO0VBQ0E7RUFDQTtBdkJpakVGO0F1Qi9pRUU7RUFDRTtBdkJpakVKO0F1QjlpRUU7RUFFRTtFQUNBO0F2QitpRUo7O0F1QnBpRUE7RUFDRSxtRWhCNHdCc0M7RWdCM3dCdEM7RW5CeUlJLG1CQUxJO0VJdlFOO0FSNHFFSjtBdUJyaUVFO0VBQ0U7RUFDQTtFQUNBLHlCaEJvb0IwQjtBUG02QzlCOztBdUJuaUVBO0VBQ0UsaUVoQmd3QnNDO0VnQi92QnRDO0VuQjRISSxrQkFMSTtFSXZRTjtBUndyRUo7QXVCcGlFRTtFQUNFO0VBQ0E7RUFDQSx1QmhCMm5CMEI7QVAyNkM5Qjs7QXVCOWhFRTtFQUNFLG9FaEI2dUJvQztBUG96Q3hDO0F1QjloRUU7RUFDRSxtRWhCMHVCb0M7QVBzekN4QztBdUI3aEVFO0VBQ0UsaUVoQnV1Qm9DO0FQd3pDeEM7O0F1QjFoRUE7RUFDRSxXaEJxdUJzQztFZ0JwdUJ0QyxnRWhCOHRCc0M7RWdCN3RCdEMsaUJoQmlsQjRCO0FQNDhDOUI7QXVCM2hFRTtFQUNFO0F2QjZoRUo7QXVCMWhFRTtFQUNFO0VmdkxBO0FSb3RFSjtBdUJ6aEVFO0VBQ0U7RWY1TEE7QVJ3dEVKO0F1QnhoRUU7RUFBb0IsK0RoQjhzQmtCO0FQNjBDeEM7QXVCMWhFRTtFQUFvQiw2RGhCOHNCa0I7QVArMEN4Qzs7QTBCNXVFQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0V0QnFSSSxlQUxJO0VzQjdRUixnQm5CK2xCNEI7RW1COWxCNUIsZ0JuQnNtQjRCO0VtQnJtQjVCLDJCbkJ5M0JzQztFbUJ4M0J0QztFQUNBLG1DbkJrM0JzQztFbUJqM0J0QztFQUNBO0VBQ0EseUNuQis5QmtDO0VtQjk5QmxDLDBCbkIrOUJrQztFbUI5OUJsQztFbEJIRTtFZ0JIRSx3RUVTSjtBMUI0dUVGO0F3Qmp2RU07RUVmTjtJRmdCUTtFeEJvdkVOO0FBQ0Y7QTBCL3VFRTtFQUNFLHNDbkJzM0JvQztFbUJyM0JwQztFQUtFLGdEbkJpK0I0QjtBUDR3Q2xDO0EwQnp1RUU7RUFFRSxzQm5CNnVCMEI7RW1CNXVCMUI7QTFCMHVFSjtBMEJ2dUVFO0VBRUUsd0NuQnUxQm9DO0FQaTVDeEM7QTBCbnVFRTtFQUNFO0VBQ0E7QTFCcXVFSjs7QTBCanVFQTtFQUNFLG9CbkJzdUI0QjtFbUJydUI1Qix1Qm5CcXVCNEI7RW1CcHVCNUIsb0JuQnF1QjRCO0VIbGdCeEIsbUJBTEk7RUl2UU47QVIrd0VKOztBMEJqdUVBO0VBQ0UsbUJuQmt1QjRCO0VtQmp1QjVCLHNCbkJpdUI0QjtFbUJodUI1QixrQm5CaXVCNEI7RUh0Z0J4QixrQkFMSTtFSXZRTjtBUnV4RUo7O0EwQi90RUk7RUFDRTtBMUJrdUVOOztBMkIxeUVBO0VBQ0U7RUFDQSxrQnBCcTZCd0M7RW9CcDZCeEMsbUJwQnE2QndDO0VvQnA2QnhDLHVCcEJxNkJ3QztBUHc0QzFDO0EyQjN5RUU7RUFDRTtFQUNBO0EzQjZ5RUo7O0EyQnp5RUE7RUFDRSxvQnBCMjVCd0M7RW9CMTVCeEM7RUFDQTtBM0I0eUVGO0EyQjF5RUU7RUFDRTtFQUNBO0VBQ0E7QTNCNHlFSjs7QTJCeHlFQTtFQUNFO0VBRUE7RUFDQSxVcEIwNEJ3QztFb0J6NEJ4QyxXcEJ5NEJ3QztFb0J4NEJ4QztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkRwQjI0QndDO0VvQjE0QnhDO0EzQjB5RUY7QTJCdnlFRTtFbkIzQkU7QVJxMEVKO0EyQnR5RUU7RUFFRSxrQnBCbTRCc0M7QVBvNkMxQztBMkJweUVFO0VBQ0UsdUJwQjAzQnNDO0FQNDZDMUM7QTJCbnlFRTtFQUNFLHNDcEJzMUJvQztFb0JyMUJwQztFQUNBLGdEcEI4Zm9CO0FQdXlEeEI7QTJCbHlFRTtFQUNFLHlCaEI3Q007RWdCOENOLHFCaEI5Q007QVhrMUVWO0EyQmx5RUk7RUFJSTtBM0JpeUVSO0EyQjd4RUk7RUFJSTtBM0I0eEVSO0EyQnZ4RUU7RUFDRSx5QmhCbEVNO0VnQm1FTixxQmhCbkVNO0VnQndFSjtBM0JxeEVOO0EyQmp4RUU7RUFDRTtFQUNBO0VBQ0EsWXBCazJCdUM7QVBpN0MzQztBMkI1d0VJO0VBQ0U7RUFDQSxZcEJ5MUJxQztBUHE3QzNDOztBMkJod0VBO0VBQ0UsbUJwQm8xQmdDO0FQKzZDbEM7QTJCandFRTtFQUNFO0VBRUEsVXBCODBCOEI7RW9CNzBCOUI7RUFDQTtFQUNBO0VuQmpIQTtFZ0JIRSxpREdzSEY7QTNCa3dFSjtBd0JwM0VNO0VHMEdKO0lIekdNO0V4QnUzRU47QUFDRjtBMkJyd0VJO0VBQ0U7QTNCdXdFTjtBMkJwd0VJO0VBQ0UsaUNwQjYwQjRCO0VvQngwQjFCO0EzQmt3RVI7QTJCN3ZFRTtFQUNFLG9CcEJ3ekI4QjtFb0J2ekI5QjtBM0IrdkVKO0EyQjd2RUk7RUFDRTtFQUNBO0EzQit2RU47O0EyQjF2RUE7RUFDRTtFQUNBLGtCcEJzeUJnQztBUHU5Q2xDOztBMkIxdkVBO0VBQ0U7RUFDQTtFQUNBO0EzQjZ2RUY7QTJCenZFSTtFQUNFO0VBQ0E7RUFDQSxhcEJzcEJ3QjtBUHFtRDlCOztBMkJwdkVJO0VBQ0U7QTNCdXZFTjs7QTRCMTZFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCNjZFRjtBNEIzNkVFO0VBQ0U7QTVCNjZFSjtBNEJ6NkVJO0VBQTBCLGdFckI4Z0NhO0FQODVDM0M7QTRCMzZFSTtFQUEwQixnRXJCNmdDYTtBUGk2QzNDO0E0QjM2RUU7RUFDRTtBNUI2NkVKO0E0QjE2RUU7RUFDRSxXckIrL0J1QztFcUI5L0J2QyxZckI4L0J1QztFcUI3L0J2QztFQUNBO0VIMUJGLHlCZGlCUTtFaUJXTixTckI2L0J1QztFQzFnQ3ZDO0VnQkhFLDRHSW1CRjtBNUIyNkVKO0F3QjE3RU07RUlNSjtJSkxNO0V4QjY3RU47QUFDRjtBNEI5NkVJO0VIakNGLDBDbEI4aEN5QztBUG83QzNDO0E0QjU2RUU7RUFDRSxXckJ3K0I4QjtFcUJ2K0I5QixjckJ3K0I4QjtFcUJ2K0I5QjtFQUNBLGVyQnUrQjhCO0VxQnQrQjlCLHdDckJ1K0I4QjtFcUJ0K0I5QjtFcEI3QkE7QVI0OEVKO0E0QjE2RUU7RUFDRSxXckJvK0J1QztFcUJuK0J2QyxZckJtK0J1QztFcUJsK0J2QztFSHBERix5QmRpQlE7RWlCcUNOLFNyQm0rQnVDO0VDMWdDdkM7RWdCSEUsNEdJNkNGO0E1QjI2RUo7QXdCcDlFTTtFSWlDSjtJSmhDTTtFeEJ1OUVOO0FBQ0Y7QTRCOTZFSTtFSDNERiwwQ2xCOGhDeUM7QVA4OEMzQztBNEI1NkVFO0VBQ0UsV3JCODhCOEI7RXFCNzhCOUIsY3JCODhCOEI7RXFCNzhCOUI7RUFDQSxlckI2OEI4QjtFcUI1OEI5Qix3Q3JCNjhCOEI7RXFCNThCOUI7RXBCdkRBO0FScytFSjtBNEIxNkVFO0VBQ0U7QTVCNDZFSjtBNEIxNkVJO0VBQ0UsMkNyQmc5QnFDO0FQNDlDM0M7QTRCejZFSTtFQUNFLDJDckI0OEJxQztBUCs5QzNDOztBNkJsZ0ZBO0VBQ0U7QTdCcWdGRjtBNkJuZ0ZFOzs7RUFHRSx1RHRCd2lDb0M7RXNCdmlDcEMsMkR0QnVpQ29DO0VzQnRpQ3BDLGlCdEJ1aUNvQztBUDg5Q3hDO0E2QmxnRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFTFJFLGdFS1NGO0E3Qm9nRko7QXdCemdGTTtFS1RKO0lMVU07RXhCNGdGTjtBQUNGO0E2QnRnRkU7O0VBRUU7QTdCd2dGSjtBNkJ0Z0ZJOztFQUNFO0E3QnlnRk47QTZCdGdGSTs7O0VBRUUscUJ0QjRnQ2tDO0VzQjNnQ2xDLHdCdEI0Z0NrQztBUDYvQ3hDO0E2QnRnRkk7O0VBQ0UscUJ0QnVnQ2tDO0VzQnRnQ2xDLHdCdEJ1Z0NrQztBUGtnRHhDO0E2QnJnRkU7RUFDRSxxQnRCaWdDb0M7RXNCaGdDcEMsd0J0QmlnQ29DO0FQc2dEeEM7QTZCaGdGSTs7OztFQUNFO0VBQ0EsOER0QjIvQmtDO0FQMGdEeEM7QTZCbmdGTTs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBLGF0Qm0vQmdDO0VzQmwvQmhDO0VBQ0EsbUN0QmcwQmdDO0VDaDNCcEM7QVJ5akZKO0E2QmxnRkk7RUFDRTtFQUNBLDhEdEIwK0JrQztBUDBoRHhDO0E2Qi8vRUk7RUFDRTtBN0JpZ0ZOO0E2QjcvRUU7O0VBRUUsY2xCekVPO0FYd2tGWDtBNkI3L0VJOztFQUNFLHdDdEIweUJrQztBUHN0RHhDOztBOEJ2bEZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUIwbEZGO0E4QnhsRkU7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0E5QjBsRko7QThCdGxGRTs7O0VBR0U7QTlCd2xGSjtBOEJsbEZFO0VBQ0U7RUFDQTtBOUJvbEZKO0E4QmxsRkk7RUFDRTtBOUJvbEZOOztBOEJ6a0ZBO0VBQ0U7RUFDQTtFQUNBO0UxQjhPSSxlQUxJO0UwQnZPUixnQnZCeWpCNEI7RXVCeGpCNUIsZ0J2QmdrQjRCO0V1Qi9qQjVCLDJCdkJtMUJzQztFdUJsMUJ0QztFQUNBO0VBQ0EsdUN2QjA2QnNDO0V1Qno2QnRDO0V0QnRDRTtBUm1uRko7O0E4Qm5rRkE7Ozs7RUFJRTtFMUJ3Tkksa0JBTEk7RUl2UU47QVI0bkZKOztBOEJua0ZBOzs7O0VBSUU7RTFCK01JLG1CQUxJO0VJdlFOO0FScW9GSjs7QThCbmtGQTs7RUFFRTtBOUJza0ZGOztBOEJ6akZJOzs7O0V0QmpFQTtFQUNBO0FSaW9GSjtBOEJ4akZJOzs7O0V0QjFFQTtFQUNBO0FSd29GSjtBOEJsakZFO0VBQ0U7RXRCMUVBO0VBQ0E7QVIrbkZKO0E4QmxqRkU7O0V0QjlFRTtFQUNBO0FSb29GSjs7QStCNXBGRTtFQUNFO0VBQ0E7RUFDQSxtQnhCdTBCb0M7RUhya0JsQyxrQkFMSTtFMkIxUE4saUN4QmtqQ3FCO0FQNG1EekI7O0ErQjNwRkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFM0JxUEUsbUJBTEk7RTJCN09OLFd4QnFpQ3FCO0V3QnBpQ3JCLG1DeEJvaUNxQjtFQy9qQ3JCO0FSeXJGSjs7QStCenBGSTs7OztFQUVFO0EvQjhwRk47O0ErQjdzRkk7RUFxREUsK0N4QnVoQ21CO0V3QnBoQ2pCLG9DeEI4MUJnQztFd0I3MUJoQztFQUNBO0VBQ0E7RUFDQTtBL0IwcEZSO0ErQnZwRk07RUFDRSwrQ3hCNGdDaUI7RXdCdmdDZiwyRHhCdWdDZTtBUDhvRHpCOztBK0IxdEZJO0VBK0VJLG9DeEJ1MEJnQztFd0J0MEJoQztBL0Irb0ZSOztBK0IvdEZJO0VBdUZFLCtDeEJxL0JtQjtBUHVwRHpCO0ErQnpvRlE7RUFFRTtFQUNBLHVCeEJxNUI4QjtFd0JwNUI5QjtFQUNBO0EvQjBvRlY7QStCdG9GTTtFQUNFLCtDeEJ3K0JpQjtFd0JuK0JmLDJEeEJtK0JlO0FQaXFEekI7O0ErQjd1Rkk7RUFrSEk7QS9CK25GUjs7QStCanZGSTtFQXlIRSwrQ3hCbTlCbUI7QVB5cUR6QjtBK0IxbkZNO0VBQ0UsNEN4Qmc5QmlCO0FQNHFEekI7QStCem5GTTtFQUNFLDJEeEI0OEJpQjtBUCtxRHpCO0ErQnhuRk07RUFDRSxpQ3hCdzhCaUI7QVBrckR6Qjs7QStCcm5GSTtFQUNFO0EvQnduRk47O0ErQmx3Rkk7Ozs7O0VBb0pNO0EvQnNuRlY7O0ErQnR2RkU7RUFDRTtFQUNBO0VBQ0EsbUJ4QnUwQm9DO0VIcmtCbEMsa0JBTEk7RTJCMVBOLG1DeEJrakNxQjtBUHNzRHpCOztBK0JydkZFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNCcVBFLG1CQUxJO0UyQjdPTixXeEJxaUNxQjtFd0JwaUNyQixrQ3hCb2lDcUI7RUMvakNyQjtBUm14Rko7O0ErQm52Rkk7Ozs7RUFFRTtBL0J3dkZOOztBK0J2eUZJO0VBcURFLGlEeEJ1aENtQjtFd0JwaENqQixvQ3hCODFCZ0M7RXdCNzFCaEM7RUFDQTtFQUNBO0VBQ0E7QS9Cb3ZGUjtBK0JqdkZNO0VBQ0UsaUR4QjRnQ2lCO0V3QnZnQ2YsMER4QnVnQ2U7QVB3dUR6Qjs7QStCcHpGSTtFQStFSSxvQ3hCdTBCZ0M7RXdCdDBCaEM7QS9CeXVGUjs7QStCenpGSTtFQXVGRSxpRHhCcS9CbUI7QVBpdkR6QjtBK0JudUZRO0VBRUU7RUFDQSx1QnhCcTVCOEI7RXdCcDVCOUI7RUFDQTtBL0JvdUZWO0ErQmh1Rk07RUFDRSxpRHhCdytCaUI7RXdCbitCZiwwRHhCbStCZTtBUDJ2RHpCOztBK0J2MEZJO0VBa0hJO0EvQnl0RlI7O0ErQjMwRkk7RUF5SEUsaUR4Qm05Qm1CO0FQbXdEekI7QStCcHRGTTtFQUNFLDhDeEJnOUJpQjtBUHN3RHpCO0ErQm50Rk07RUFDRSwwRHhCNDhCaUI7QVB5d0R6QjtBK0JsdEZNO0VBQ0UsbUN4Qnc4QmlCO0FQNHdEekI7O0ErQi9zRkk7RUFDRTtBL0JrdEZOOztBK0I1MUZJOzs7OztFQXNKTTtBL0I4c0ZWOztBZ0N0MkZBO0VBRUU7RUFDQTtFQUNBO0U1QnVSSSx3QkFMSTtFNEJoUlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFNUJzUUksa0NBTEk7RTRCL1BSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFeEJqQkU7RWlCZkYsa0NPa0NxQjtFUnRCakIscUlRd0JKO0FoQ28yRkY7QXdCeDNGTTtFUWhCTjtJUmlCUTtFeEIyM0ZOO0FBQ0Y7QWdDdjJGRTtFQUNFO0VBRUE7RUFDQTtBaEN3MkZKO0FnQ3IyRkU7RUFFRTtFQUNBO0VBQ0E7QWhDczJGSjtBZ0NuMkZFO0VBQ0U7RVByREYsd0NPc0R1QjtFQUNyQjtFQUNBO0VBS0U7QWhDaTJGTjtBZ0M3MUZFO0VBQ0U7RUFDQTtFQUtFO0FoQzIxRk47QWdDdjFGRTtFQUtFO0VBQ0E7RUFHQTtBaENtMUZKO0FnQ2gxRkk7RUFLSTtBaEM4MEZSO0FnQ3owRkU7RUFLSTtBaEN1MEZOO0FnQ24wRkU7RUFHRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FoQ2swRko7O0FnQ3R6RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakN5NkZGOztBZ0N2MEZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDMDdGRjs7QWdDeDFGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzI4RkY7O0FnQ3oyRkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakM0OUZGOztBZ0MxM0ZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDNitGRjs7QWdDMzRGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzgvRkY7O0FnQzU1RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakMrZ0dGOztBZ0M3NkZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDZ2lHRjs7QWdDcDZGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQ3doR0Y7O0FnQ3I3RkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakN5aUdGOztBZ0N0OEZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDMGpHRjs7QWdDdjlGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzJrR0Y7O0FnQ3grRkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakM0bEdGOztBZ0N6L0ZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDNm1HRjs7QWdDMWdHRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQzhuR0Y7O0FnQzNoR0U7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakMrb0dGOztBZ0NoaUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsMEJ6QjhRd0M7QVBveEYxQztBZ0N4aEdFO0VBQ0U7QWhDMGhHSjtBZ0N2aEdFO0VBQ0U7QWhDeWhHSjs7QWdDOWdHQTtFQ2pKRTtFQUNBO0U3QjhOSSwyQkFMSTtFNkJ2TlI7QWpDbXFHRjs7QWdDamhHQTtFQ3JKRTtFQUNBO0U3QjhOSSw0QkFMSTtFNkJ2TlI7QWpDMHFHRjs7QWtDN3VHQTtFVmdCTSxnQ1VmSjtBbENndkdGO0F3Qjd0R007RVVwQk47SVZxQlE7RXhCZ3VHTjtBQUNGO0FrQ252R0U7RUFDRTtBbENxdkdKOztBa0MvdUdFO0VBQ0U7QWxDa3ZHSjs7QWtDOXVHQTtFQUNFO0VBQ0E7RVZESSw2QlVFSjtBbENpdkdGO0F3Qi91R007RVVMTjtJVk1RO0V4Qmt2R047QUFDRjtBa0NwdkdFO0VBQ0U7RUFDQTtFVk5FLDRCVU9GO0FsQ3N2R0o7QXdCenZHTTtFVUFKO0lWQ007RXhCNHZHTjtBQUNGOztBbUNqeEdBOzs7Ozs7RUFNRTtBbkNveEdGOztBbUNqeEdBO0VBQ0U7QW5Db3hHRjtBb0M1dkdJO0VBQ0U7RUFDQSxvQjdCNmhCd0I7RTZCNWhCeEIsdUI3QjJoQndCO0U2QjFoQnhCO0VBckNKO0VBQ0E7RUFDQTtFQUNBO0FwQ295R0Y7QW9DMXVHSTtFQUNFO0FwQzR1R047O0FtQzF4R0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UvQnVRSSw2QkFMSTtFK0JoUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0IwT0ksdUNBTEk7RStCbk9SO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFM0J6Q0U7QVJvMEdKO0FtQ3Z4R0U7RUFDRTtFQUNBO0VBQ0E7QW5DeXhHSjs7QW1DandHSTtFQUNFO0FuQ293R047QW1DbHdHTTtFQUNFO0VBQ0E7QW5Db3dHUjs7QW1DaHdHSTtFQUNFO0FuQ213R047QW1DandHTTtFQUNFO0VBQ0E7QW5DbXdHUjs7QWdCN3lHSTtFbUI0QkE7SUFDRTtFbkNxeEdKO0VtQ254R0k7SUFDRTtJQUNBO0VuQ3F4R047RW1DanhHRTtJQUNFO0VuQ214R0o7RW1DanhHSTtJQUNFO0lBQ0E7RW5DbXhHTjtBQUNGO0FnQjl6R0k7RW1CNEJBO0lBQ0U7RW5DcXlHSjtFbUNueUdJO0lBQ0U7SUFDQTtFbkNxeUdOO0VtQ2p5R0U7SUFDRTtFbkNteUdKO0VtQ2p5R0k7SUFDRTtJQUNBO0VuQ215R047QUFDRjtBZ0I5MEdJO0VtQjRCQTtJQUNFO0VuQ3F6R0o7RW1DbnpHSTtJQUNFO0lBQ0E7RW5DcXpHTjtFbUNqekdFO0lBQ0U7RW5DbXpHSjtFbUNqekdJO0lBQ0U7SUFDQTtFbkNtekdOO0FBQ0Y7QWdCOTFHSTtFbUI0QkE7SUFDRTtFbkNxMEdKO0VtQ24wR0k7SUFDRTtJQUNBO0VuQ3EwR047RW1DajBHRTtJQUNFO0VuQ20wR0o7RW1DajBHSTtJQUNFO0lBQ0E7RW5DbTBHTjtBQUNGO0FnQjkyR0k7RW1CNEJBO0lBQ0U7RW5DcTFHSjtFbUNuMUdJO0lBQ0U7SUFDQTtFbkNxMUdOO0VtQ2oxR0U7SUFDRTtFbkNtMUdKO0VtQ2oxR0k7SUFDRTtJQUNBO0VuQ20xR047QUFDRjtBbUMxMEdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5DNDBHSjtBb0NoNkdJO0VBQ0U7RUFDQSxvQjdCNmhCd0I7RTZCNWhCeEIsdUI3QjJoQndCO0U2QjFoQnhCO0VBOUJKO0VBQ0E7RUFDQTtFQUNBO0FwQ2k4R0Y7QW9DOTRHSTtFQUNFO0FwQ2c1R047O0FtQ2gxR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ20xR0o7QW9DcjdHSTtFQUNFO0VBQ0Esb0I3QjZoQndCO0U2QjVoQnhCLHVCN0IyaEJ3QjtFNkIxaEJ4QjtFQXZCSjtFQUNBO0VBQ0E7RUFDQTtBcEMrOEdGO0FvQ242R0k7RUFDRTtBcENxNkdOO0FtQzMxR0k7RUFDRTtBbkM2MUdOOztBbUN2MUdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkMwMUdKO0FvQzc4R0k7RUFDRTtFQUNBLG9CN0I2aEJ3QjtFNkI1aEJ4Qix1QjdCMmhCd0I7RTZCMWhCeEI7QXBDKzhHTjtBb0NwOEdNO0VBQ0U7QXBDczhHUjtBb0NuOEdNO0VBQ0U7RUFDQSxxQjdCMGdCc0I7RTZCemdCdEIsdUI3QndnQnNCO0U2QnZnQnRCO0VBbkNOO0VBQ0E7RUFDQTtBcEN5K0dGO0FvQ244R0k7RUFDRTtBcENxOEdOO0FtQzEyR0k7RUFDRTtBbkM0MkdOOztBbUNyMkdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkN3MkdGOztBbUNsMkdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQjVCeWI0QjtFNEJ4YjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFM0J0S0U7QVI0Z0hKO0FtQ24yR0U7RUFFRTtFVjFMRixrRFU0THVCO0FuQ20yR3pCO0FtQ2gyR0U7RUFFRTtFQUNBO0VWbE1GLG1EVW1NdUI7QW5DaTJHekI7QW1DOTFHRTtFQUVFO0VBQ0E7RUFDQTtBbkMrMUdKOztBbUN6MUdBO0VBQ0U7QW5DNDFHRjs7QW1DeDFHQTtFQUNFO0VBQ0E7RUFDQTtFL0JtRUksbUJBTEk7RStCNURSO0VBQ0E7QW5DMjFHRjs7QW1DdjFHQTtFQUNFO0VBQ0E7RUFDQTtBbkMwMUdGOztBbUN0MUdBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQ3cxR0Y7O0FxQzlrSEE7O0VBRUU7RUFDQTtFQUNBO0FyQ2lsSEY7QXFDL2tIRTs7RUFDRTtFQUNBO0FyQ2tsSEo7QXFDN2tIRTs7Ozs7Ozs7Ozs7O0VBTUU7QXJDcWxISjs7QXFDaGxIQTtFQUNFO0VBQ0E7RUFDQTtBckNtbEhGO0FxQ2psSEU7RUFDRTtBckNtbEhKOztBcUMva0hBO0U3QmhCSTtBUm1tSEo7QXFDL2tIRTs7RUFFRTtBckNpbEhKO0FxQzdrSEU7OztFN0JWRTtFQUNBO0FSNGxISjtBcUN6a0hFOzs7RTdCTkU7RUFDQTtBUm9sSEo7O0FxQzVqSEE7RUFDRTtFQUNBO0FyQytqSEY7QXFDN2pIRTtFQUdFO0FyQzZqSEo7QXFDMWpIRTtFQUNFO0FyQzRqSEo7O0FxQ3hqSEE7RUFDRTtFQUNBO0FyQzJqSEY7O0FxQ3hqSEE7RUFDRTtFQUNBO0FyQzJqSEY7O0FxQ3ZpSEE7RUFDRTtFQUNBO0VBQ0E7QXJDMGlIRjtBcUN4aUhFOztFQUVFO0FyQzBpSEo7QXFDdmlIRTs7RUFFRTtBckN5aUhKO0FxQ3JpSEU7O0U3QjFGRTtFQUNBO0FSbW9ISjtBcUNyaUhFOztFN0I3R0U7RUFDQTtBUnNwSEo7O0FzQzlxSEE7RUFFRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QzZxSEY7O0FzQzFxSEE7RUFDRTtFQUNBO0VsQ3NRSSx1Q0FMSTtFa0MvUFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFZGZJLHVHY2dCSjtBdEM2cUhGO0F3QnpySE07RWNHTjtJZEZRO0V4QjRySE47QUFDRjtBc0NockhFO0VBRUU7QXRDaXJISjtBc0M3cUhFO0VBQ0U7RUFDQSxnRC9Ca2hCb0I7QVA2cEd4QjtBc0MzcUhFO0VBRUU7RUFDQTtFQUNBO0F0QzRxSEo7O0FzQ3BxSEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0F0Q29xSEY7QXNDbHFIRTtFQUNFO0VBQ0E7RTlCN0NBO0VBQ0E7QVJrdEhKO0FzQ25xSEk7RUFHRTtFQUNBO0F0Q21xSE47QXNDL3BIRTs7RUFFRTtFQUNBO0VBQ0E7QXRDaXFISjtBc0M5cEhFO0VBRUU7RTlCakVBO0VBQ0E7QVJpdUhKOztBc0N0cEhBO0VBRUU7RUFDQTtFQUNBO0F0Q3dwSEY7QXNDcnBIRTtFOUI1RkU7QVJvdkhKO0FzQ3BwSEU7O0VBRUU7RWJqSEYsb0Rha0h1QjtBdENzcEh6Qjs7QXNDN29IQTtFQUVFO0VBQ0E7RUFDQTtFQUdBO0F0QzZvSEY7QXNDM29IRTtFQUNFO0VBQ0E7RUFDQTtBdEM2b0hKO0FzQzNvSEk7RUFFRTtBdEM0b0hOO0FzQ3hvSEU7O0VBRUUsZ0IvQjBkMEI7RStCemQxQjtFQUNBO0F0QzBvSEo7O0FzQ2hvSEU7O0VBRUU7RUFDQTtBdENtb0hKOztBc0M5bkhFOztFQUVFO0VBQ0E7RUFDQTtBdENpb0hKOztBc0MzbkhFOztFQUNFO0F0QytuSEo7O0FzQ3JuSEU7RUFDRTtBdEN3bkhKO0FzQ3RuSEU7RUFDRTtBdEN3bkhKOztBdUNyekhBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNxekhGO0F1Qy95SEU7Ozs7Ozs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkN1ekhKO0F1Q255SEE7RUFDRTtFQUNBO0VBQ0E7RW5DNE5JLDJDQUxJO0VtQ3JOUjtFQUNBO0VBQ0E7QXZDcXlIRjtBdUNueUhFO0VBRUU7QXZDb3lISjs7QXVDMXhIQTtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDeXhIRjtBdUN0eEhJO0VBRUU7QXZDdXhITjtBdUNueEhFO0VBQ0U7QXZDcXhISjs7QXVDNXdIQTtFQUNFLG1CNUJwRGtDO0U0QnFEbEMsc0I1QnJEa0M7RTRCc0RsQztBdkMrd0hGO0F1Qzd3SEU7OztFQUdFO0F2Qyt3SEo7O0F1Q2x3SEE7RUFDRTtFQUNBO0VBR0E7QXZDbXdIRjs7QXVDL3ZIQTtFQUNFO0VuQ3lJSSw2Q0FMSTtFbUNsSVI7RUFDQTtFQUNBO0VBQ0E7RS9CeElFO0VnQkhFLCtDZTZJSjtBdkNrd0hGO0F3QjM0SE07RWVpSU47SWZoSVE7RXhCODRITjtBQUNGO0F1Q3J3SEU7RUFDRTtBdkN1d0hKO0F1Q3B3SEU7RUFDRTtFQUNBO0VBQ0E7QXZDc3dISjs7QXVDaHdIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDbXdIRjs7QXVDaHdIQTtFQUNFO0VBQ0E7QXZDbXdIRjs7QWdCNzNISTtFdUJzSUE7SUFFSTtJQUNBO0V2QzB2SE47RXVDeHZITTtJQUNFO0V2QzB2SFI7RXVDeHZIUTtJQUNFO0V2QzB2SFY7RXVDdnZIUTtJQUNFO0lBQ0E7RXZDeXZIVjtFdUNydkhNO0lBQ0U7RXZDdXZIUjtFdUNwdkhNO0lBQ0U7SUFDQTtFdkNzdkhSO0V1Q252SE07SUFDRTtFdkNxdkhSO0V1Q2x2SE07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5TkosZ0JlZ09JO0V2Q2t2SFI7RXVDL3VIUTtJQUNFO0V2Q2l2SFY7RXVDOXVIUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V2Q2d2SFY7QUFDRjtBZ0I3NkhJO0V1QnNJQTtJQUVJO0lBQ0E7RXZDeXlITjtFdUN2eUhNO0lBQ0U7RXZDeXlIUjtFdUN2eUhRO0lBQ0U7RXZDeXlIVjtFdUN0eUhRO0lBQ0U7SUFDQTtFdkN3eUhWO0V1Q3B5SE07SUFDRTtFdkNzeUhSO0V1Q255SE07SUFDRTtJQUNBO0V2Q3F5SFI7RXVDbHlITTtJQUNFO0V2Q295SFI7RXVDanlITTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSixnQmVnT0k7RXZDaXlIUjtFdUM5eEhRO0lBQ0U7RXZDZ3lIVjtFdUM3eEhRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXZDK3hIVjtBQUNGO0FnQjU5SEk7RXVCc0lBO0lBRUk7SUFDQTtFdkN3MUhOO0V1Q3QxSE07SUFDRTtFdkN3MUhSO0V1Q3QxSFE7SUFDRTtFdkN3MUhWO0V1Q3IxSFE7SUFDRTtJQUNBO0V2Q3UxSFY7RXVDbjFITTtJQUNFO0V2Q3ExSFI7RXVDbDFITTtJQUNFO0lBQ0E7RXZDbzFIUjtFdUNqMUhNO0lBQ0U7RXZDbTFIUjtFdUNoMUhNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KLGdCZWdPSTtFdkNnMUhSO0V1QzcwSFE7SUFDRTtFdkMrMEhWO0V1QzUwSFE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFdkM4MEhWO0FBQ0Y7QWdCM2dJSTtFdUJzSUE7SUFFSTtJQUNBO0V2Q3U0SE47RXVDcjRITTtJQUNFO0V2Q3U0SFI7RXVDcjRIUTtJQUNFO0V2Q3U0SFY7RXVDcDRIUTtJQUNFO0lBQ0E7RXZDczRIVjtFdUNsNEhNO0lBQ0U7RXZDbzRIUjtFdUNqNEhNO0lBQ0U7SUFDQTtFdkNtNEhSO0V1Q2g0SE07SUFDRTtFdkNrNEhSO0V1Qy8zSE07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5TkosZ0JlZ09JO0V2QyszSFI7RXVDNTNIUTtJQUNFO0V2QzgzSFY7RXVDMzNIUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V2QzYzSFY7QUFDRjtBZ0IxaklJO0V1QnNJQTtJQUVJO0lBQ0E7RXZDczdITjtFdUNwN0hNO0lBQ0U7RXZDczdIUjtFdUNwN0hRO0lBQ0U7RXZDczdIVjtFdUNuN0hRO0lBQ0U7SUFDQTtFdkNxN0hWO0V1Q2o3SE07SUFDRTtFdkNtN0hSO0V1Q2g3SE07SUFDRTtJQUNBO0V2Q2s3SFI7RXVDLzZITTtJQUNFO0V2Q2k3SFI7RXVDOTZITTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSixnQmVnT0k7RXZDODZIUjtFdUMzNkhRO0lBQ0U7RXZDNjZIVjtFdUMxNkhRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXZDNDZIVjtBQUNGO0F1Q24rSEk7RUFFSTtFQUNBO0F2Q28rSFI7QXVDbCtIUTtFQUNFO0F2Q28rSFY7QXVDbCtIVTtFQUNFO0F2Q28rSFo7QXVDaitIVTtFQUNFO0VBQ0E7QXZDbStIWjtBdUMvOUhRO0VBQ0U7QXZDaStIVjtBdUM5OUhRO0VBQ0U7RUFDQTtBdkNnK0hWO0F1Qzc5SFE7RUFDRTtBdkMrOUhWO0F1QzU5SFE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWY5TkosZ0JlZ09JO0F2QzQ5SFY7QXVDejlIVTtFQUNFO0F2QzI5SFo7QXVDeDlIVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F2QzA5SFo7O0F1Q3o4SEE7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkMyOEhGOztBdUNyOEhJO0VBQ0U7QXZDdzhITjs7QXdDanVJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWhDakJFO0FSbXZJSjtBd0M5dElFO0VBQ0U7RUFDQTtBeENndUlKO0F3Qzd0SUU7RUFDRTtFQUNBO0F4Qyt0SUo7QXdDN3RJSTtFQUNFO0VoQ3RCRjtFQUNBO0FSc3ZJSjtBd0M3dElJO0VBQ0U7RWhDYkY7RUFDQTtBUjZ1SUo7QXdDMXRJRTs7RUFFRTtBeEM0dElKOztBd0N4dElBO0VBR0U7RUFDQTtFQUNBO0F4Q3l0SUY7O0F3Q3R0SUE7RUFDRTtFQUNBO0F4Q3l0SUY7O0F3Q3R0SUE7RUFDRTtFQUNBO0VBQ0E7QXhDeXRJRjs7QXdDdHRJQTtFQUNFO0F4Q3l0SUY7O0F3Q2p0SUU7RUFDRTtBeENvdElKOztBd0M1c0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEMrc0lGO0F3QzdzSUU7RWhDN0ZFO0FSNnlJSjs7QXdDM3NJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4QzhzSUY7QXdDNXNJRTtFaEN4R0U7QVJ1eklKOztBd0Nyc0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDd3NJRjtBd0N0c0lFO0VBQ0U7RUFDQTtBeEN3c0lKOztBd0Nwc0lBO0VBQ0U7RUFDQTtBeEN1c0lGOztBd0Nuc0lBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQzFJRTtBUmkxSUo7O0F3Q25zSUE7OztFQUdFO0F4Q3NzSUY7O0F3Q25zSUE7O0VoQzNJSTtFQUNBO0FSbTFJSjs7QXdDcHNJQTs7RWhDbElJO0VBQ0E7QVIyMElKOztBd0M3cklFO0VBQ0U7QXhDZ3NJSjtBZ0IzeklJO0V3QnVISjtJQVFJO0lBQ0E7RXhDZ3NJRjtFd0M3cklFO0lBRUU7SUFDQTtFeEM4cklKO0V3QzVySUk7SUFDRTtJQUNBO0V4QzhySU47RXdDenJJTTtJaEMzS0o7SUFDQTtFUnUySUY7RXdDMXJJUTs7SUFHRTtFeEMycklWO0V3Q3pySVE7O0lBR0U7RXhDMHJJVjtFd0N0cklNO0loQzVLSjtJQUNBO0VScTJJRjtFd0N2cklROztJQUdFO0V4Q3dySVY7RXdDdHJJUTs7SUFHRTtFeEN1cklWO0FBQ0Y7O0F5QzU1SUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDODVJRjs7QXlDMTVJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXJDNFBJLGVBTEk7RXFDclBSO0VBQ0E7RUFDQTtFQUNBO0VqQ3JCRTtFaUN1QkY7RWpCMUJJLDBDaUIyQko7QXpDNjVJRjtBd0JwN0lNO0VpQlVOO0lqQlRRO0V4QnU3SU47QUFDRjtBeUNoNklFO0VBQ0U7RUFDQTtFQUNBO0F6Q2s2SUo7QXlDaDZJSTtFQUNFO0VBQ0E7QXpDazZJTjtBeUM3NUlFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFakJqREUsbURpQmtERjtBekMrNUlKO0F3Qjc4SU07RWlCcUNKO0lqQnBDTTtFeEJnOUlOO0FBQ0Y7QXlDajZJRTtFQUNFO0F6Q202SUo7QXlDaDZJRTtFQUNFO0VBQ0E7RUFDQTtBekNrNklKOztBeUM5NUlBO0VBQ0U7QXpDaTZJRjs7QXlDOTVJQTtFQUNFO0VBQ0E7RUFDQTtBekNpNklGO0F5Qy81SUU7RWpDN0RFO0VBQ0E7QVIrOUlKO0F5Q2g2SUk7RWpDaEVBO0VBQ0E7QVJtK0lKO0F5Qy81SUU7RUFDRTtBekNpNklKO0F5Qzc1SUU7RWpDNURFO0VBQ0E7QVI0OUlKO0F5Qzc1SU07RWpDaEVGO0VBQ0E7QVJnK0lKO0F5QzU1SUk7RWpDckVBO0VBQ0E7QVJvK0lKOztBeUMxNUlBO0VBQ0U7QXpDNjVJRjs7QXlDcDVJRTtFQUNFO0VBQ0E7RWpDOUdBO0FSc2dKSjtBeUNyNUlJO0VBQWdCO0F6Q3c1SXBCO0F5Q3Y1SUk7RUFBZTtBekMwNUluQjtBeUN0NUlNO0VqQ3RIRjtBUitnSko7QXlDbDVJSTtFakM3SEE7QVJraEpKOztBeUM3NElJO0VBQ0U7RUFDQTtBekNnNUlOOztBMEMxaUpBO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0V0QytRSSx5Q0FMSTtFc0N4UVI7RUFDQTtFbENBRTtBUjBpSko7O0EwQ3BpSkU7RUFDRTtBMUN1aUpKO0EwQ3JpSkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUN1aUpOO0EwQ25pSkU7RUFDRTtBMUNxaUpKOztBMkMxa0pBO0VBRUU7RUFDQTtFdkM0UkksK0JBTEk7RXVDclJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFakNwQkE7RUFDQTtBVitsSkY7O0EyQ3hrSkE7RUFDRTtFQUNBO0VBQ0E7RXZDZ1FJLHlDQUxJO0V1Q3pQUjtFQUNBO0VBQ0E7RUFDQTtFbkJwQkkscUltQnFCSjtBM0Mya0pGO0F3QjVsSk07RW1CUU47SW5CUFE7RXhCK2xKTjtBQUNGO0EyQzlrSkU7RUFDRTtFQUNBO0VBRUE7RUFDQTtBM0Mra0pKO0EyQzVrSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxVcEMydUNnQztFb0MxdUNoQztBM0M4a0pKO0EyQzNrSkU7RUFFRTtFQUNBO0VsQnRERixnRGtCdUR1QjtFQUNyQjtBM0M0a0pKO0EyQ3prSkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBM0Mwa0pKOztBMkNya0pFO0VBQ0UseUJwQzhzQ2dDO0FQMDNHcEM7QTJDbmtKTTtFbkM5QkY7RUFDQTtBUm9tSko7QTJDamtKTTtFbkNsREY7RUFDQTtBUnNuSko7O0EyQ3BqSkE7RUNsR0U7RUFDQTtFeEMwUkksa0NBTEk7RXdDblJSO0E1QzBwSkY7O0EyQ3ZqSkE7RUN0R0U7RUFDQTtFeEMwUkksbUNBTEk7RXdDblJSO0E1Q2lxSkY7O0E2Q25xSkE7RUFFRTtFQUNBO0V6Q3VSSSw0QkFMSTtFeUNoUlI7RUFDQTtFQUNBO0VBR0E7RUFDQTtFekMrUUksb0NBTEk7RXlDeFFSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFckNKRTtBUndxSko7QTZDL3BKRTtFQUNFO0E3Q2lxSko7O0E2QzVwSkE7RUFDRTtFQUNBO0E3QytwSkY7O0E4Qy9ySkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXRDSEU7QVJtc0pKOztBOEMzckpBO0VBRUU7QTlDNnJKRjs7QThDenJKQTtFQUNFLGdCdkM2a0I0QjtFdUM1a0I1QjtBOUM0ckpGOztBOENwckpBO0VBQ0UsbUJ2Q3MrQzhCO0FQaXRHaEM7QThDcHJKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDc3JKSjs7QThDOXFKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5Q2lySko7O0E4Q3JySkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUN3ckpKOztBOEM1ckpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlDK3JKSjs7QThDbnNKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5Q3NzSko7O0E4QzFzSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUM2c0pKOztBOENqdEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlDb3RKSjs7QThDeHRKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5QzJ0Sko7O0E4Qy90SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUNrdUpKOztBK0M5eEpFO0VBQ0U7SUFBSywyQnhDeWhEMkI7RVB5d0dsQztBQUNGO0ErQzl4SkE7O0VBR0U7RTNDa1JJLGdDQUxJO0UyQzNRUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RTNDc1FJLHVDQUxJO0UyQy9QUjtFdkNSRTtBUnN5Sko7O0ErQ3p4SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V2QnhCSSw2Q3VCeUJKO0EvQzR4SkY7QXdCanpKTTtFdUJZTjtJdkJYUTtFeEJvekpOO0FBQ0Y7O0ErQzl4SkE7RXRCQUU7RXNCRUE7QS9DaXlKRjs7QStDOXhKQTtFQUNFO0EvQ2l5SkY7O0ErQzl4SkE7RUFDRTtBL0NpeUpGOztBK0M3eEpFO0VBQ0U7QS9DZ3lKSjtBK0M3eEpNO0VBSko7SUFLTTtFL0NneUpOO0FBQ0Y7O0FnRDUxSkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUdBO0VBQ0E7RXhDWEU7QVJzMkpKOztBZ0R2MUpBO0VBQ0U7RUFDQTtBaEQwMUpGO0FnRHgxSkU7RUFFRTtFQUNBO0FoRHkxSko7O0FnRGgxSkE7RUFDRTtFQUNBO0VBQ0E7QWhEbTFKRjtBZ0RoMUpFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QWhEaTFKSjtBZ0Q5MEpFO0VBQ0U7RUFDQTtBaERnMUpKOztBZ0R4MEpBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEMjBKRjtBZ0R6MEpFO0V4Q3ZERTtFQUNBO0FSbTRKSjtBZ0R6MEpFO0V4QzdDRTtFQUNBO0FSeTNKSjtBZ0R6MEpFO0VBRUU7RUFDQTtFQUNBO0FoRDAwSko7QWdEdDBKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FoRHcwSko7QWdEcDBKRTtFQUNFO0FoRHMwSko7QWdEcDBKSTtFQUNFO0VBQ0E7QWhEczBKTjs7QWdEenpKSTtFQUNFO0FoRDR6Sk47QWdEenpKUTtFeEN2REo7RUFaQTtBUmc0Sko7QWdEeHpKUTtFeEN4RUo7RUFZQTtBUnczSko7QWdEdnpKUTtFQUNFO0FoRHl6SlY7QWdEdHpKUTtFQUNFO0VBQ0E7QWhEd3pKVjtBZ0R0ekpVO0VBQ0U7RUFDQTtBaER3ekpaOztBZ0I5NEpJO0VnQzhEQTtJQUNFO0VoRG8xSko7RWdEajFKTTtJeEN2REo7SUFaQTtFUnc1SkY7RWdEaDFKTTtJeEN4RUo7SUFZQTtFUmc1SkY7RWdELzBKTTtJQUNFO0VoRGkxSlI7RWdEOTBKTTtJQUNFO0lBQ0E7RWhEZzFKUjtFZ0Q5MEpRO0lBQ0U7SUFDQTtFaERnMUpWO0FBQ0Y7QWdCdjZKSTtFZ0M4REE7SUFDRTtFaEQ0MkpKO0VnRHoySk07SXhDdkRKO0lBWkE7RVJnN0pGO0VnRHgySk07SXhDeEVKO0lBWUE7RVJ3NkpGO0VnRHYySk07SUFDRTtFaER5MkpSO0VnRHQySk07SUFDRTtJQUNBO0VoRHcySlI7RWdEdDJKUTtJQUNFO0lBQ0E7RWhEdzJKVjtBQUNGO0FnQi83Skk7RWdDOERBO0lBQ0U7RWhEbzRKSjtFZ0RqNEpNO0l4Q3ZESjtJQVpBO0VSdzhKRjtFZ0RoNEpNO0l4Q3hFSjtJQVlBO0VSZzhKRjtFZ0QvM0pNO0lBQ0U7RWhEaTRKUjtFZ0Q5M0pNO0lBQ0U7SUFDQTtFaERnNEpSO0VnRDkzSlE7SUFDRTtJQUNBO0VoRGc0SlY7QUFDRjtBZ0J2OUpJO0VnQzhEQTtJQUNFO0VoRDQ1Sko7RWdEejVKTTtJeEN2REo7SUFaQTtFUmcrSkY7RWdEeDVKTTtJeEN4RUo7SUFZQTtFUnc5SkY7RWdEdjVKTTtJQUNFO0VoRHk1SlI7RWdEdDVKTTtJQUNFO0lBQ0E7RWhEdzVKUjtFZ0R0NUpRO0lBQ0U7SUFDQTtFaER3NUpWO0FBQ0Y7QWdCLytKSTtFZ0M4REE7SUFDRTtFaERvN0pKO0VnRGo3Sk07SXhDdkRKO0lBWkE7RVJ3L0pGO0VnRGg3Sk07SXhDeEVKO0lBWUE7RVJnL0pGO0VnRC82Sk07SUFDRTtFaERpN0pSO0VnRDk2Sk07SUFDRTtJQUNBO0VoRGc3SlI7RWdEOTZKUTtJQUNFO0lBQ0E7RWhEZzdKVjtBQUNGO0FnRG42SkE7RXhDaEpJO0FSc2pLSjtBZ0RuNkpFO0VBQ0U7QWhEcTZKSjtBZ0RuNkpJO0VBQ0U7QWhEcTZKTjs7QWdEeDVKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRDI1Sko7O0FnRHI2SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaER3NkpKOztBZ0RsN0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEcTdKSjs7QWdELzdKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRGs4Sko7O0FnRDU4SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEQrOEpKOztBZ0R6OUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhENDlKSjs7QWdEdCtKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRHkrSko7O0FnRG4vSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaERzL0pKOztBaURscktBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0EsVTFDcXBEMkI7RTBDcHBEM0IsVzFDb3BEMkI7RTBDbnBEM0I7RUFDQTtFQUNBO0VBQ0E7RXpDSkU7RXlDTUY7QWpEa3JLRjtBaUQvcUtFO0VBQ0U7RUFDQTtFQUNBO0FqRGlyS0o7QWlEOXFLRTtFQUNFO0VBQ0E7RUFDQTtBakRncktKO0FpRDdxS0U7RUFFRTtFQUNBO0VBQ0E7QWpEOHFLSjs7QWlEdHFLQTtFQUhFO0FqRDZxS0Y7O0FpRHBxS0k7RUFURjtBakRpcktGOztBa0RsdUtBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOUN5UkksOEJBTEk7RThDbFJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RTlDMlFJLG9DQUxJO0U4Q3BRUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFDUkU7QVIydUtKO0FrRGh1S0U7RUFDRTtBbERrdUtKO0FrRC90S0U7RUFDRTtBbERpdUtKOztBa0Q3dEtBO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRCt0S0Y7QWtEN3RLRTtFQUNFO0FsRCt0S0o7O0FrRDN0S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUNoQ0U7RUFDQTtBUit2S0o7QWtEN3RLRTtFQUNFO0VBQ0E7QWxEK3RLSjs7QWtEM3RLQTtFQUNFO0VBQ0E7QWxEOHRLRjs7QW1ENXhLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FuRDB4S0Y7O0FtRG54S0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBbkRxeEtGO0FtRGx4S0U7RTNCNUNJLG1DMkI2Q0Y7RUFDQSw4QjVDazhDZ0M7QVBrMUhwQztBd0I5ektNO0UyQndDSjtJM0J2Q007RXhCaTBLTjtBQUNGO0FtRHZ4S0U7RUFDRSxlNUNnOENnQztBUHkxSHBDO0FtRHJ4S0U7RUFDRSxzQjVDNjdDZ0M7QVAwMUhwQzs7QW1EbnhLQTtFQUNFO0FuRHN4S0Y7QW1EcHhLRTtFQUNFO0VBQ0E7QW5Ec3hLSjtBbURueEtFO0VBQ0U7QW5EcXhLSjs7QW1EanhLQTtFQUNFO0VBQ0E7RUFDQTtBbkRveEtGOztBbURoeEtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UzQ3JGRTtFMkN5RkY7QW5EZ3hLRjs7QW1ENXdLQTtFQUVFO0VBQ0E7RUFDQTtFQ2xIQTtFQUNBO0VBQ0E7RUFDQSxrQ0RrSDBCO0VDakgxQjtFQUNBO0VBQ0EsdUNEK0c0RDtBbkRreEs5RDtBb0Q5M0tFO0VBQVM7QXBEaTRLWDtBb0RoNEtFO0VBQVMsbUNEMkdpRjtBbkR3eEs1Rjs7QW1EbnhLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNDckdFO0VBQ0E7QVI0M0tKO0FtRHJ4S0U7RUFDRTtFQUNBO0FuRHV4S0o7O0FtRGx4S0E7RUFDRTtFQUNBO0FuRHF4S0Y7O0FtRGh4S0E7RUFDRTtFQUdBO0VBQ0E7QW5EaXhLRjs7QW1EN3dLQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTNDekhFO0VBQ0E7QVIwNEtKO0FtRDV3S0U7RUFDRTtBbkQ4d0tKOztBZ0J6M0tJO0VtQ2lIRjtJQUNFO0lBQ0E7RW5ENHdLRjtFbUR4d0tBO0lBQ0U7SUFDQTtJQUNBO0VuRDB3S0Y7RW1EdndLQTtJQUNFO0VuRHl3S0Y7QUFDRjtBZ0J4NEtJO0VtQ21JRjs7SUFFRTtFbkR3d0tGO0FBQ0Y7QWdCOTRLSTtFbUMwSUY7SUFDRTtFbkR1d0tGO0FBQ0Y7QW1EOXZLSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRGd3S047QW1EOXZLTTtFQUNFO0VBQ0E7RTNDek1KO0FSMDhLSjtBbUQ3dktNOztFM0M3TUY7QVI4OEtKO0FtRDV2S007RUFDRTtBbkQ4dktSOztBZ0J4NUtJO0VtQ3dJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRG94S0o7RW1EbHhLSTtJQUNFO0lBQ0E7STNDek1KO0VSODlLRjtFbURqeEtJOztJM0M3TUY7RVJrK0tGO0VtRGh4S0k7SUFDRTtFbkRreEtOO0FBQ0Y7QWdCNzZLSTtFbUN3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbkR3eUtKO0VtRHR5S0k7SUFDRTtJQUNBO0kzQ3pNSjtFUmsvS0Y7RW1EcnlLSTs7STNDN01GO0VScy9LRjtFbURweUtJO0lBQ0U7RW5Ec3lLTjtBQUNGO0FnQmo4S0k7RW1Dd0lBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RW5ENHpLSjtFbUQxektJO0lBQ0U7SUFDQTtJM0N6TUo7RVJzZ0xGO0VtRHp6S0k7O0kzQzdNRjtFUjBnTEY7RW1EeHpLSTtJQUNFO0VuRDB6S047QUFDRjtBZ0JyOUtJO0VtQ3dJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VuRGcxS0o7RW1EOTBLSTtJQUNFO0lBQ0E7STNDek1KO0VSMGhMRjtFbUQ3MEtJOztJM0M3TUY7RVI4aExGO0VtRDUwS0k7SUFDRTtFbkQ4MEtOO0FBQ0Y7QWdCeitLSTtFbUN3SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFbkRvMktKO0VtRGwyS0k7SUFDRTtJQUNBO0kzQ3pNSjtFUjhpTEY7RW1EajJLSTs7STNDN01GO0VSa2pMRjtFbURoMktJO0lBQ0U7RW5EazJLTjtBQUNGO0FxRHhrTEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqRHdSSSxnQ0FMSTtFaURqUlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VDbEJBLHNDL0MrbEI0QjtFK0M3bEI1QjtFQUNBLGdCL0N3bUI0QjtFK0N2bUI1QixnQi9DK21CNEI7RStDOW1CNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWxEZ1JJLHNDQUxJO0VpRGhRUjtFQUNBO0FyRGdsTEY7QXFEOWtMRTtFQUFTO0FyRGlsTFg7QXFEL2tMRTtFQUNFO0VBQ0E7RUFDQTtBckRpbExKO0FxRC9rTEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckRpbExOOztBcUQ1a0xBO0VBQ0U7QXJEK2tMRjtBcUQ3a0xFO0VBQ0U7RUFDQTtFQUNBO0FyRCtrTEo7O0FxRDNrTEE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBckQ4a0xGO0FxRDVrTEU7RUFDRTtFQUNBO0VBQ0E7QXJEOGtMSjs7QXFEMWtMQTtBQUVBO0VBQ0U7QXJENGtMRjtBcUQxa0xFO0VBQ0U7RUFDQTtFQUNBO0FyRDRrTEo7O0FxRHhrTEE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBckQya0xGO0FxRHprTEU7RUFDRTtFQUNBO0VBQ0E7QXJEMmtMSjs7QXFEdmtMQTtBQWtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTdDakdFO0FSMnBMSjs7QXVEOXFMQTtFQUVFO0VBQ0E7RW5ENFJJLGdDQUxJO0VtRHJSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VuRG1SSSxtQ0FMSTtFbUQ1UVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFRHpCQSxzQy9DK2xCNEI7RStDN2xCNUI7RUFDQSxnQi9Dd21CNEI7RStDdm1CNUIsZ0IvQyttQjRCO0UrQzltQjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VsRGdSSSxzQ0FMSTtFbUQxUFI7RUFDQTtFQUNBO0VBQ0E7RS9DaEJFO0FSeXNMSjtBdURyckxFO0VBQ0U7RUFDQTtFQUNBO0F2RHVyTEo7QXVEcnJMSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkRzckxOOztBdURockxFO0VBQ0U7QXZEbXJMSjtBdURqckxJO0VBRUU7QXZEa3JMTjtBdUQvcUxJO0VBQ0U7RUFDQTtBdkRpckxOO0F1RDlxTEk7RUFDRTtFQUNBO0F2RGdyTE47O0F1RDNxTEE7QUFFRTtFQUNFO0VBQ0E7RUFDQTtBdkQ2cUxKO0F1RDNxTEk7RUFFRTtBdkQ0cUxOO0F1RHpxTEk7RUFDRTtFQUNBO0F2RDJxTE47QXVEeHFMSTtFQUNFO0VBQ0E7QXZEMHFMTjs7QXVEcnFMQTtBQUdFO0VBQ0U7QXZEc3FMSjtBdURwcUxJO0VBRUU7QXZEcXFMTjtBdURscUxJO0VBQ0U7RUFDQTtBdkRvcUxOO0F1RGpxTEk7RUFDRTtFQUNBO0F2RG1xTE47QXVEOXBMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZEZ3FMSjs7QXVENXBMQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0F2RDhwTEo7QXVENXBMSTtFQUVFO0F2RDZwTE47QXVEMXBMSTtFQUNFO0VBQ0E7QXZENHBMTjtBdUR6cExJO0VBQ0U7RUFDQTtBdkQycExOOztBdUR0cExBO0FBa0JBO0VBQ0U7RUFDQTtFbkQyR0ksNkNBTEk7RW1EcEdSO0VBQ0E7RUFDQTtFL0M1SkU7RUFDQTtBUnF5TEo7QXVEdm9MRTtFQUNFO0F2RHlvTEo7O0F1RHJvTEE7RUFDRTtFQUNBO0F2RHdvTEY7O0F3RDd6TEE7RUFDRTtBeERnMExGOztBd0Q3ekxBO0VBQ0U7QXhEZzBMRjs7QXdEN3pMQTtFQUNFO0VBQ0E7RUFDQTtBeERnMExGO0F5RHQxTEU7RUFDRTtFQUNBO0VBQ0E7QXpEdzFMSjs7QXdEajBMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaENsQkksc0NnQ21CSjtBeERvMExGO0F3Qm4xTE07RWdDUU47SWhDUFE7RXhCczFMTjtBQUNGOztBd0R0MExBOzs7RUFHRTtBeER5MExGOztBd0R0MExBOztFQUVFO0F4RHkwTEY7O0F3RHQwTEE7O0VBRUU7QXhEeTBMRjs7QXdEaDBMRTtFQUNFO0VBQ0E7RUFDQTtBeERtMExKO0F3RGgwTEU7OztFQUdFO0VBQ0E7QXhEazBMSjtBd0QvekxFOztFQUVFO0VBQ0E7RWhDNURFLDJCZ0M2REY7QXhEaTBMSjtBd0IxM0xNO0VnQ3FESjs7SWhDcERNO0V4QjgzTE47QUFDRjs7QXdEOXpMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVqRGtoRG1DO0VpRGpoRG5DO0VBQ0EsVzdDekZTO0U2QzBGVDtFQUNBO0VBQ0E7RUFDQSxZakQ2Z0RtQztFaUJubUQvQiw4QmdDdUZKO0F4RGcwTEY7QXdCbjVMTTtFZ0NrRU47O0loQ2pFUTtFeEJ1NUxOO0FBQ0Y7QXdEbjBMRTs7O0VBRUUsVzdDbkdPO0U2Q29HUDtFQUNBO0VBQ0EsWWpEcWdEaUM7QVBpMElyQzs7QXdEbjBMQTtFQUNFO0F4RHMwTEY7O0F3RG4wTEE7RUFDRTtBeERzMExGOztBd0RqMExBOztFQUVFO0VBQ0EsV2pEc2dEbUM7RWlEcmdEbkMsWWpEcWdEbUM7RWlEcGdEbkM7RUFDQTtFQUNBO0F4RG8wTEY7O0F3RGowTEE7RUFDRTtBeERvMExGOztBd0RsMExBO0VBQ0U7QXhEcTBMRjs7QXdEN3pMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmpEczlDbUM7RWlEcjlDbkM7RUFDQSxnQmpEbzlDbUM7QVAyMklyQztBd0Q3ekxFO0VBQ0U7RUFDQTtFQUNBLFdqRG85Q2lDO0VpRG45Q2pDLFdqRG85Q2lDO0VpRG45Q2pDO0VBQ0EsaUJqRG85Q2lDO0VpRG45Q2pDLGdCakRtOUNpQztFaURsOUNqQztFQUNBO0VBQ0Esc0I3Q2pLTztFNkNrS1A7RUFDQTtFQUVBO0VBQ0E7RUFDQSxZakQyOENpQztFaUIzbUQvQiw2QmdDaUtGO0F4RDh6TEo7QXdCMzlMTTtFZ0M0SUo7SWhDM0lNO0V4Qjg5TE47QUFDRjtBd0RoMExFO0VBQ0UsVWpEdzhDaUM7QVAwM0lyQzs7QXdEenpMQTtFQUNFO0VBQ0E7RUFDQSxlakRrOENtQztFaURqOENuQztFQUNBLG9CakQrN0NtQztFaUQ5N0NuQyx1QmpEODdDbUM7RWlENzdDbkMsVzdDNUxTO0U2QzZMVDtBeEQ0ekxGOztBd0R0ekxFOztFQUVFLGdDakRtOENpQztBUHMzSXJDO0F3RHR6TEU7RUFDRSxzQjdDL0xPO0FYdS9MWDtBd0RyekxFO0VBQ0UsVzdDbk1PO0FYMC9MWDs7QXdEajBMRTs7O0VBRUUsZ0NqRG04Q2lDO0FQazRJckM7QXdEbDBMRTtFQUNFLHNCN0MvTE87QVhtZ01YO0F3RGowTEU7RUFDRSxXN0NuTU87QVhzZ01YOztBMERyaE1BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBMUR1aE1GOztBMERuaE1BO0VBQ0U7SUFBSztFMUR1aE1MO0FBQ0Y7QTBEcGhNQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTFEbWhNRjs7QTBEaGhNQTtFQUVFO0VBQ0E7RUFDQTtBMURraE1GOztBMER6Z01BO0VBQ0U7SUFDRTtFMUQ0Z01GO0UwRDFnTUE7SUFDRTtJQUNBO0UxRDRnTUY7QUFDRjtBMER4Z01BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTFEdWdNRjs7QTBEcGdNQTtFQUNFO0VBQ0E7QTFEdWdNRjs7QTBEbmdNRTtFQUNFOztJQUVFO0UxRHNnTUo7QUFDRjtBMkR0bE1BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzRHVsTUY7O0FnQjFoTUk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFM0R3a01KO0FBQ0Y7QXdCbm1NTTtFbUNZSjtJbkNYTTtFeEJzbU1OO0FBQ0Y7QWdCaGpNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRCtrTU47RTJENWtNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEOGtNTjtFMkQza01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNENmtNTjtFMkQxa01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRDRrTU47RTJEemtNSTtJQUVFO0UzRDBrTU47RTJEdmtNSTtJQUdFO0UzRHVrTU47QUFDRjtBZ0JwbU1JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTNEc2tNTjtFMkRwa01NO0lBQ0U7RTNEc2tNUjtFMkRua01NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFM0Rva01SO0FBQ0Y7O0FnQnhtTUk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFM0RzcE1KO0FBQ0Y7QXdCanJNTTtFbUNZSjtJbkNYTTtFeEJvck1OO0FBQ0Y7QWdCOW5NSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRDZwTU47RTJEMXBNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNENHBNTjtFMkR6cE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEMnBNTjtFMkR4cE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRDBwTU47RTJEdnBNSTtJQUVFO0UzRHdwTU47RTJEcnBNSTtJQUdFO0UzRHFwTU47QUFDRjtBZ0Jsck1JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTNEb3BNTjtFMkRscE1NO0lBQ0U7RTNEb3BNUjtFMkRqcE1NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFM0RrcE1SO0FBQ0Y7O0FnQnRyTUk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFM0RvdU1KO0FBQ0Y7QXdCL3ZNTTtFbUNZSjtJbkNYTTtFeEJrd01OO0FBQ0Y7QWdCNXNNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRDJ1TU47RTJEeHVNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEMHVNTjtFMkR2dU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEeXVNTjtFMkR0dU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRHd1TU47RTJEcnVNSTtJQUVFO0UzRHN1TU47RTJEbnVNSTtJQUdFO0UzRG11TU47QUFDRjtBZ0Jod01JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTNEa3VNTjtFMkRodU1NO0lBQ0U7RTNEa3VNUjtFMkQvdE1NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFM0RndU1SO0FBQ0Y7O0FnQnB3TUk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFM0Rrek1KO0FBQ0Y7QXdCNzBNTTtFbUNZSjtJbkNYTTtFeEJnMU1OO0FBQ0Y7QWdCMXhNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRHl6TU47RTJEdHpNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEd3pNTjtFMkRyek1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEdXpNTjtFMkRwek1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRHN6TU47RTJEbnpNSTtJQUVFO0UzRG96TU47RTJEanpNSTtJQUdFO0UzRGl6TU47QUFDRjtBZ0I5ME1JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTNEZ3pNTjtFMkQ5eU1NO0lBQ0U7RTNEZ3pNUjtFMkQ3eU1NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFM0Q4eU1SO0FBQ0Y7O0FnQmwxTUk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFM0RnNE1KO0FBQ0Y7QXdCMzVNTTtFbUNZSjtJbkNYTTtFeEI4NU1OO0FBQ0Y7QWdCeDJNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRHU0TU47RTJEcDRNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEczRNTjtFMkRuNE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTNEcTRNTjtFMkRsNE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0UzRG80TU47RTJEajRNSTtJQUVFO0UzRGs0TU47RTJELzNNSTtJQUdFO0UzRCszTU47QUFDRjtBZ0I1NU1JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTNEODNNTjtFMkQ1M01NO0lBQ0U7RTNEODNNUjtFMkQzM01NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFM0Q0M01SO0FBQ0Y7O0EyRDU4TUU7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VuQzVCQSwwQ21DOEJBO0EzRDY4TU47QXdCditNTTtFbUNZSjtJbkNYTTtFeEIwK01OO0FBQ0Y7QTJEaDlNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEazlNUjtBMkQvOE1NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0RpOU1SO0EyRDk4TU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0RnOU1SO0EyRDc4TU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNEKzhNUjtBMkQ1OE1NO0VBRUU7QTNENjhNUjtBMkQxOE1NO0VBR0U7QTNEMDhNUjs7QTJELzZNQTtFUHBIRTtFQUNBO0VBQ0E7RUFDQSxhN0MwbUNrQztFNkN6bUNsQztFQUNBO0VBQ0Esc0J6Q1dTO0FYNGhOWDtBb0RwaU5FO0VBQVM7QXBEdWlOWDtBb0R0aU5FO0VBQVMsWTdDbStDeUI7QVBza0twQzs7QTJEMzdNQTtFQUNFO0VBQ0E7RUFDQTtBM0Q4N01GO0EyRDU3TUU7RUFDRTtFQUNBO0EzRDg3TUo7O0EyRDE3TUE7RUFDRTtFQUNBO0EzRDY3TUY7O0EyRDE3TUE7RUFDRTtFQUNBO0VBQ0E7QTNENjdNRjs7QTREMWtOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZckRnekNrQztBUDZ4S3BDO0E0RDNrTkU7RUFDRTtFQUNBO0E1RDZrTko7O0E0RHhrTkE7RUFDRTtBNUQya05GOztBNER4a05BO0VBQ0U7QTVEMmtORjs7QTREeGtOQTtFQUNFO0E1RDJrTkY7O0E0RHRrTkU7RUFDRTtBNUR5a05KOztBNERya05BO0VBQ0U7SUFDRSxZckRteENnQztFUHF6S2xDO0FBQ0Y7QTREcmtOQTtFQUNFO0VBQ0E7RUFDQTtBNUR1a05GOztBNERwa05BO0VBQ0U7SUFDRTtFNUR1a05GO0FBQ0Y7QXlEdG5ORTtFQUNFO0VBQ0E7RUFDQTtBekR3bk5KOztBNkQzbk5FO0VBQ0U7RUFDQTtBN0Q4bk5KOztBNkRob05FO0VBQ0U7RUFDQTtBN0Rtb05KOztBNkRyb05FO0VBQ0U7RUFDQTtBN0R3b05KOztBNkQxb05FO0VBQ0U7RUFDQTtBN0Q2b05KOztBNkQvb05FO0VBQ0U7RUFDQTtBN0RrcE5KOztBNkRwcE5FO0VBQ0U7RUFDQTtBN0R1cE5KOztBNkR6cE5FO0VBQ0U7RUFDQTtBN0Q0cE5KOztBNkQ5cE5FO0VBQ0U7RUFDQTtBN0RpcU5KOztBOERucU5FO0VBQ0U7RUFDQTtBOURzcU5KO0E4RG5xTk07RUFHRTtFQUNBO0E5RG1xTlI7O0E4RDVxTkU7RUFDRTtFQUNBO0E5RCtxTko7QThENXFOTTtFQUdFO0VBQ0E7QTlENHFOUjs7QThEcnJORTtFQUNFO0VBQ0E7QTlEd3JOSjtBOERyck5NO0VBR0U7RUFDQTtBOURxck5SOztBOEQ5ck5FO0VBQ0U7RUFDQTtBOURpc05KO0E4RDlyTk07RUFHRTtFQUNBO0E5RDhyTlI7O0E4RHZzTkU7RUFDRTtFQUNBO0E5RDBzTko7QThEdnNOTTtFQUdFO0VBQ0E7QTlEdXNOUjs7QThEaHRORTtFQUNFO0VBQ0E7QTlEbXROSjtBOERodE5NO0VBR0U7RUFDQTtBOURndE5SOztBOER6dE5FO0VBQ0U7RUFDQTtBOUQ0dE5KO0E4RHp0Tk07RUFHRTtFQUNBO0E5RHl0TlI7O0E4RGx1TkU7RUFDRTtFQUNBO0E5RHF1Tko7QThEbHVOTTtFQUdFO0VBQ0E7QTlEa3VOUjs7QThEM3ROQTtFQUNFO0VBQ0E7QTlEOHRORjtBOEQzdE5JO0VBRUU7RUFDQTtBOUQ0dE5OOztBK0R0dk5BO0VBQ0U7RUFFQTtBL0R3dk5GOztBZ0Uzdk5BO0VBQ0U7RUFDQSxhekQ2YzRCO0V5RDVjNUI7RUFDQTtFQUNBLDZCekQyYzRCO0V5RDFjNUI7QWhFOHZORjtBZ0U1dk5FO0VBQ0U7RUFDQSxVekR1YzBCO0V5RHRjMUIsV3pEc2MwQjtFeURyYzFCO0V4Q0lFLHNDd0NIRjtBaEU4dk5KO0F3QnZ2Tk07RXdDWko7SXhDYU07RXhCMHZOTjtBQUNGOztBZ0U1dk5JO0VBQ0U7QWhFK3ZOTjs7QWlFbHhOQTtFQUNFO0VBQ0E7QWpFcXhORjtBaUVueE5FO0VBQ0U7RUFDQTtFQUNBO0FqRXF4Tko7QWlFbHhORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpFb3hOSjs7QWlFL3dORTtFQUNFO0FqRWt4Tko7O0FpRW54TkU7RUFDRTtBakVzeE5KOztBaUV2eE5FO0VBQ0U7QWpFMHhOSjs7QWlFM3hORTtFQUNFO0FqRTh4Tko7O0FrRW56TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGEzRHVtQ2tDO0FQK3NMcEM7O0FrRW56TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGEzRCtsQ2tDO0FQdXRMcEM7O0FrRTl5Tkk7RUFDRTtFQUNBO0VBQ0EsYTNEbWxDOEI7QVA4dExwQzs7QWtFOXlOSTtFQUNFO0VBQ0E7RUFDQSxhM0Q2a0M4QjtBUG91THBDOztBZ0JseE5JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhM0RtbEM4QjtFUDJ1TGxDO0VrRTN6TkU7SUFDRTtJQUNBO0lBQ0EsYTNENmtDOEI7RVBndkxsQztBQUNGO0FnQi94Tkk7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGEzRG1sQzhCO0VQdXZMbEM7RWtFdjBORTtJQUNFO0lBQ0E7SUFDQSxhM0Q2a0M4QjtFUDR2TGxDO0FBQ0Y7QWdCM3lOSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTNEbWxDOEI7RVBtd0xsQztFa0VuMU5FO0lBQ0U7SUFDQTtJQUNBLGEzRDZrQzhCO0VQd3dMbEM7QUFDRjtBZ0J2ek5JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhM0RtbEM4QjtFUCt3TGxDO0VrRS8xTkU7SUFDRTtJQUNBO0lBQ0EsYTNENmtDOEI7RVBveExsQztBQUNGO0FnQm4wTkk7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGEzRG1sQzhCO0VQMnhMbEM7RWtFMzJORTtJQUNFO0lBQ0E7SUFDQSxhM0Q2a0M4QjtFUGd5TGxDO0FBQ0Y7QW1FNzROQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FuRSs0TkY7O0FtRTU0TkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkUrNE5GOztBb0V2NU5BOztFQ0lFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJFdzVORjtBcUVyNU5FOztFQUNFO0FyRXc1Tko7O0FzRXQ2TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVS9EZ2NzQztFK0QvYnRDO0F0RXk2Tko7O0F1RWo3TkE7RUNBRTtFQUNBO0VBQ0E7QXhFcTdORjs7QXlFMzdOQTtFQUNFO0VBQ0E7RUFDQSw2QmxFaXNCNEI7RWtFaHNCNUI7RUFDQTtFQUNBLGFsRTJyQjRCO0FQbXdNOUI7O0EwRWw0TlE7RUFPSTtBMUUrM05aOztBMEV0NE5RO0VBT0k7QTFFbTROWjs7QTBFMTROUTtFQU9JO0ExRXU0Tlo7O0EwRTk0TlE7RUFPSTtBMUUyNE5aOztBMEVsNU5RO0VBT0k7QTFFKzROWjs7QTBFdDVOUTtFQU9JO0ExRW01Tlo7O0EwRTE1TlE7RUFPSTtBMUV1NU5aOztBMEU5NU5RO0VBT0k7QTFFMjVOWjs7QTBFbDZOUTtFQU9JO0ExRSs1Tlo7O0EwRXQ2TlE7RUFPSTtBMUVtNk5aOztBMEUxNk5RO0VBT0k7QTFFdTZOWjs7QTBFOTZOUTtFQU9JO0ExRTI2Tlo7O0EwRWw3TlE7RUFPSTtBMUUrNk5aOztBMEV0N05RO0VBT0k7QTFFbTdOWjs7QTBFMTdOUTtFQU9JO0ExRXU3Tlo7O0EwRTk3TlE7RUFPSTtBMUUyN05aOztBMEVsOE5RO0VBT0k7QTFFKzdOWjs7QTBFdDhOUTtFQU9JO0ExRW04Tlo7O0EwRTE4TlE7RUFPSTtBMUV1OE5aOztBMEU5OE5RO0VBT0k7QTFFMjhOWjs7QTBFbDlOUTtFQU9JO0ExRSs4Tlo7O0EwRXQ5TlE7RUFPSTtBMUVtOU5aOztBMEUxOU5RO0VBT0k7QTFFdTlOWjs7QTBFOTlOUTtFQU9JO0ExRTI5Tlo7O0EwRWwrTlE7RUFPSTtBMUUrOU5aOztBMEV0K05RO0VBT0k7QTFFbStOWjs7QTBFMStOUTtFQU9JO0ExRXUrTlo7O0EwRTkrTlE7RUFPSTtBMUUyK05aOztBMEVsL05RO0VBT0k7QTFFKytOWjs7QTBFdC9OUTtFQU9JO0ExRW0vTlo7O0EwRTEvTlE7RUFPSTtBMUV1L05aOztBMEU5L05RO0VBT0k7QTFFMi9OWjs7QTBFbGdPUTtFQU9JO0ExRSsvTlo7O0EwRXRnT1E7RUFPSTtBMUVtZ09aOztBMEUxZ09RO0VBT0k7QTFFdWdPWjs7QTBFOWdPUTtFQU9JO0ExRTJnT1o7O0EwRWxoT1E7RUFPSTtBMUUrZ09aOztBMEV0aE9RO0VBT0k7QTFFbWhPWjs7QTBFMWhPUTtFQU9JO0ExRXVoT1o7O0EwRTloT1E7RUFPSTtBMUUyaE9aOztBMEVsaU9RO0VBT0k7QTFFK2hPWjs7QTBFdGlPUTtFQU9JO0ExRW1pT1o7O0EwRTFpT1E7RUFPSTtBMUV1aU9aOztBMEU5aU9RO0VBT0k7QTFFMmlPWjs7QTBFbGpPUTtFQU9JO0ExRStpT1o7O0EwRXRqT1E7RUFPSTtBMUVtak9aOztBMEVwa09RO0VBQ0U7QTFFdWtPVjs7QTBFeGtPUTtFQUNFO0ExRTJrT1Y7O0EwRTVrT1E7RUFDRTtBMUUra09WOztBMEVobE9RO0VBQ0U7QTFFbWxPVjs7QTBFcGxPUTtFQUNFO0ExRXVsT1Y7O0EwRXhsT1E7RUFDRTtBMUUybE9WOztBMEU1bE9RO0VBQ0U7QTFFK2xPVjs7QTBFaG1PUTtFQUNFO0ExRW1tT1Y7O0EwRTFsT1E7RUFPSTtBMUV1bE9aOztBMEU5bE9RO0VBT0k7QTFFMmxPWjs7QTBFbG1PUTtFQU9JO0ExRStsT1o7O0EwRXRtT1E7RUFPSTtBMUVtbU9aOztBMEUxbU9RO0VBT0k7QTFFdW1PWjs7QTBFOW1PUTtFQU9JO0ExRTJtT1o7O0EwRWxuT1E7RUFPSTtBMUUrbU9aOztBMEV0bk9RO0VBT0k7QTFFbW5PWjs7QTBFMW5PUTtFQU9JO0ExRXVuT1o7O0EwRTluT1E7RUFPSTtBMUUybk9aOztBMEVsb09RO0VBT0k7QTFFK25PWjs7QTBFdG9PUTtFQU9JO0ExRW1vT1o7O0EwRTFvT1E7RUFPSTtBMUV1b09aOztBMEU5b09RO0VBT0k7QTFFMm9PWjs7QTBFbHBPUTtFQU9JO0ExRStvT1o7O0EwRXRwT1E7RUFPSTtBMUVtcE9aOztBMEUxcE9RO0VBT0k7QTFFdXBPWjs7QTBFOXBPUTtFQU9JO0ExRTJwT1o7O0EwRWxxT1E7RUFPSTtBMUUrcE9aOztBMEV0cU9RO0VBT0k7QTFFbXFPWjs7QTBFMXFPUTtFQU9JO0ExRXVxT1o7O0EwRTlxT1E7RUFPSTtBMUUycU9aOztBMEVsck9RO0VBT0k7QTFFK3FPWjs7QTBFdHJPUTtFQU9JO0ExRW1yT1o7O0EwRTFyT1E7RUFPSTtBMUV1ck9aOztBMEU5ck9RO0VBT0k7QTFFMnJPWjs7QTBFbHNPUTtFQU9JO0ExRStyT1o7O0EwRXRzT1E7RUFPSTtBMUVtc09aOztBMEUxc09RO0VBT0k7QTFFdXNPWjs7QTBFOXNPUTtFQU9JO0ExRTJzT1o7O0EwRWx0T1E7RUFJUTtFQUdKO0ExRWd0T1o7O0EwRXZ0T1E7RUFJUTtFQUdKO0ExRXF0T1o7O0EwRTV0T1E7RUFJUTtFQUdKO0ExRTB0T1o7O0EwRWp1T1E7RUFJUTtFQUdKO0ExRSt0T1o7O0EwRXR1T1E7RUFJUTtFQUdKO0ExRW91T1o7O0EwRTN1T1E7RUFJUTtFQUdKO0ExRXl1T1o7O0EwRWh2T1E7RUFJUTtFQUdKO0ExRTh1T1o7O0EwRXJ2T1E7RUFJUTtFQUdKO0ExRW12T1o7O0EwRTF2T1E7RUFJUTtFQUdKO0ExRXd2T1o7O0EwRS92T1E7RUFJUTtFQUdKO0ExRTZ2T1o7O0EwRXB3T1E7RUFPSTtBMUVpd09aOztBMEV4d09RO0VBT0k7QTFFcXdPWjs7QTBFNXdPUTtFQU9JO0ExRXl3T1o7O0EwRWh4T1E7RUFPSTtBMUU2d09aOztBMEVweE9RO0VBT0k7QTFFaXhPWjs7QTBFeHhPUTtFQU9JO0ExRXF4T1o7O0EwRTV4T1E7RUFPSTtBMUV5eE9aOztBMEVoeU9RO0VBT0k7QTFFNnhPWjs7QTBFcHlPUTtFQU9JO0ExRWl5T1o7O0EwRXh5T1E7RUFPSTtBMUVxeU9aOztBMEU1eU9RO0VBT0k7QTFFeXlPWjs7QTBFaHpPUTtFQU9JO0ExRTZ5T1o7O0EwRXB6T1E7RUFPSTtBMUVpek9aOztBMEVsME9RO0VBQ0U7QTFFcTBPVjs7QTBFdDBPUTtFQUNFO0ExRXkwT1Y7O0EwRTEwT1E7RUFDRTtBMUU2ME9WOztBMEU5ME9RO0VBQ0U7QTFFaTFPVjs7QTBFbDFPUTtFQUNFO0ExRXExT1Y7O0EwRTUwT1E7RUFPSTtBMUV5ME9aOztBMEVoMU9RO0VBT0k7QTFFNjBPWjs7QTBFcDFPUTtFQU9JO0ExRWkxT1o7O0EwRXgxT1E7RUFPSTtBMUVxMU9aOztBMEU1MU9RO0VBT0k7QTFFeTFPWjs7QTBFaDJPUTtFQU9JO0ExRTYxT1o7O0EwRXAyT1E7RUFPSTtBMUVpMk9aOztBMEV4Mk9RO0VBT0k7QTFFcTJPWjs7QTBFNTJPUTtFQU9JO0ExRXkyT1o7O0EwRWgzT1E7RUFPSTtBMUU2Mk9aOztBMEVwM09RO0VBT0k7QTFFaTNPWjs7QTBFeDNPUTtFQU9JO0ExRXEzT1o7O0EwRTUzT1E7RUFPSTtBMUV5M09aOztBMEVoNE9RO0VBT0k7QTFFNjNPWjs7QTBFcDRPUTtFQU9JO0ExRWk0T1o7O0EwRXg0T1E7RUFPSTtBMUVxNE9aOztBMEU1NE9RO0VBT0k7QTFFeTRPWjs7QTBFaDVPUTtFQU9JO0ExRTY0T1o7O0EwRXA1T1E7RUFPSTtBMUVpNU9aOztBMEV4NU9RO0VBT0k7QTFFcTVPWjs7QTBFNTVPUTtFQU9JO0ExRXk1T1o7O0EwRWg2T1E7RUFPSTtBMUU2NU9aOztBMEVwNk9RO0VBT0k7QTFFaTZPWjs7QTBFeDZPUTtFQU9JO0ExRXE2T1o7O0EwRTU2T1E7RUFPSTtBMUV5Nk9aOztBMEVoN09RO0VBT0k7QTFFNjZPWjs7QTBFcDdPUTtFQU9JO0ExRWk3T1o7O0EwRXg3T1E7RUFPSTtBMUVxN09aOztBMEU1N09RO0VBT0k7QTFFeTdPWjs7QTBFaDhPUTtFQU9JO0ExRTY3T1o7O0EwRXA4T1E7RUFPSTtBMUVpOE9aOztBMEV4OE9RO0VBT0k7QTFFcThPWjs7QTBFNThPUTtFQU9JO0ExRXk4T1o7O0EwRWg5T1E7RUFPSTtBMUU2OE9aOztBMEVwOU9RO0VBT0k7QTFFaTlPWjs7QTBFeDlPUTtFQU9JO0ExRXE5T1o7O0EwRTU5T1E7RUFPSTtBMUV5OU9aOztBMEVoK09RO0VBT0k7QTFFNjlPWjs7QTBFcCtPUTtFQU9JO0ExRWkrT1o7O0EwRXgrT1E7RUFPSTtBMUVxK09aOztBMEU1K09RO0VBT0k7QTFFeStPWjs7QTBFaC9PUTtFQU9JO0ExRTYrT1o7O0EwRXAvT1E7RUFPSTtBMUVpL09aOztBMEV4L09RO0VBT0k7QTFFcS9PWjs7QTBFNS9PUTtFQU9JO0ExRXkvT1o7O0EwRWhnUFE7RUFPSTtBMUU2L09aOztBMEVwZ1BRO0VBT0k7QTFFaWdQWjs7QTBFeGdQUTtFQU9JO0ExRXFnUFo7O0EwRTVnUFE7RUFPSTtBMUV5Z1BaOztBMEVoaFBRO0VBT0k7QTFFNmdQWjs7QTBFcGhQUTtFQU9JO0ExRWloUFo7O0EwRXhoUFE7RUFPSTtBMUVxaFBaOztBMEU1aFBRO0VBT0k7QTFFeWhQWjs7QTBFaGlQUTtFQU9JO0ExRTZoUFo7O0EwRXBpUFE7RUFPSTtBMUVpaVBaOztBMEV4aVBRO0VBT0k7QTFFcWlQWjs7QTBFNWlQUTtFQU9JO0ExRXlpUFo7O0EwRWhqUFE7RUFPSTtBMUU2aVBaOztBMEVwalBRO0VBT0k7QTFFaWpQWjs7QTBFeGpQUTtFQU9JO0ExRXFqUFo7O0EwRTVqUFE7RUFPSTtBMUV5alBaOztBMEVoa1BRO0VBT0k7QTFFNmpQWjs7QTBFcGtQUTtFQU9JO0ExRWlrUFo7O0EwRXhrUFE7RUFPSTtBMUVxa1BaOztBMEU1a1BRO0VBT0k7QTFFeWtQWjs7QTBFaGxQUTtFQU9JO0ExRTZrUFo7O0EwRXBsUFE7RUFPSTtFQUFBO0ExRWtsUFo7O0EwRXpsUFE7RUFPSTtFQUFBO0ExRXVsUFo7O0EwRTlsUFE7RUFPSTtFQUFBO0ExRTRsUFo7O0EwRW5tUFE7RUFPSTtFQUFBO0ExRWltUFo7O0EwRXhtUFE7RUFPSTtFQUFBO0ExRXNtUFo7O0EwRTdtUFE7RUFPSTtFQUFBO0ExRTJtUFo7O0EwRWxuUFE7RUFPSTtFQUFBO0ExRWduUFo7O0EwRXZuUFE7RUFPSTtFQUFBO0ExRXFuUFo7O0EwRTVuUFE7RUFPSTtFQUFBO0ExRTBuUFo7O0EwRWpvUFE7RUFPSTtFQUFBO0ExRStuUFo7O0EwRXRvUFE7RUFPSTtFQUFBO0ExRW9vUFo7O0EwRTNvUFE7RUFPSTtFQUFBO0ExRXlvUFo7O0EwRWhwUFE7RUFPSTtFQUFBO0ExRThvUFo7O0EwRXJwUFE7RUFPSTtFQUFBO0ExRW1wUFo7O0EwRTFwUFE7RUFPSTtBMUV1cFBaOztBMEU5cFBRO0VBT0k7QTFFMnBQWjs7QTBFbHFQUTtFQU9JO0ExRStwUFo7O0EwRXRxUFE7RUFPSTtBMUVtcVBaOztBMEUxcVBRO0VBT0k7QTFFdXFQWjs7QTBFOXFQUTtFQU9JO0ExRTJxUFo7O0EwRWxyUFE7RUFPSTtBMUUrcVBaOztBMEV0clBRO0VBT0k7QTFFbXJQWjs7QTBFMXJQUTtFQU9JO0ExRXVyUFo7O0EwRTlyUFE7RUFPSTtBMUUyclBaOztBMEVsc1BRO0VBT0k7QTFFK3JQWjs7QTBFdHNQUTtFQU9JO0ExRW1zUFo7O0EwRTFzUFE7RUFPSTtBMUV1c1BaOztBMEU5c1BRO0VBT0k7QTFFMnNQWjs7QTBFbHRQUTtFQU9JO0ExRStzUFo7O0EwRXR0UFE7RUFPSTtBMUVtdFBaOztBMEUxdFBRO0VBT0k7QTFFdXRQWjs7QTBFOXRQUTtFQU9JO0ExRTJ0UFo7O0EwRWx1UFE7RUFPSTtBMUUrdFBaOztBMEV0dVBRO0VBT0k7QTFFbXVQWjs7QTBFMXVQUTtFQU9JO0ExRXV1UFo7O0EwRTl1UFE7RUFPSTtBMUUydVBaOztBMEVsdlBRO0VBT0k7QTFFK3VQWjs7QTBFdHZQUTtFQU9JO0ExRW12UFo7O0EwRTF2UFE7RUFPSTtBMUV1dlBaOztBMEU5dlBRO0VBT0k7QTFFMnZQWjs7QTBFbHdQUTtFQU9JO0ExRSt2UFo7O0EwRXR3UFE7RUFPSTtBMUVtd1BaOztBMEUxd1BRO0VBT0k7QTFFdXdQWjs7QTBFOXdQUTtFQU9JO0ExRTJ3UFo7O0EwRWx4UFE7RUFPSTtBMUUrd1BaOztBMEV0eFBRO0VBT0k7QTFFbXhQWjs7QTBFMXhQUTtFQU9JO0ExRXV4UFo7O0EwRTl4UFE7RUFPSTtBMUUyeFBaOztBMEVseVBRO0VBT0k7RUFBQTtBMUVneVBaOztBMEV2eVBRO0VBT0k7RUFBQTtBMUVxeVBaOztBMEU1eVBRO0VBT0k7RUFBQTtBMUUweVBaOztBMEVqelBRO0VBT0k7RUFBQTtBMUUreVBaOztBMEV0elBRO0VBT0k7RUFBQTtBMUVvelBaOztBMEUzelBRO0VBT0k7RUFBQTtBMUV5elBaOztBMEVoMFBRO0VBT0k7RUFBQTtBMUU4elBaOztBMEVyMFBRO0VBT0k7RUFBQTtBMUVtMFBaOztBMEUxMFBRO0VBT0k7RUFBQTtBMUV3MFBaOztBMEUvMFBRO0VBT0k7RUFBQTtBMUU2MFBaOztBMEVwMVBRO0VBT0k7RUFBQTtBMUVrMVBaOztBMEV6MVBRO0VBT0k7RUFBQTtBMUV1MVBaOztBMEU5MVBRO0VBT0k7QTFFMjFQWjs7QTBFbDJQUTtFQU9JO0ExRSsxUFo7O0EwRXQyUFE7RUFPSTtBMUVtMlBaOztBMEUxMlBRO0VBT0k7QTFFdTJQWjs7QTBFOTJQUTtFQU9JO0ExRTIyUFo7O0EwRWwzUFE7RUFPSTtBMUUrMlBaOztBMEV0M1BRO0VBT0k7QTFFbTNQWjs7QTBFMTNQUTtFQU9JO0ExRXUzUFo7O0EwRTkzUFE7RUFPSTtBMUUyM1BaOztBMEVsNFBRO0VBT0k7QTFFKzNQWjs7QTBFdDRQUTtFQU9JO0ExRW00UFo7O0EwRTE0UFE7RUFPSTtBMUV1NFBaOztBMEU5NFBRO0VBT0k7QTFFMjRQWjs7QTBFbDVQUTtFQU9JO0ExRSs0UFo7O0EwRXQ1UFE7RUFPSTtBMUVtNVBaOztBMEUxNVBRO0VBT0k7QTFFdTVQWjs7QTBFOTVQUTtFQU9JO0ExRTI1UFo7O0EwRWw2UFE7RUFPSTtBMUUrNVBaOztBMEV0NlBRO0VBT0k7QTFFbTZQWjs7QTBFMTZQUTtFQU9JO0ExRXU2UFo7O0EwRTk2UFE7RUFPSTtBMUUyNlBaOztBMEVsN1BRO0VBT0k7QTFFKzZQWjs7QTBFdDdQUTtFQU9JO0ExRW03UFo7O0EwRTE3UFE7RUFPSTtBMUV1N1BaOztBMEU5N1BRO0VBT0k7QTFFMjdQWjs7QTBFbDhQUTtFQU9JO0ExRSs3UFo7O0EwRXQ4UFE7RUFPSTtBMUVtOFBaOztBMEUxOFBRO0VBT0k7QTFFdThQWjs7QTBFOThQUTtFQU9JO0ExRTI4UFo7O0EwRWw5UFE7RUFPSTtBMUUrOFBaOztBMEV0OVBRO0VBT0k7QTFFbTlQWjs7QTBFMTlQUTtFQU9JO0ExRXU5UFo7O0EwRTk5UFE7RUFPSTtBMUUyOVBaOztBMEVsK1BRO0VBT0k7QTFFKzlQWjs7QTBFdCtQUTtFQU9JO0ExRW0rUFo7O0EwRTErUFE7RUFPSTtBMUV1K1BaOztBMEU5K1BRO0VBT0k7QTFFMitQWjs7QTBFbC9QUTtFQU9JO0ExRSsrUFo7O0EwRXQvUFE7RUFPSTtBMUVtL1BaOztBMEUxL1BRO0VBT0k7QTFFdS9QWjs7QTBFOS9QUTtFQU9JO0ExRTIvUFo7O0EwRWxnUVE7RUFPSTtBMUUrL1BaOztBMEV0Z1FRO0VBT0k7QTFFbWdRWjs7QTBFMWdRUTtFQU9JO0ExRXVnUVo7O0EwRTlnUVE7RUFPSTtBMUUyZ1FaOztBMEVsaFFRO0VBT0k7QTFFK2dRWjs7QTBFdGhRUTtFQU9JO0ExRW1oUVo7O0EwRTFoUVE7RUFPSTtBMUV1aFFaOztBMEU5aFFRO0VBT0k7QTFFMmhRWjs7QTBFbGlRUTtFQU9JO0ExRStoUVo7O0EwRXRpUVE7RUFPSTtBMUVtaVFaOztBMEUxaVFRO0VBT0k7QTFFdWlRWjs7QTBFOWlRUTtFQU9JO0ExRTJpUVo7O0EwRWxqUVE7RUFPSTtBMUUraVFaOztBMEV0alFRO0VBT0k7QTFFbWpRWjs7QTBFMWpRUTtFQU9JO0ExRXVqUVo7O0EwRTlqUVE7RUFPSTtBMUUyalFaOztBMEVsa1FRO0VBT0k7QTFFK2pRWjs7QTBFdGtRUTtFQU9JO0ExRW1rUVo7O0EwRTFrUVE7RUFPSTtBMUV1a1FaOztBMEU5a1FRO0VBT0k7QTFFMmtRWjs7QTBFbGxRUTtFQU9JO0ExRStrUVo7O0EwRXRsUVE7RUFPSTtBMUVtbFFaOztBMEUxbFFRO0VBT0k7QTFFdWxRWjs7QTBFOWxRUTtFQU9JO0ExRTJsUVo7O0EwRWxtUVE7RUFPSTtBMUUrbFFaOztBMEV0bVFRO0VBT0k7QTFFbW1RWjs7QTBFMW1RUTtFQU9JO0ExRXVtUVo7O0EwRTltUVE7RUFPSTtBMUUybVFaOztBMEVsblFRO0VBT0k7QTFFK21RWjs7QTBFdG5RUTtFQU9JO0ExRW1uUVo7O0EwRTFuUVE7RUFPSTtBMUV1blFaOztBMEU5blFRO0VBT0k7QTFFMm5RWjs7QTBFaHBRUTtBQWNBO0VBT0k7RUFBQTtBMUVpb1FaOztBMEU5bVFRO0FBMUJBO0VBSVE7RUFHSjtBMUV1b1FaOztBMEU5b1FRO0VBSVE7RUFHSjtBMUU0b1FaOztBMEVucFFRO0VBSVE7RUFHSjtBMUVpcFFaOztBMEV4cFFRO0VBSVE7RUFHSjtBMUVzcFFaOztBMEU3cFFRO0VBSVE7RUFHSjtBMUUycFFaOztBMEVscVFRO0VBSVE7RUFHSjtBMUVncVFaOztBMEV2cVFRO0VBSVE7RUFHSjtBMUVxcVFaOztBMEU1cVFRO0VBSVE7RUFHSjtBMUUwcVFaOztBMEVqclFRO0VBSVE7RUFHSjtBMUUrcVFaOztBMEV0clFRO0VBSVE7RUFHSjtBMUVvclFaOztBMEUzclFRO0VBSVE7RUFHSjtBMUV5clFaOztBMEVoc1FRO0VBSVE7RUFHSjtBMUU4clFaOztBMEVyc1FRO0VBSVE7RUFHSjtBMUVtc1FaOztBMEUxc1FRO0VBSVE7RUFHSjtBMUV3c1FaOztBMEUvc1FRO0VBSVE7RUFHSjtBMUU2c1FaOztBMEVwdFFRO0VBSVE7RUFHSjtBMUVrdFFaOztBMEV6dFFRO0VBSVE7RUFHSjtBMUV1dFFaOztBMEU5dFFRO0VBSVE7RUFHSjtBMUU0dFFaOztBMEU3dVFRO0VBQ0U7QTFFZ3ZRVjs7QTBFanZRUTtFQUNFO0ExRW92UVY7O0EwRXJ2UVE7RUFDRTtBMUV3dlFWOztBMEV6dlFRO0VBQ0U7QTFFNHZRVjs7QTBFbnZRUTtFQU9JO0ExRWd2UVo7O0EwRXZ2UVE7RUFPSTtBMUVvdlFaOztBMEUzdlFRO0VBT0k7QTFFd3ZRWjs7QTBFL3ZRUTtFQU9JO0ExRTR2UVo7O0EwRW53UVE7RUFPSTtBMUVnd1FaOztBMEV2d1FRO0VBT0k7QTFFb3dRWjs7QTBFM3dRUTtFQU9JO0ExRXd3UVo7O0EwRS93UVE7RUFPSTtBMUU0d1FaOztBMEU3eFFRO0VBQ0U7QTFFZ3lRVjs7QTBFNXhRVTtFQUNFO0ExRSt4UVo7O0EwRXJ5UVE7RUFDRTtBMUV3eVFWOztBMEVweVFVO0VBQ0U7QTFFdXlRWjs7QTBFN3lRUTtFQUNFO0ExRWd6UVY7O0EwRTV5UVU7RUFDRTtBMUUreVFaOztBMEVyelFRO0VBQ0U7QTFFd3pRVjs7QTBFcHpRVTtFQUNFO0ExRXV6UVo7O0EwRTd6UVE7RUFDRTtBMUVnMFFWOztBMEU1elFVO0VBQ0U7QTFFK3pRWjs7QTBFM3pRUTtFQU9JO0ExRXd6UVo7O0EwRW56UVU7RUFPSTtBMUVnelFkOztBMEVuMFFRO0VBT0k7QTFFZzBRWjs7QTBFM3pRVTtFQU9JO0ExRXd6UWQ7O0EwRTMwUVE7RUFPSTtBMUV3MFFaOztBMEVuMFFVO0VBT0k7QTFFZzBRZDs7QTBFbjFRUTtFQUlRO0VBR0o7QTFFaTFRWjs7QTBFeDFRUTtFQUlRO0VBR0o7QTFFczFRWjs7QTBFNzFRUTtFQUlRO0VBR0o7QTFFMjFRWjs7QTBFbDJRUTtFQUlRO0VBR0o7QTFFZzJRWjs7QTBFdjJRUTtFQUlRO0VBR0o7QTFFcTJRWjs7QTBFNTJRUTtFQUlRO0VBR0o7QTFFMDJRWjs7QTBFajNRUTtFQUlRO0VBR0o7QTFFKzJRWjs7QTBFdDNRUTtFQUlRO0VBR0o7QTFFbzNRWjs7QTBFMzNRUTtFQUlRO0VBR0o7QTFFeTNRWjs7QTBFMTRRUTtFQUNFO0ExRTY0UVY7O0EwRXo0UVU7RUFDRTtBMUU0NFFaOztBMEVsNVFRO0VBQ0U7QTFFcTVRVjs7QTBFajVRVTtFQUNFO0ExRW81UVo7O0EwRTE1UVE7RUFDRTtBMUU2NVFWOztBMEV6NVFVO0VBQ0U7QTFFNDVRWjs7QTBFbDZRUTtFQUNFO0ExRXE2UVY7O0EwRWo2UVU7RUFDRTtBMUVvNlFaOztBMEUxNlFRO0VBQ0U7QTFFNjZRVjs7QTBFejZRVTtFQUNFO0ExRTQ2UVo7O0EwRWw3UVE7RUFDRTtBMUVxN1FWOztBMEVqN1FVO0VBQ0U7QTFFbzdRWjs7QTBFaDdRUTtFQUlRO0VBR0o7QTFFODZRWjs7QTBFcjdRUTtFQUlRO0VBR0o7QTFFbTdRWjs7QTBFMTdRUTtFQUlRO0VBR0o7QTFFdzdRWjs7QTBFLzdRUTtFQUlRO0VBR0o7QTFFNjdRWjs7QTBFcDhRUTtFQUlRO0VBR0o7QTFFazhRWjs7QTBFejhRUTtFQUlRO0VBR0o7QTFFdThRWjs7QTBFOThRUTtFQUlRO0VBR0o7QTFFNDhRWjs7QTBFbjlRUTtFQUlRO0VBR0o7QTFFaTlRWjs7QTBFeDlRUTtFQUlRO0VBR0o7QTFFczlRWjs7QTBFNzlRUTtFQUlRO0VBR0o7QTFFMjlRWjs7QTBFbCtRUTtFQUlRO0VBR0o7QTFFZytRWjs7QTBFditRUTtFQUlRO0VBR0o7QTFFcStRWjs7QTBFNStRUTtFQUlRO0VBR0o7QTFFMCtRWjs7QTBFai9RUTtFQUlRO0VBR0o7QTFFKytRWjs7QTBFaGdSUTtFQUNFO0ExRW1nUlY7O0EwRXBnUlE7RUFDRTtBMUV1Z1JWOztBMEV4Z1JRO0VBQ0U7QTFFMmdSVjs7QTBFNWdSUTtFQUNFO0ExRStnUlY7O0EwRWhoUlE7RUFDRTtBMUVtaFJWOztBMEUxZ1JRO0VBT0k7QTFFdWdSWjs7QTBFOWdSUTtFQU9JO0ExRTJnUlo7O0EwRWxoUlE7RUFPSTtBMUUrZ1JaOztBMEV0aFJRO0VBT0k7QTFFbWhSWjs7QTBFMWhSUTtFQU9JO0ExRXVoUlo7O0EwRTloUlE7RUFPSTtBMUUyaFJaOztBMEVsaVJRO0VBT0k7QTFFK2hSWjs7QTBFdGlSUTtFQU9JO0ExRW1pUlo7O0EwRTFpUlE7RUFPSTtBMUV1aVJaOztBMEU5aVJRO0VBT0k7QTFFMmlSWjs7QTBFbGpSUTtFQU9JO0ExRStpUlo7O0EwRXRqUlE7RUFPSTtBMUVtalJaOztBMEUxalJRO0VBT0k7QTFFdWpSWjs7QTBFOWpSUTtFQU9JO0ExRTJqUlo7O0EwRWxrUlE7RUFPSTtBMUUralJaOztBMEV0a1JRO0VBT0k7QTFFbWtSWjs7QTBFMWtSUTtFQU9JO0ExRXVrUlo7O0EwRTlrUlE7RUFPSTtBMUUya1JaOztBMEVsbFJRO0VBT0k7QTFFK2tSWjs7QTBFdGxSUTtFQU9JO0ExRW1sUlo7O0EwRTFsUlE7RUFPSTtBMUV1bFJaOztBMEU5bFJRO0VBT0k7QTFFMmxSWjs7QTBFbG1SUTtFQU9JO0ExRStsUlo7O0EwRXRtUlE7RUFPSTtFQUFBO0ExRW9tUlo7O0EwRTNtUlE7RUFPSTtFQUFBO0ExRXltUlo7O0EwRWhuUlE7RUFPSTtFQUFBO0ExRThtUlo7O0EwRXJuUlE7RUFPSTtFQUFBO0ExRW1uUlo7O0EwRTFuUlE7RUFPSTtFQUFBO0ExRXduUlo7O0EwRS9uUlE7RUFPSTtFQUFBO0ExRTZuUlo7O0EwRXBvUlE7RUFPSTtFQUFBO0ExRWtvUlo7O0EwRXpvUlE7RUFPSTtFQUFBO0ExRXVvUlo7O0EwRTlvUlE7RUFPSTtFQUFBO0ExRTRvUlo7O0EwRW5wUlE7RUFPSTtFQUFBO0ExRWlwUlo7O0EwRXhwUlE7RUFPSTtFQUFBO0ExRXNwUlo7O0EwRTdwUlE7RUFPSTtFQUFBO0ExRTJwUlo7O0EwRWxxUlE7RUFPSTtFQUFBO0ExRWdxUlo7O0EwRXZxUlE7RUFPSTtFQUFBO0ExRXFxUlo7O0EwRTVxUlE7RUFPSTtFQUFBO0ExRTBxUlo7O0EwRWpyUlE7RUFPSTtFQUFBO0ExRStxUlo7O0EwRXRyUlE7RUFPSTtFQUFBO0ExRW9yUlo7O0EwRTNyUlE7RUFPSTtFQUFBO0ExRXlyUlo7O0EwRWhzUlE7RUFPSTtFQUFBO0ExRThyUlo7O0EwRXJzUlE7RUFPSTtFQUFBO0ExRW1zUlo7O0EwRTFzUlE7RUFPSTtFQUFBO0ExRXdzUlo7O0EwRS9zUlE7RUFPSTtFQUFBO0ExRTZzUlo7O0EwRXB0UlE7RUFPSTtFQUFBO0ExRWt0Ulo7O0EwRXp0UlE7RUFPSTtFQUFBO0ExRXV0Ulo7O0EwRTl0UlE7RUFPSTtFQUFBO0ExRTR0Ulo7O0EwRW51UlE7RUFPSTtFQUFBO0ExRWl1Ulo7O0EwRXh1UlE7RUFPSTtFQUFBO0ExRXN1Ulo7O0EwRTd1UlE7RUFPSTtFQUFBO0ExRTJ1Ulo7O0EwRWx2UlE7RUFPSTtFQUFBO0ExRWd2Ulo7O0EwRXZ2UlE7RUFPSTtFQUFBO0ExRXF2Ulo7O0EwRTV2UlE7RUFPSTtFQUFBO0ExRTB2Ulo7O0EwRWp3UlE7RUFPSTtFQUFBO0ExRSt2Ulo7O0EwRXR3UlE7RUFPSTtFQUFBO0ExRW93Ulo7O0EwRTN3UlE7RUFPSTtFQUFBO0ExRXl3Ulo7O0EwRWh4UlE7RUFPSTtFQUFBO0ExRTh3Ulo7O0EwRXJ4UlE7RUFPSTtFQUFBO0ExRW14Ulo7O0EwRTF4UlE7RUFPSTtBMUV1eFJaOztBMEU5eFJRO0VBT0k7QTFFMnhSWjs7QTBFbHlSUTtFQU9JO0ExRSt4Ulo7O0EwRXR5UlE7RUFPSTtBMUVteVJaOztBMEUxeVJRO0VBT0k7QTFFdXlSWjs7QTBFOXlSUTtFQU9JO0ExRTJ5Ulo7O0EwRWx6UlE7RUFPSTtBMUUreVJaOztBZ0J6elJJO0UwREdJO0lBT0k7RTFFb3pSVjtFMEUzelJNO0lBT0k7RTFFdXpSVjtFMEU5elJNO0lBT0k7RTFFMHpSVjtFMEVqMFJNO0lBT0k7RTFFNnpSVjtFMEVwMFJNO0lBT0k7RTFFZzBSVjtFMEV2MFJNO0lBT0k7RTFFbTBSVjtFMEUxMFJNO0lBT0k7RTFFczBSVjtFMEU3MFJNO0lBT0k7RTFFeTBSVjtFMEVoMVJNO0lBT0k7RTFFNDBSVjtFMEVuMVJNO0lBT0k7RTFFKzBSVjtFMEV0MVJNO0lBT0k7RTFFazFSVjtFMEV6MVJNO0lBT0k7RTFFcTFSVjtFMEU1MVJNO0lBT0k7RTFFdzFSVjtFMEUvMVJNO0lBT0k7RTFFMjFSVjtFMEVsMlJNO0lBT0k7RTFFODFSVjtFMEVyMlJNO0lBT0k7RTFFaTJSVjtFMEV4MlJNO0lBT0k7RTFFbzJSVjtFMEUzMlJNO0lBT0k7RTFFdTJSVjtFMEU5MlJNO0lBT0k7RTFFMDJSVjtFMEVqM1JNO0lBT0k7RTFFNjJSVjtFMEVwM1JNO0lBT0k7RTFFZzNSVjtFMEV2M1JNO0lBT0k7RTFFbTNSVjtFMEUxM1JNO0lBT0k7RTFFczNSVjtFMEU3M1JNO0lBT0k7RTFFeTNSVjtFMEVoNFJNO0lBT0k7RTFFNDNSVjtFMEVuNFJNO0lBT0k7RTFFKzNSVjtFMEV0NFJNO0lBT0k7RTFFazRSVjtFMEV6NFJNO0lBT0k7RTFFcTRSVjtFMEU1NFJNO0lBT0k7RTFFdzRSVjtFMEUvNFJNO0lBT0k7RTFFMjRSVjtFMEVsNVJNO0lBT0k7RTFFODRSVjtFMEVyNVJNO0lBT0k7RTFFaTVSVjtFMEV4NVJNO0lBT0k7RTFFbzVSVjtFMEUzNVJNO0lBT0k7RTFFdTVSVjtFMEU5NVJNO0lBT0k7RTFFMDVSVjtFMEVqNlJNO0lBT0k7RTFFNjVSVjtFMEVwNlJNO0lBT0k7RTFFZzZSVjtFMEV2NlJNO0lBT0k7RTFFbTZSVjtFMEUxNlJNO0lBT0k7RTFFczZSVjtFMEU3NlJNO0lBT0k7RTFFeTZSVjtFMEVoN1JNO0lBT0k7RTFFNDZSVjtFMEVuN1JNO0lBT0k7RTFFKzZSVjtFMEV0N1JNO0lBT0k7RTFFazdSVjtFMEV6N1JNO0lBT0k7RTFFcTdSVjtFMEU1N1JNO0lBT0k7RTFFdzdSVjtFMEUvN1JNO0lBT0k7RTFFMjdSVjtFMEVsOFJNO0lBT0k7RTFFODdSVjtFMEVyOFJNO0lBT0k7RTFFaThSVjtFMEV4OFJNO0lBT0k7RTFFbzhSVjtFMEUzOFJNO0lBT0k7RTFFdThSVjtFMEU5OFJNO0lBT0k7RTFFMDhSVjtFMEVqOVJNO0lBT0k7RTFFNjhSVjtFMEVwOVJNO0lBT0k7RTFFZzlSVjtFMEV2OVJNO0lBT0k7RTFFbTlSVjtFMEUxOVJNO0lBT0k7RTFFczlSVjtFMEU3OVJNO0lBT0k7RTFFeTlSVjtFMEVoK1JNO0lBT0k7RTFFNDlSVjtFMEVuK1JNO0lBT0k7RTFFKzlSVjtFMEV0K1JNO0lBT0k7RTFFaytSVjtFMEV6K1JNO0lBT0k7RTFFcStSVjtFMEU1K1JNO0lBT0k7RTFFdytSVjtFMEUvK1JNO0lBT0k7RTFFMitSVjtFMEVsL1JNO0lBT0k7RTFFOCtSVjtFMEVyL1JNO0lBT0k7RTFFaS9SVjtFMEV4L1JNO0lBT0k7RTFFby9SVjtFMEUzL1JNO0lBT0k7RTFFdS9SVjtFMEU5L1JNO0lBT0k7RTFFMC9SVjtFMEVqZ1NNO0lBT0k7RTFFNi9SVjtFMEVwZ1NNO0lBT0k7RTFFZ2dTVjtFMEV2Z1NNO0lBT0k7SUFBQTtFMUVvZ1NWO0UwRTNnU007SUFPSTtJQUFBO0UxRXdnU1Y7RTBFL2dTTTtJQU9JO0lBQUE7RTFFNGdTVjtFMEVuaFNNO0lBT0k7SUFBQTtFMUVnaFNWO0UwRXZoU007SUFPSTtJQUFBO0UxRW9oU1Y7RTBFM2hTTTtJQU9JO0lBQUE7RTFFd2hTVjtFMEUvaFNNO0lBT0k7SUFBQTtFMUU0aFNWO0UwRW5pU007SUFPSTtJQUFBO0UxRWdpU1Y7RTBFdmlTTTtJQU9JO0lBQUE7RTFFb2lTVjtFMEUzaVNNO0lBT0k7SUFBQTtFMUV3aVNWO0UwRS9pU007SUFPSTtJQUFBO0UxRTRpU1Y7RTBFbmpTTTtJQU9JO0lBQUE7RTFFZ2pTVjtFMEV2alNNO0lBT0k7SUFBQTtFMUVvalNWO0UwRTNqU007SUFPSTtJQUFBO0UxRXdqU1Y7RTBFL2pTTTtJQU9JO0UxRTJqU1Y7RTBFbGtTTTtJQU9JO0UxRThqU1Y7RTBFcmtTTTtJQU9JO0UxRWlrU1Y7RTBFeGtTTTtJQU9JO0UxRW9rU1Y7RTBFM2tTTTtJQU9JO0UxRXVrU1Y7RTBFOWtTTTtJQU9JO0UxRTBrU1Y7RTBFamxTTTtJQU9JO0UxRTZrU1Y7RTBFcGxTTTtJQU9JO0UxRWdsU1Y7RTBFdmxTTTtJQU9JO0UxRW1sU1Y7RTBFMWxTTTtJQU9JO0UxRXNsU1Y7RTBFN2xTTTtJQU9JO0UxRXlsU1Y7RTBFaG1TTTtJQU9JO0UxRTRsU1Y7RTBFbm1TTTtJQU9JO0UxRStsU1Y7RTBFdG1TTTtJQU9JO0UxRWttU1Y7RTBFem1TTTtJQU9JO0UxRXFtU1Y7RTBFNW1TTTtJQU9JO0UxRXdtU1Y7RTBFL21TTTtJQU9JO0UxRTJtU1Y7RTBFbG5TTTtJQU9JO0UxRThtU1Y7RTBFcm5TTTtJQU9JO0UxRWluU1Y7RTBFeG5TTTtJQU9JO0UxRW9uU1Y7RTBFM25TTTtJQU9JO0UxRXVuU1Y7RTBFOW5TTTtJQU9JO0UxRTBuU1Y7RTBFam9TTTtJQU9JO0UxRTZuU1Y7RTBFcG9TTTtJQU9JO0UxRWdvU1Y7RTBFdm9TTTtJQU9JO0UxRW1vU1Y7RTBFMW9TTTtJQU9JO0UxRXNvU1Y7RTBFN29TTTtJQU9JO0UxRXlvU1Y7RTBFaHBTTTtJQU9JO0UxRTRvU1Y7RTBFbnBTTTtJQU9JO0UxRStvU1Y7RTBFdHBTTTtJQU9JO0UxRWtwU1Y7RTBFenBTTTtJQU9JO0UxRXFwU1Y7RTBFNXBTTTtJQU9JO0UxRXdwU1Y7RTBFL3BTTTtJQU9JO0UxRTJwU1Y7RTBFbHFTTTtJQU9JO0UxRThwU1Y7RTBFcnFTTTtJQU9JO0lBQUE7RTFFa3FTVjtFMEV6cVNNO0lBT0k7SUFBQTtFMUVzcVNWO0UwRTdxU007SUFPSTtJQUFBO0UxRTBxU1Y7RTBFanJTTTtJQU9JO0lBQUE7RTFFOHFTVjtFMEVyclNNO0lBT0k7SUFBQTtFMUVrclNWO0UwRXpyU007SUFPSTtJQUFBO0UxRXNyU1Y7RTBFN3JTTTtJQU9JO0lBQUE7RTFFMHJTVjtFMEVqc1NNO0lBT0k7SUFBQTtFMUU4clNWO0UwRXJzU007SUFPSTtJQUFBO0UxRWtzU1Y7RTBFenNTTTtJQU9JO0lBQUE7RTFFc3NTVjtFMEU3c1NNO0lBT0k7SUFBQTtFMUUwc1NWO0UwRWp0U007SUFPSTtJQUFBO0UxRThzU1Y7RTBFcnRTTTtJQU9JO0UxRWl0U1Y7RTBFeHRTTTtJQU9JO0UxRW90U1Y7RTBFM3RTTTtJQU9JO0UxRXV0U1Y7RTBFOXRTTTtJQU9JO0UxRTB0U1Y7RTBFanVTTTtJQU9JO0UxRTZ0U1Y7RTBFcHVTTTtJQU9JO0UxRWd1U1Y7RTBFdnVTTTtJQU9JO0UxRW11U1Y7RTBFMXVTTTtJQU9JO0UxRXN1U1Y7RTBFN3VTTTtJQU9JO0UxRXl1U1Y7RTBFaHZTTTtJQU9JO0UxRTR1U1Y7RTBFbnZTTTtJQU9JO0UxRSt1U1Y7RTBFdHZTTTtJQU9JO0UxRWt2U1Y7RTBFenZTTTtJQU9JO0UxRXF2U1Y7RTBFNXZTTTtJQU9JO0UxRXd2U1Y7RTBFL3ZTTTtJQU9JO0UxRTJ2U1Y7RTBFbHdTTTtJQU9JO0UxRTh2U1Y7RTBFcndTTTtJQU9JO0UxRWl3U1Y7RTBFeHdTTTtJQU9JO0UxRW93U1Y7RTBFM3dTTTtJQU9JO0UxRXV3U1Y7RTBFOXdTTTtJQU9JO0UxRTB3U1Y7RTBFanhTTTtJQU9JO0UxRTZ3U1Y7RTBFcHhTTTtJQU9JO0UxRWd4U1Y7RTBFdnhTTTtJQU9JO0UxRW14U1Y7RTBFMXhTTTtJQU9JO0UxRXN4U1Y7RTBFN3hTTTtJQU9JO0UxRXl4U1Y7RTBFaHlTTTtJQU9JO0UxRTR4U1Y7RTBFbnlTTTtJQU9JO0UxRSt4U1Y7RTBFdHlTTTtJQU9JO0UxRWt5U1Y7RTBFenlTTTtJQU9JO0UxRXF5U1Y7RTBFNXlTTTtJQU9JO0UxRXd5U1Y7RTBFL3lTTTtJQU9JO0UxRTJ5U1Y7RTBFbHpTTTtJQU9JO0UxRTh5U1Y7RTBFcnpTTTtJQU9JO0UxRWl6U1Y7RTBFeHpTTTtJQU9JO0UxRW96U1Y7RTBFM3pTTTtJQU9JO0UxRXV6U1Y7RTBFOXpTTTtJQU9JO0UxRTB6U1Y7RTBFajBTTTtJQU9JO0UxRTZ6U1Y7RTBFcDBTTTtJQU9JO0UxRWcwU1Y7RTBFdjBTTTtJQU9JO0UxRW0wU1Y7RTBFMTBTTTtJQU9JO0UxRXMwU1Y7RTBFNzBTTTtJQU9JO0UxRXkwU1Y7RTBFaDFTTTtJQU9JO0UxRTQwU1Y7RTBFbjFTTTtJQU9JO0UxRSswU1Y7RTBFdDFTTTtJQU9JO0UxRWsxU1Y7RTBFejFTTTtJQU9JO0UxRXExU1Y7QUFDRjtBZ0JoMlNJO0UwREdJO0lBT0k7RTFFMDFTVjtFMEVqMlNNO0lBT0k7RTFFNjFTVjtFMEVwMlNNO0lBT0k7RTFFZzJTVjtFMEV2MlNNO0lBT0k7RTFFbTJTVjtFMEUxMlNNO0lBT0k7RTFFczJTVjtFMEU3MlNNO0lBT0k7RTFFeTJTVjtFMEVoM1NNO0lBT0k7RTFFNDJTVjtFMEVuM1NNO0lBT0k7RTFFKzJTVjtFMEV0M1NNO0lBT0k7RTFFazNTVjtFMEV6M1NNO0lBT0k7RTFFcTNTVjtFMEU1M1NNO0lBT0k7RTFFdzNTVjtFMEUvM1NNO0lBT0k7RTFFMjNTVjtFMEVsNFNNO0lBT0k7RTFFODNTVjtFMEVyNFNNO0lBT0k7RTFFaTRTVjtFMEV4NFNNO0lBT0k7RTFFbzRTVjtFMEUzNFNNO0lBT0k7RTFFdTRTVjtFMEU5NFNNO0lBT0k7RTFFMDRTVjtFMEVqNVNNO0lBT0k7RTFFNjRTVjtFMEVwNVNNO0lBT0k7RTFFZzVTVjtFMEV2NVNNO0lBT0k7RTFFbTVTVjtFMEUxNVNNO0lBT0k7RTFFczVTVjtFMEU3NVNNO0lBT0k7RTFFeTVTVjtFMEVoNlNNO0lBT0k7RTFFNDVTVjtFMEVuNlNNO0lBT0k7RTFFKzVTVjtFMEV0NlNNO0lBT0k7RTFFazZTVjtFMEV6NlNNO0lBT0k7RTFFcTZTVjtFMEU1NlNNO0lBT0k7RTFFdzZTVjtFMEUvNlNNO0lBT0k7RTFFMjZTVjtFMEVsN1NNO0lBT0k7RTFFODZTVjtFMEVyN1NNO0lBT0k7RTFFaTdTVjtFMEV4N1NNO0lBT0k7RTFFbzdTVjtFMEUzN1NNO0lBT0k7RTFFdTdTVjtFMEU5N1NNO0lBT0k7RTFFMDdTVjtFMEVqOFNNO0lBT0k7RTFFNjdTVjtFMEVwOFNNO0lBT0k7RTFFZzhTVjtFMEV2OFNNO0lBT0k7RTFFbThTVjtFMEUxOFNNO0lBT0k7RTFFczhTVjtFMEU3OFNNO0lBT0k7RTFFeThTVjtFMEVoOVNNO0lBT0k7RTFFNDhTVjtFMEVuOVNNO0lBT0k7RTFFKzhTVjtFMEV0OVNNO0lBT0k7RTFFazlTVjtFMEV6OVNNO0lBT0k7RTFFcTlTVjtFMEU1OVNNO0lBT0k7RTFFdzlTVjtFMEUvOVNNO0lBT0k7RTFFMjlTVjtFMEVsK1NNO0lBT0k7RTFFODlTVjtFMEVyK1NNO0lBT0k7RTFFaStTVjtFMEV4K1NNO0lBT0k7RTFFbytTVjtFMEUzK1NNO0lBT0k7RTFFdStTVjtFMEU5K1NNO0lBT0k7RTFFMCtTVjtFMEVqL1NNO0lBT0k7RTFFNitTVjtFMEVwL1NNO0lBT0k7RTFFZy9TVjtFMEV2L1NNO0lBT0k7RTFFbS9TVjtFMEUxL1NNO0lBT0k7RTFFcy9TVjtFMEU3L1NNO0lBT0k7RTFFeS9TVjtFMEVoZ1RNO0lBT0k7RTFFNC9TVjtFMEVuZ1RNO0lBT0k7RTFFKy9TVjtFMEV0Z1RNO0lBT0k7RTFFa2dUVjtFMEV6Z1RNO0lBT0k7RTFFcWdUVjtFMEU1Z1RNO0lBT0k7RTFFd2dUVjtFMEUvZ1RNO0lBT0k7RTFFMmdUVjtFMEVsaFRNO0lBT0k7RTFFOGdUVjtFMEVyaFRNO0lBT0k7RTFFaWhUVjtFMEV4aFRNO0lBT0k7RTFFb2hUVjtFMEUzaFRNO0lBT0k7RTFFdWhUVjtFMEU5aFRNO0lBT0k7RTFFMGhUVjtFMEVqaVRNO0lBT0k7RTFFNmhUVjtFMEVwaVRNO0lBT0k7RTFFZ2lUVjtFMEV2aVRNO0lBT0k7RTFFbWlUVjtFMEUxaVRNO0lBT0k7RTFFc2lUVjtFMEU3aVRNO0lBT0k7SUFBQTtFMUUwaVRWO0UwRWpqVE07SUFPSTtJQUFBO0UxRThpVFY7RTBFcmpUTTtJQU9JO0lBQUE7RTFFa2pUVjtFMEV6alRNO0lBT0k7SUFBQTtFMUVzalRWO0UwRTdqVE07SUFPSTtJQUFBO0UxRTBqVFY7RTBFamtUTTtJQU9JO0lBQUE7RTFFOGpUVjtFMEVya1RNO0lBT0k7SUFBQTtFMUVra1RWO0UwRXprVE07SUFPSTtJQUFBO0UxRXNrVFY7RTBFN2tUTTtJQU9JO0lBQUE7RTFFMGtUVjtFMEVqbFRNO0lBT0k7SUFBQTtFMUU4a1RWO0UwRXJsVE07SUFPSTtJQUFBO0UxRWtsVFY7RTBFemxUTTtJQU9JO0lBQUE7RTFFc2xUVjtFMEU3bFRNO0lBT0k7SUFBQTtFMUUwbFRWO0UwRWptVE07SUFPSTtJQUFBO0UxRThsVFY7RTBFcm1UTTtJQU9JO0UxRWltVFY7RTBFeG1UTTtJQU9JO0UxRW9tVFY7RTBFM21UTTtJQU9JO0UxRXVtVFY7RTBFOW1UTTtJQU9JO0UxRTBtVFY7RTBFam5UTTtJQU9JO0UxRTZtVFY7RTBFcG5UTTtJQU9JO0UxRWduVFY7RTBFdm5UTTtJQU9JO0UxRW1uVFY7RTBFMW5UTTtJQU9JO0UxRXNuVFY7RTBFN25UTTtJQU9JO0UxRXluVFY7RTBFaG9UTTtJQU9JO0UxRTRuVFY7RTBFbm9UTTtJQU9JO0UxRStuVFY7RTBFdG9UTTtJQU9JO0UxRWtvVFY7RTBFem9UTTtJQU9JO0UxRXFvVFY7RTBFNW9UTTtJQU9JO0UxRXdvVFY7RTBFL29UTTtJQU9JO0UxRTJvVFY7RTBFbHBUTTtJQU9JO0UxRThvVFY7RTBFcnBUTTtJQU9JO0UxRWlwVFY7RTBFeHBUTTtJQU9JO0UxRW9wVFY7RTBFM3BUTTtJQU9JO0UxRXVwVFY7RTBFOXBUTTtJQU9JO0UxRTBwVFY7RTBFanFUTTtJQU9JO0UxRTZwVFY7RTBFcHFUTTtJQU9JO0UxRWdxVFY7RTBFdnFUTTtJQU9JO0UxRW1xVFY7RTBFMXFUTTtJQU9JO0UxRXNxVFY7RTBFN3FUTTtJQU9JO0UxRXlxVFY7RTBFaHJUTTtJQU9JO0UxRTRxVFY7RTBFbnJUTTtJQU9JO0UxRStxVFY7RTBFdHJUTTtJQU9JO0UxRWtyVFY7RTBFenJUTTtJQU9JO0UxRXFyVFY7RTBFNXJUTTtJQU9JO0UxRXdyVFY7RTBFL3JUTTtJQU9JO0UxRTJyVFY7RTBFbHNUTTtJQU9JO0UxRThyVFY7RTBFcnNUTTtJQU9JO0UxRWlzVFY7RTBFeHNUTTtJQU9JO0UxRW9zVFY7RTBFM3NUTTtJQU9JO0lBQUE7RTFFd3NUVjtFMEUvc1RNO0lBT0k7SUFBQTtFMUU0c1RWO0UwRW50VE07SUFPSTtJQUFBO0UxRWd0VFY7RTBFdnRUTTtJQU9JO0lBQUE7RTFFb3RUVjtFMEUzdFRNO0lBT0k7SUFBQTtFMUV3dFRWO0UwRS90VE07SUFPSTtJQUFBO0UxRTR0VFY7RTBFbnVUTTtJQU9JO0lBQUE7RTFFZ3VUVjtFMEV2dVRNO0lBT0k7SUFBQTtFMUVvdVRWO0UwRTN1VE07SUFPSTtJQUFBO0UxRXd1VFY7RTBFL3VUTTtJQU9JO0lBQUE7RTFFNHVUVjtFMEVudlRNO0lBT0k7SUFBQTtFMUVndlRWO0UwRXZ2VE07SUFPSTtJQUFBO0UxRW92VFY7RTBFM3ZUTTtJQU9JO0UxRXV2VFY7RTBFOXZUTTtJQU9JO0UxRTB2VFY7RTBFandUTTtJQU9JO0UxRTZ2VFY7RTBFcHdUTTtJQU9JO0UxRWd3VFY7RTBFdndUTTtJQU9JO0UxRW13VFY7RTBFMXdUTTtJQU9JO0UxRXN3VFY7RTBFN3dUTTtJQU9JO0UxRXl3VFY7RTBFaHhUTTtJQU9JO0UxRTR3VFY7RTBFbnhUTTtJQU9JO0UxRSt3VFY7RTBFdHhUTTtJQU9JO0UxRWt4VFY7RTBFenhUTTtJQU9JO0UxRXF4VFY7RTBFNXhUTTtJQU9JO0UxRXd4VFY7RTBFL3hUTTtJQU9JO0UxRTJ4VFY7RTBFbHlUTTtJQU9JO0UxRTh4VFY7RTBFcnlUTTtJQU9JO0UxRWl5VFY7RTBFeHlUTTtJQU9JO0UxRW95VFY7RTBFM3lUTTtJQU9JO0UxRXV5VFY7RTBFOXlUTTtJQU9JO0UxRTB5VFY7RTBFanpUTTtJQU9JO0UxRTZ5VFY7RTBFcHpUTTtJQU9JO0UxRWd6VFY7RTBFdnpUTTtJQU9JO0UxRW16VFY7RTBFMXpUTTtJQU9JO0UxRXN6VFY7RTBFN3pUTTtJQU9JO0UxRXl6VFY7RTBFaDBUTTtJQU9JO0UxRTR6VFY7RTBFbjBUTTtJQU9JO0UxRSt6VFY7RTBFdDBUTTtJQU9JO0UxRWswVFY7RTBFejBUTTtJQU9JO0UxRXEwVFY7RTBFNTBUTTtJQU9JO0UxRXcwVFY7RTBFLzBUTTtJQU9JO0UxRTIwVFY7RTBFbDFUTTtJQU9JO0UxRTgwVFY7RTBFcjFUTTtJQU9JO0UxRWkxVFY7RTBFeDFUTTtJQU9JO0UxRW8xVFY7RTBFMzFUTTtJQU9JO0UxRXUxVFY7RTBFOTFUTTtJQU9JO0UxRTAxVFY7RTBFajJUTTtJQU9JO0UxRTYxVFY7RTBFcDJUTTtJQU9JO0UxRWcyVFY7RTBFdjJUTTtJQU9JO0UxRW0yVFY7RTBFMTJUTTtJQU9JO0UxRXMyVFY7RTBFNzJUTTtJQU9JO0UxRXkyVFY7RTBFaDNUTTtJQU9JO0UxRTQyVFY7RTBFbjNUTTtJQU9JO0UxRSsyVFY7RTBFdDNUTTtJQU9JO0UxRWszVFY7RTBFejNUTTtJQU9JO0UxRXEzVFY7RTBFNTNUTTtJQU9JO0UxRXczVFY7RTBFLzNUTTtJQU9JO0UxRTIzVFY7QUFDRjtBZ0J0NFRJO0UwREdJO0lBT0k7RTFFZzRUVjtFMEV2NFRNO0lBT0k7RTFFbTRUVjtFMEUxNFRNO0lBT0k7RTFFczRUVjtFMEU3NFRNO0lBT0k7RTFFeTRUVjtFMEVoNVRNO0lBT0k7RTFFNDRUVjtFMEVuNVRNO0lBT0k7RTFFKzRUVjtFMEV0NVRNO0lBT0k7RTFFazVUVjtFMEV6NVRNO0lBT0k7RTFFcTVUVjtFMEU1NVRNO0lBT0k7RTFFdzVUVjtFMEUvNVRNO0lBT0k7RTFFMjVUVjtFMEVsNlRNO0lBT0k7RTFFODVUVjtFMEVyNlRNO0lBT0k7RTFFaTZUVjtFMEV4NlRNO0lBT0k7RTFFbzZUVjtFMEUzNlRNO0lBT0k7RTFFdTZUVjtFMEU5NlRNO0lBT0k7RTFFMDZUVjtFMEVqN1RNO0lBT0k7RTFFNjZUVjtFMEVwN1RNO0lBT0k7RTFFZzdUVjtFMEV2N1RNO0lBT0k7RTFFbTdUVjtFMEUxN1RNO0lBT0k7RTFFczdUVjtFMEU3N1RNO0lBT0k7RTFFeTdUVjtFMEVoOFRNO0lBT0k7RTFFNDdUVjtFMEVuOFRNO0lBT0k7RTFFKzdUVjtFMEV0OFRNO0lBT0k7RTFFazhUVjtFMEV6OFRNO0lBT0k7RTFFcThUVjtFMEU1OFRNO0lBT0k7RTFFdzhUVjtFMEUvOFRNO0lBT0k7RTFFMjhUVjtFMEVsOVRNO0lBT0k7RTFFODhUVjtFMEVyOVRNO0lBT0k7RTFFaTlUVjtFMEV4OVRNO0lBT0k7RTFFbzlUVjtFMEUzOVRNO0lBT0k7RTFFdTlUVjtFMEU5OVRNO0lBT0k7RTFFMDlUVjtFMEVqK1RNO0lBT0k7RTFFNjlUVjtFMEVwK1RNO0lBT0k7RTFFZytUVjtFMEV2K1RNO0lBT0k7RTFFbStUVjtFMEUxK1RNO0lBT0k7RTFFcytUVjtFMEU3K1RNO0lBT0k7RTFFeStUVjtFMEVoL1RNO0lBT0k7RTFFNCtUVjtFMEVuL1RNO0lBT0k7RTFFKytUVjtFMEV0L1RNO0lBT0k7RTFFay9UVjtFMEV6L1RNO0lBT0k7RTFFcS9UVjtFMEU1L1RNO0lBT0k7RTFFdy9UVjtFMEUvL1RNO0lBT0k7RTFFMi9UVjtFMEVsZ1VNO0lBT0k7RTFFOC9UVjtFMEVyZ1VNO0lBT0k7RTFFaWdVVjtFMEV4Z1VNO0lBT0k7RTFFb2dVVjtFMEUzZ1VNO0lBT0k7RTFFdWdVVjtFMEU5Z1VNO0lBT0k7RTFFMGdVVjtFMEVqaFVNO0lBT0k7RTFFNmdVVjtFMEVwaFVNO0lBT0k7RTFFZ2hVVjtFMEV2aFVNO0lBT0k7RTFFbWhVVjtFMEUxaFVNO0lBT0k7RTFFc2hVVjtFMEU3aFVNO0lBT0k7RTFFeWhVVjtFMEVoaVVNO0lBT0k7RTFFNGhVVjtFMEVuaVVNO0lBT0k7RTFFK2hVVjtFMEV0aVVNO0lBT0k7RTFFa2lVVjtFMEV6aVVNO0lBT0k7RTFFcWlVVjtFMEU1aVVNO0lBT0k7RTFFd2lVVjtFMEUvaVVNO0lBT0k7RTFFMmlVVjtFMEVsalVNO0lBT0k7RTFFOGlVVjtFMEVyalVNO0lBT0k7RTFFaWpVVjtFMEV4alVNO0lBT0k7RTFFb2pVVjtFMEUzalVNO0lBT0k7RTFFdWpVVjtFMEU5alVNO0lBT0k7RTFFMGpVVjtFMEVqa1VNO0lBT0k7RTFFNmpVVjtFMEVwa1VNO0lBT0k7RTFFZ2tVVjtFMEV2a1VNO0lBT0k7RTFFbWtVVjtFMEUxa1VNO0lBT0k7RTFFc2tVVjtFMEU3a1VNO0lBT0k7RTFFeWtVVjtFMEVobFVNO0lBT0k7RTFFNGtVVjtFMEVubFVNO0lBT0k7SUFBQTtFMUVnbFVWO0UwRXZsVU07SUFPSTtJQUFBO0UxRW9sVVY7RTBFM2xVTTtJQU9JO0lBQUE7RTFFd2xVVjtFMEUvbFVNO0lBT0k7SUFBQTtFMUU0bFVWO0UwRW5tVU07SUFPSTtJQUFBO0UxRWdtVVY7RTBFdm1VTTtJQU9JO0lBQUE7RTFFb21VVjtFMEUzbVVNO0lBT0k7SUFBQTtFMUV3bVVWO0UwRS9tVU07SUFPSTtJQUFBO0UxRTRtVVY7RTBFbm5VTTtJQU9JO0lBQUE7RTFFZ25VVjtFMEV2blVNO0lBT0k7SUFBQTtFMUVvblVWO0UwRTNuVU07SUFPSTtJQUFBO0UxRXduVVY7RTBFL25VTTtJQU9JO0lBQUE7RTFFNG5VVjtFMEVub1VNO0lBT0k7SUFBQTtFMUVnb1VWO0UwRXZvVU07SUFPSTtJQUFBO0UxRW9vVVY7RTBFM29VTTtJQU9JO0UxRXVvVVY7RTBFOW9VTTtJQU9JO0UxRTBvVVY7RTBFanBVTTtJQU9JO0UxRTZvVVY7RTBFcHBVTTtJQU9JO0UxRWdwVVY7RTBFdnBVTTtJQU9JO0UxRW1wVVY7RTBFMXBVTTtJQU9JO0UxRXNwVVY7RTBFN3BVTTtJQU9JO0UxRXlwVVY7RTBFaHFVTTtJQU9JO0UxRTRwVVY7RTBFbnFVTTtJQU9JO0UxRStwVVY7RTBFdHFVTTtJQU9JO0UxRWtxVVY7RTBFenFVTTtJQU9JO0UxRXFxVVY7RTBFNXFVTTtJQU9JO0UxRXdxVVY7RTBFL3FVTTtJQU9JO0UxRTJxVVY7RTBFbHJVTTtJQU9JO0UxRThxVVY7RTBFcnJVTTtJQU9JO0UxRWlyVVY7RTBFeHJVTTtJQU9JO0UxRW9yVVY7RTBFM3JVTTtJQU9JO0UxRXVyVVY7RTBFOXJVTTtJQU9JO0UxRTByVVY7RTBFanNVTTtJQU9JO0UxRTZyVVY7RTBFcHNVTTtJQU9JO0UxRWdzVVY7RTBFdnNVTTtJQU9JO0UxRW1zVVY7RTBFMXNVTTtJQU9JO0UxRXNzVVY7RTBFN3NVTTtJQU9JO0UxRXlzVVY7RTBFaHRVTTtJQU9JO0UxRTRzVVY7RTBFbnRVTTtJQU9JO0UxRStzVVY7RTBFdHRVTTtJQU9JO0UxRWt0VVY7RTBFenRVTTtJQU9JO0UxRXF0VVY7RTBFNXRVTTtJQU9JO0UxRXd0VVY7RTBFL3RVTTtJQU9JO0UxRTJ0VVY7RTBFbHVVTTtJQU9JO0UxRTh0VVY7RTBFcnVVTTtJQU9JO0UxRWl1VVY7RTBFeHVVTTtJQU9JO0UxRW91VVY7RTBFM3VVTTtJQU9JO0UxRXV1VVY7RTBFOXVVTTtJQU9JO0UxRTB1VVY7RTBFanZVTTtJQU9JO0lBQUE7RTFFOHVVVjtFMEVydlVNO0lBT0k7SUFBQTtFMUVrdlVWO0UwRXp2VU07SUFPSTtJQUFBO0UxRXN2VVY7RTBFN3ZVTTtJQU9JO0lBQUE7RTFFMHZVVjtFMEVqd1VNO0lBT0k7SUFBQTtFMUU4dlVWO0UwRXJ3VU07SUFPSTtJQUFBO0UxRWt3VVY7RTBFendVTTtJQU9JO0lBQUE7RTFFc3dVVjtFMEU3d1VNO0lBT0k7SUFBQTtFMUUwd1VWO0UwRWp4VU07SUFPSTtJQUFBO0UxRTh3VVY7RTBFcnhVTTtJQU9JO0lBQUE7RTFFa3hVVjtFMEV6eFVNO0lBT0k7SUFBQTtFMUVzeFVWO0UwRTd4VU07SUFPSTtJQUFBO0UxRTB4VVY7RTBFanlVTTtJQU9JO0UxRTZ4VVY7RTBFcHlVTTtJQU9JO0UxRWd5VVY7RTBFdnlVTTtJQU9JO0UxRW15VVY7RTBFMXlVTTtJQU9JO0UxRXN5VVY7RTBFN3lVTTtJQU9JO0UxRXl5VVY7RTBFaHpVTTtJQU9JO0UxRTR5VVY7RTBFbnpVTTtJQU9JO0UxRSt5VVY7RTBFdHpVTTtJQU9JO0UxRWt6VVY7RTBFenpVTTtJQU9JO0UxRXF6VVY7RTBFNXpVTTtJQU9JO0UxRXd6VVY7RTBFL3pVTTtJQU9JO0UxRTJ6VVY7RTBFbDBVTTtJQU9JO0UxRTh6VVY7RTBFcjBVTTtJQU9JO0UxRWkwVVY7RTBFeDBVTTtJQU9JO0UxRW8wVVY7RTBFMzBVTTtJQU9JO0UxRXUwVVY7RTBFOTBVTTtJQU9JO0UxRTAwVVY7RTBFajFVTTtJQU9JO0UxRTYwVVY7RTBFcDFVTTtJQU9JO0UxRWcxVVY7RTBFdjFVTTtJQU9JO0UxRW0xVVY7RTBFMTFVTTtJQU9JO0UxRXMxVVY7RTBFNzFVTTtJQU9JO0UxRXkxVVY7RTBFaDJVTTtJQU9JO0UxRTQxVVY7RTBFbjJVTTtJQU9JO0UxRSsxVVY7RTBFdDJVTTtJQU9JO0UxRWsyVVY7RTBFejJVTTtJQU9JO0UxRXEyVVY7RTBFNTJVTTtJQU9JO0UxRXcyVVY7RTBFLzJVTTtJQU9JO0UxRTIyVVY7RTBFbDNVTTtJQU9JO0UxRTgyVVY7RTBFcjNVTTtJQU9JO0UxRWkzVVY7RTBFeDNVTTtJQU9JO0UxRW8zVVY7RTBFMzNVTTtJQU9JO0UxRXUzVVY7RTBFOTNVTTtJQU9JO0UxRTAzVVY7RTBFajRVTTtJQU9JO0UxRTYzVVY7RTBFcDRVTTtJQU9JO0UxRWc0VVY7RTBFdjRVTTtJQU9JO0UxRW00VVY7RTBFMTRVTTtJQU9JO0UxRXM0VVY7RTBFNzRVTTtJQU9JO0UxRXk0VVY7RTBFaDVVTTtJQU9JO0UxRTQ0VVY7RTBFbjVVTTtJQU9JO0UxRSs0VVY7RTBFdDVVTTtJQU9JO0UxRWs1VVY7RTBFejVVTTtJQU9JO0UxRXE1VVY7RTBFNTVVTTtJQU9JO0UxRXc1VVY7RTBFLzVVTTtJQU9JO0UxRTI1VVY7RTBFbDZVTTtJQU9JO0UxRTg1VVY7RTBFcjZVTTtJQU9JO0UxRWk2VVY7QUFDRjtBZ0I1NlVJO0UwREdJO0lBT0k7RTFFczZVVjtFMEU3NlVNO0lBT0k7RTFFeTZVVjtFMEVoN1VNO0lBT0k7RTFFNDZVVjtFMEVuN1VNO0lBT0k7RTFFKzZVVjtFMEV0N1VNO0lBT0k7RTFFazdVVjtFMEV6N1VNO0lBT0k7RTFFcTdVVjtFMEU1N1VNO0lBT0k7RTFFdzdVVjtFMEUvN1VNO0lBT0k7RTFFMjdVVjtFMEVsOFVNO0lBT0k7RTFFODdVVjtFMEVyOFVNO0lBT0k7RTFFaThVVjtFMEV4OFVNO0lBT0k7RTFFbzhVVjtFMEUzOFVNO0lBT0k7RTFFdThVVjtFMEU5OFVNO0lBT0k7RTFFMDhVVjtFMEVqOVVNO0lBT0k7RTFFNjhVVjtFMEVwOVVNO0lBT0k7RTFFZzlVVjtFMEV2OVVNO0lBT0k7RTFFbTlVVjtFMEUxOVVNO0lBT0k7RTFFczlVVjtFMEU3OVVNO0lBT0k7RTFFeTlVVjtFMEVoK1VNO0lBT0k7RTFFNDlVVjtFMEVuK1VNO0lBT0k7RTFFKzlVVjtFMEV0K1VNO0lBT0k7RTFFaytVVjtFMEV6K1VNO0lBT0k7RTFFcStVVjtFMEU1K1VNO0lBT0k7RTFFdytVVjtFMEUvK1VNO0lBT0k7RTFFMitVVjtFMEVsL1VNO0lBT0k7RTFFOCtVVjtFMEVyL1VNO0lBT0k7RTFFaS9VVjtFMEV4L1VNO0lBT0k7RTFFby9VVjtFMEUzL1VNO0lBT0k7RTFFdS9VVjtFMEU5L1VNO0lBT0k7RTFFMC9VVjtFMEVqZ1ZNO0lBT0k7RTFFNi9VVjtFMEVwZ1ZNO0lBT0k7RTFFZ2dWVjtFMEV2Z1ZNO0lBT0k7RTFFbWdWVjtFMEUxZ1ZNO0lBT0k7RTFFc2dWVjtFMEU3Z1ZNO0lBT0k7RTFFeWdWVjtFMEVoaFZNO0lBT0k7RTFFNGdWVjtFMEVuaFZNO0lBT0k7RTFFK2dWVjtFMEV0aFZNO0lBT0k7RTFFa2hWVjtFMEV6aFZNO0lBT0k7RTFFcWhWVjtFMEU1aFZNO0lBT0k7RTFFd2hWVjtFMEUvaFZNO0lBT0k7RTFFMmhWVjtFMEVsaVZNO0lBT0k7RTFFOGhWVjtFMEVyaVZNO0lBT0k7RTFFaWlWVjtFMEV4aVZNO0lBT0k7RTFFb2lWVjtFMEUzaVZNO0lBT0k7RTFFdWlWVjtFMEU5aVZNO0lBT0k7RTFFMGlWVjtFMEVqalZNO0lBT0k7RTFFNmlWVjtFMEVwalZNO0lBT0k7RTFFZ2pWVjtFMEV2alZNO0lBT0k7RTFFbWpWVjtFMEUxalZNO0lBT0k7RTFFc2pWVjtFMEU3alZNO0lBT0k7RTFFeWpWVjtFMEVoa1ZNO0lBT0k7RTFFNGpWVjtFMEVua1ZNO0lBT0k7RTFFK2pWVjtFMEV0a1ZNO0lBT0k7RTFFa2tWVjtFMEV6a1ZNO0lBT0k7RTFFcWtWVjtFMEU1a1ZNO0lBT0k7RTFFd2tWVjtFMEUva1ZNO0lBT0k7RTFFMmtWVjtFMEVsbFZNO0lBT0k7RTFFOGtWVjtFMEVybFZNO0lBT0k7RTFFaWxWVjtFMEV4bFZNO0lBT0k7RTFFb2xWVjtFMEUzbFZNO0lBT0k7RTFFdWxWVjtFMEU5bFZNO0lBT0k7RTFFMGxWVjtFMEVqbVZNO0lBT0k7RTFFNmxWVjtFMEVwbVZNO0lBT0k7RTFFZ21WVjtFMEV2bVZNO0lBT0k7RTFFbW1WVjtFMEUxbVZNO0lBT0k7RTFFc21WVjtFMEU3bVZNO0lBT0k7RTFFeW1WVjtFMEVoblZNO0lBT0k7RTFFNG1WVjtFMEVublZNO0lBT0k7RTFFK21WVjtFMEV0blZNO0lBT0k7RTFFa25WVjtFMEV6blZNO0lBT0k7SUFBQTtFMUVzblZWO0UwRTduVk07SUFPSTtJQUFBO0UxRTBuVlY7RTBFam9WTTtJQU9JO0lBQUE7RTFFOG5WVjtFMEVyb1ZNO0lBT0k7SUFBQTtFMUVrb1ZWO0UwRXpvVk07SUFPSTtJQUFBO0UxRXNvVlY7RTBFN29WTTtJQU9JO0lBQUE7RTFFMG9WVjtFMEVqcFZNO0lBT0k7SUFBQTtFMUU4b1ZWO0UwRXJwVk07SUFPSTtJQUFBO0UxRWtwVlY7RTBFenBWTTtJQU9JO0lBQUE7RTFFc3BWVjtFMEU3cFZNO0lBT0k7SUFBQTtFMUUwcFZWO0UwRWpxVk07SUFPSTtJQUFBO0UxRThwVlY7RTBFcnFWTTtJQU9JO0lBQUE7RTFFa3FWVjtFMEV6cVZNO0lBT0k7SUFBQTtFMUVzcVZWO0UwRTdxVk07SUFPSTtJQUFBO0UxRTBxVlY7RTBFanJWTTtJQU9JO0UxRTZxVlY7RTBFcHJWTTtJQU9JO0UxRWdyVlY7RTBFdnJWTTtJQU9JO0UxRW1yVlY7RTBFMXJWTTtJQU9JO0UxRXNyVlY7RTBFN3JWTTtJQU9JO0UxRXlyVlY7RTBFaHNWTTtJQU9JO0UxRTRyVlY7RTBFbnNWTTtJQU9JO0UxRStyVlY7RTBFdHNWTTtJQU9JO0UxRWtzVlY7RTBFenNWTTtJQU9JO0UxRXFzVlY7RTBFNXNWTTtJQU9JO0UxRXdzVlY7RTBFL3NWTTtJQU9JO0UxRTJzVlY7RTBFbHRWTTtJQU9JO0UxRThzVlY7RTBFcnRWTTtJQU9JO0UxRWl0VlY7RTBFeHRWTTtJQU9JO0UxRW90VlY7RTBFM3RWTTtJQU9JO0UxRXV0VlY7RTBFOXRWTTtJQU9JO0UxRTB0VlY7RTBFanVWTTtJQU9JO0UxRTZ0VlY7RTBFcHVWTTtJQU9JO0UxRWd1VlY7RTBFdnVWTTtJQU9JO0UxRW11VlY7RTBFMXVWTTtJQU9JO0UxRXN1VlY7RTBFN3VWTTtJQU9JO0UxRXl1VlY7RTBFaHZWTTtJQU9JO0UxRTR1VlY7RTBFbnZWTTtJQU9JO0UxRSt1VlY7RTBFdHZWTTtJQU9JO0UxRWt2VlY7RTBFenZWTTtJQU9JO0UxRXF2VlY7RTBFNXZWTTtJQU9JO0UxRXd2VlY7RTBFL3ZWTTtJQU9JO0UxRTJ2VlY7RTBFbHdWTTtJQU9JO0UxRTh2VlY7RTBFcndWTTtJQU9JO0UxRWl3VlY7RTBFeHdWTTtJQU9JO0UxRW93VlY7RTBFM3dWTTtJQU9JO0UxRXV3VlY7RTBFOXdWTTtJQU9JO0UxRTB3VlY7RTBFanhWTTtJQU9JO0UxRTZ3VlY7RTBFcHhWTTtJQU9JO0UxRWd4VlY7RTBFdnhWTTtJQU9JO0lBQUE7RTFFb3hWVjtFMEUzeFZNO0lBT0k7SUFBQTtFMUV3eFZWO0UwRS94Vk07SUFPSTtJQUFBO0UxRTR4VlY7RTBFbnlWTTtJQU9JO0lBQUE7RTFFZ3lWVjtFMEV2eVZNO0lBT0k7SUFBQTtFMUVveVZWO0UwRTN5Vk07SUFPSTtJQUFBO0UxRXd5VlY7RTBFL3lWTTtJQU9JO0lBQUE7RTFFNHlWVjtFMEVuelZNO0lBT0k7SUFBQTtFMUVnelZWO0UwRXZ6Vk07SUFPSTtJQUFBO0UxRW96VlY7RTBFM3pWTTtJQU9JO0lBQUE7RTFFd3pWVjtFMEUvelZNO0lBT0k7SUFBQTtFMUU0elZWO0UwRW4wVk07SUFPSTtJQUFBO0UxRWcwVlY7RTBFdjBWTTtJQU9JO0UxRW0wVlY7RTBFMTBWTTtJQU9JO0UxRXMwVlY7RTBFNzBWTTtJQU9JO0UxRXkwVlY7RTBFaDFWTTtJQU9JO0UxRTQwVlY7RTBFbjFWTTtJQU9JO0UxRSswVlY7RTBFdDFWTTtJQU9JO0UxRWsxVlY7RTBFejFWTTtJQU9JO0UxRXExVlY7RTBFNTFWTTtJQU9JO0UxRXcxVlY7RTBFLzFWTTtJQU9JO0UxRTIxVlY7RTBFbDJWTTtJQU9JO0UxRTgxVlY7RTBFcjJWTTtJQU9JO0UxRWkyVlY7RTBFeDJWTTtJQU9JO0UxRW8yVlY7RTBFMzJWTTtJQU9JO0UxRXUyVlY7RTBFOTJWTTtJQU9JO0UxRTAyVlY7RTBFajNWTTtJQU9JO0UxRTYyVlY7RTBFcDNWTTtJQU9JO0UxRWczVlY7RTBFdjNWTTtJQU9JO0UxRW0zVlY7RTBFMTNWTTtJQU9JO0UxRXMzVlY7RTBFNzNWTTtJQU9JO0UxRXkzVlY7RTBFaDRWTTtJQU9JO0UxRTQzVlY7RTBFbjRWTTtJQU9JO0UxRSszVlY7RTBFdDRWTTtJQU9JO0UxRWs0VlY7RTBFejRWTTtJQU9JO0UxRXE0VlY7RTBFNTRWTTtJQU9JO0UxRXc0VlY7RTBFLzRWTTtJQU9JO0UxRTI0VlY7RTBFbDVWTTtJQU9JO0UxRTg0VlY7RTBFcjVWTTtJQU9JO0UxRWk1VlY7RTBFeDVWTTtJQU9JO0UxRW81VlY7RTBFMzVWTTtJQU9JO0UxRXU1VlY7RTBFOTVWTTtJQU9JO0UxRTA1VlY7RTBFajZWTTtJQU9JO0UxRTY1VlY7RTBFcDZWTTtJQU9JO0UxRWc2VlY7RTBFdjZWTTtJQU9JO0UxRW02VlY7RTBFMTZWTTtJQU9JO0UxRXM2VlY7RTBFNzZWTTtJQU9JO0UxRXk2VlY7RTBFaDdWTTtJQU9JO0UxRTQ2VlY7RTBFbjdWTTtJQU9JO0UxRSs2VlY7RTBFdDdWTTtJQU9JO0UxRWs3VlY7RTBFejdWTTtJQU9JO0UxRXE3VlY7RTBFNTdWTTtJQU9JO0UxRXc3VlY7RTBFLzdWTTtJQU9JO0UxRTI3VlY7RTBFbDhWTTtJQU9JO0UxRTg3VlY7RTBFcjhWTTtJQU9JO0UxRWk4VlY7RTBFeDhWTTtJQU9JO0UxRW84VlY7RTBFMzhWTTtJQU9JO0UxRXU4VlY7QUFDRjtBZ0JsOVZJO0UwREdJO0lBT0k7RTFFNDhWVjtFMEVuOVZNO0lBT0k7RTFFKzhWVjtFMEV0OVZNO0lBT0k7RTFFazlWVjtFMEV6OVZNO0lBT0k7RTFFcTlWVjtFMEU1OVZNO0lBT0k7RTFFdzlWVjtFMEUvOVZNO0lBT0k7RTFFMjlWVjtFMEVsK1ZNO0lBT0k7RTFFODlWVjtFMEVyK1ZNO0lBT0k7RTFFaStWVjtFMEV4K1ZNO0lBT0k7RTFFbytWVjtFMEUzK1ZNO0lBT0k7RTFFdStWVjtFMEU5K1ZNO0lBT0k7RTFFMCtWVjtFMEVqL1ZNO0lBT0k7RTFFNitWVjtFMEVwL1ZNO0lBT0k7RTFFZy9WVjtFMEV2L1ZNO0lBT0k7RTFFbS9WVjtFMEUxL1ZNO0lBT0k7RTFFcy9WVjtFMEU3L1ZNO0lBT0k7RTFFeS9WVjtFMEVoZ1dNO0lBT0k7RTFFNC9WVjtFMEVuZ1dNO0lBT0k7RTFFKy9WVjtFMEV0Z1dNO0lBT0k7RTFFa2dXVjtFMEV6Z1dNO0lBT0k7RTFFcWdXVjtFMEU1Z1dNO0lBT0k7RTFFd2dXVjtFMEUvZ1dNO0lBT0k7RTFFMmdXVjtFMEVsaFdNO0lBT0k7RTFFOGdXVjtFMEVyaFdNO0lBT0k7RTFFaWhXVjtFMEV4aFdNO0lBT0k7RTFFb2hXVjtFMEUzaFdNO0lBT0k7RTFFdWhXVjtFMEU5aFdNO0lBT0k7RTFFMGhXVjtFMEVqaVdNO0lBT0k7RTFFNmhXVjtFMEVwaVdNO0lBT0k7RTFFZ2lXVjtFMEV2aVdNO0lBT0k7RTFFbWlXVjtFMEUxaVdNO0lBT0k7RTFFc2lXVjtFMEU3aVdNO0lBT0k7RTFFeWlXVjtFMEVoaldNO0lBT0k7RTFFNGlXVjtFMEVualdNO0lBT0k7RTFFK2lXVjtFMEV0aldNO0lBT0k7RTFFa2pXVjtFMEV6aldNO0lBT0k7RTFFcWpXVjtFMEU1aldNO0lBT0k7RTFFd2pXVjtFMEUvaldNO0lBT0k7RTFFMmpXVjtFMEVsa1dNO0lBT0k7RTFFOGpXVjtFMEVya1dNO0lBT0k7RTFFaWtXVjtFMEV4a1dNO0lBT0k7RTFFb2tXVjtFMEUza1dNO0lBT0k7RTFFdWtXVjtFMEU5a1dNO0lBT0k7RTFFMGtXVjtFMEVqbFdNO0lBT0k7RTFFNmtXVjtFMEVwbFdNO0lBT0k7RTFFZ2xXVjtFMEV2bFdNO0lBT0k7RTFFbWxXVjtFMEUxbFdNO0lBT0k7RTFFc2xXVjtFMEU3bFdNO0lBT0k7RTFFeWxXVjtFMEVobVdNO0lBT0k7RTFFNGxXVjtFMEVubVdNO0lBT0k7RTFFK2xXVjtFMEV0bVdNO0lBT0k7RTFFa21XVjtFMEV6bVdNO0lBT0k7RTFFcW1XVjtFMEU1bVdNO0lBT0k7RTFFd21XVjtFMEUvbVdNO0lBT0k7RTFFMm1XVjtFMEVsbldNO0lBT0k7RTFFOG1XVjtFMEVybldNO0lBT0k7RTFFaW5XVjtFMEV4bldNO0lBT0k7RTFFb25XVjtFMEUzbldNO0lBT0k7RTFFdW5XVjtFMEU5bldNO0lBT0k7RTFFMG5XVjtFMEVqb1dNO0lBT0k7RTFFNm5XVjtFMEVwb1dNO0lBT0k7RTFFZ29XVjtFMEV2b1dNO0lBT0k7RTFFbW9XVjtFMEUxb1dNO0lBT0k7RTFFc29XVjtFMEU3b1dNO0lBT0k7RTFFeW9XVjtFMEVocFdNO0lBT0k7RTFFNG9XVjtFMEVucFdNO0lBT0k7RTFFK29XVjtFMEV0cFdNO0lBT0k7RTFFa3BXVjtFMEV6cFdNO0lBT0k7RTFFcXBXVjtFMEU1cFdNO0lBT0k7RTFFd3BXVjtFMEUvcFdNO0lBT0k7SUFBQTtFMUU0cFdWO0UwRW5xV007SUFPSTtJQUFBO0UxRWdxV1Y7RTBFdnFXTTtJQU9JO0lBQUE7RTFFb3FXVjtFMEUzcVdNO0lBT0k7SUFBQTtFMUV3cVdWO0UwRS9xV007SUFPSTtJQUFBO0UxRTRxV1Y7RTBFbnJXTTtJQU9JO0lBQUE7RTFFZ3JXVjtFMEV2cldNO0lBT0k7SUFBQTtFMUVvcldWO0UwRTNyV007SUFPSTtJQUFBO0UxRXdyV1Y7RTBFL3JXTTtJQU9JO0lBQUE7RTFFNHJXVjtFMEVuc1dNO0lBT0k7SUFBQTtFMUVnc1dWO0UwRXZzV007SUFPSTtJQUFBO0UxRW9zV1Y7RTBFM3NXTTtJQU9JO0lBQUE7RTFFd3NXVjtFMEUvc1dNO0lBT0k7SUFBQTtFMUU0c1dWO0UwRW50V007SUFPSTtJQUFBO0UxRWd0V1Y7RTBFdnRXTTtJQU9JO0UxRW10V1Y7RTBFMXRXTTtJQU9JO0UxRXN0V1Y7RTBFN3RXTTtJQU9JO0UxRXl0V1Y7RTBFaHVXTTtJQU9JO0UxRTR0V1Y7RTBFbnVXTTtJQU9JO0UxRSt0V1Y7RTBFdHVXTTtJQU9JO0UxRWt1V1Y7RTBFenVXTTtJQU9JO0UxRXF1V1Y7RTBFNXVXTTtJQU9JO0UxRXd1V1Y7RTBFL3VXTTtJQU9JO0UxRTJ1V1Y7RTBFbHZXTTtJQU9JO0UxRTh1V1Y7RTBFcnZXTTtJQU9JO0UxRWl2V1Y7RTBFeHZXTTtJQU9JO0UxRW92V1Y7RTBFM3ZXTTtJQU9JO0UxRXV2V1Y7RTBFOXZXTTtJQU9JO0UxRTB2V1Y7RTBFandXTTtJQU9JO0UxRTZ2V1Y7RTBFcHdXTTtJQU9JO0UxRWd3V1Y7RTBFdndXTTtJQU9JO0UxRW13V1Y7RTBFMXdXTTtJQU9JO0UxRXN3V1Y7RTBFN3dXTTtJQU9JO0UxRXl3V1Y7RTBFaHhXTTtJQU9JO0UxRTR3V1Y7RTBFbnhXTTtJQU9JO0UxRSt3V1Y7RTBFdHhXTTtJQU9JO0UxRWt4V1Y7RTBFenhXTTtJQU9JO0UxRXF4V1Y7RTBFNXhXTTtJQU9JO0UxRXd4V1Y7RTBFL3hXTTtJQU9JO0UxRTJ4V1Y7RTBFbHlXTTtJQU9JO0UxRTh4V1Y7RTBFcnlXTTtJQU9JO0UxRWl5V1Y7RTBFeHlXTTtJQU9JO0UxRW95V1Y7RTBFM3lXTTtJQU9JO0UxRXV5V1Y7RTBFOXlXTTtJQU9JO0UxRTB5V1Y7RTBFanpXTTtJQU9JO0UxRTZ5V1Y7RTBFcHpXTTtJQU9JO0UxRWd6V1Y7RTBFdnpXTTtJQU9JO0UxRW16V1Y7RTBFMXpXTTtJQU9JO0UxRXN6V1Y7RTBFN3pXTTtJQU9JO0lBQUE7RTFFMHpXVjtFMEVqMFdNO0lBT0k7SUFBQTtFMUU4eldWO0UwRXIwV007SUFPSTtJQUFBO0UxRWswV1Y7RTBFejBXTTtJQU9JO0lBQUE7RTFFczBXVjtFMEU3MFdNO0lBT0k7SUFBQTtFMUUwMFdWO0UwRWoxV007SUFPSTtJQUFBO0UxRTgwV1Y7RTBFcjFXTTtJQU9JO0lBQUE7RTFFazFXVjtFMEV6MVdNO0lBT0k7SUFBQTtFMUVzMVdWO0UwRTcxV007SUFPSTtJQUFBO0UxRTAxV1Y7RTBFajJXTTtJQU9JO0lBQUE7RTFFODFXVjtFMEVyMldNO0lBT0k7SUFBQTtFMUVrMldWO0UwRXoyV007SUFPSTtJQUFBO0UxRXMyV1Y7RTBFNzJXTTtJQU9JO0UxRXkyV1Y7RTBFaDNXTTtJQU9JO0UxRTQyV1Y7RTBFbjNXTTtJQU9JO0UxRSsyV1Y7RTBFdDNXTTtJQU9JO0UxRWszV1Y7RTBFejNXTTtJQU9JO0UxRXEzV1Y7RTBFNTNXTTtJQU9JO0UxRXczV1Y7RTBFLzNXTTtJQU9JO0UxRTIzV1Y7RTBFbDRXTTtJQU9JO0UxRTgzV1Y7RTBFcjRXTTtJQU9JO0UxRWk0V1Y7RTBFeDRXTTtJQU9JO0UxRW80V1Y7RTBFMzRXTTtJQU9JO0UxRXU0V1Y7RTBFOTRXTTtJQU9JO0UxRTA0V1Y7RTBFajVXTTtJQU9JO0UxRTY0V1Y7RTBFcDVXTTtJQU9JO0UxRWc1V1Y7RTBFdjVXTTtJQU9JO0UxRW01V1Y7RTBFMTVXTTtJQU9JO0UxRXM1V1Y7RTBFNzVXTTtJQU9JO0UxRXk1V1Y7RTBFaDZXTTtJQU9JO0UxRTQ1V1Y7RTBFbjZXTTtJQU9JO0UxRSs1V1Y7RTBFdDZXTTtJQU9JO0UxRWs2V1Y7RTBFejZXTTtJQU9JO0UxRXE2V1Y7RTBFNTZXTTtJQU9JO0UxRXc2V1Y7RTBFLzZXTTtJQU9JO0UxRTI2V1Y7RTBFbDdXTTtJQU9JO0UxRTg2V1Y7RTBFcjdXTTtJQU9JO0UxRWk3V1Y7RTBFeDdXTTtJQU9JO0UxRW83V1Y7RTBFMzdXTTtJQU9JO0UxRXU3V1Y7RTBFOTdXTTtJQU9JO0UxRTA3V1Y7RTBFajhXTTtJQU9JO0UxRTY3V1Y7RTBFcDhXTTtJQU9JO0UxRWc4V1Y7RTBFdjhXTTtJQU9JO0UxRW04V1Y7RTBFMThXTTtJQU9JO0UxRXM4V1Y7RTBFNzhXTTtJQU9JO0UxRXk4V1Y7RTBFaDlXTTtJQU9JO0UxRTQ4V1Y7RTBFbjlXTTtJQU9JO0UxRSs4V1Y7RTBFdDlXTTtJQU9JO0UxRWs5V1Y7RTBFejlXTTtJQU9JO0UxRXE5V1Y7RTBFNTlXTTtJQU9JO0UxRXc5V1Y7RTBFLzlXTTtJQU9JO0UxRTI5V1Y7RTBFbCtXTTtJQU9JO0UxRTg5V1Y7RTBFcitXTTtJQU9JO0UxRWkrV1Y7RTBFeCtXTTtJQU9JO0UxRW8rV1Y7RTBFMytXTTtJQU9JO0UxRXUrV1Y7RTBFOStXTTtJQU9JO0UxRTArV1Y7RTBFai9XTTtJQU9JO0UxRTYrV1Y7QUFDRjtBMkVwaVhBO0VEK0NRO0lBT0k7RTFFay9XVjtFMEV6L1dNO0lBT0k7RTFFcS9XVjtFMEU1L1dNO0lBT0k7RTFFdy9XVjtFMEUvL1dNO0lBT0k7RTFFMi9XVjtBQUNGO0EyRS9oWEE7RUQ0QlE7SUFPSTtFMUVnZ1hWO0UwRXZnWE07SUFPSTtFMUVtZ1hWO0UwRTFnWE07SUFPSTtFMUVzZ1hWO0UwRTdnWE07SUFPSTtFMUV5Z1hWO0UwRWhoWE07SUFPSTtFMUU0Z1hWO0UwRW5oWE07SUFPSTtFMUUrZ1hWO0UwRXRoWE07SUFPSTtFMUVraFhWO0UwRXpoWE07SUFPSTtFMUVxaFhWO0UwRTVoWE07SUFPSTtFMUV3aFhWO0UwRS9oWE07SUFPSTtFMUUyaFhWO0UwRWxpWE07SUFPSTtFMUU4aFhWO0FBQ0Y7QTRFMWxYRTtFQUNFO0E1RTRsWEo7O0E0RXJsWEU7RUFDRSxjakVQTztBWCtsWFg7O0E0RXBsWEE7RUFDRSxXakVuQlM7RWlFb0JUO0E1RXVsWEY7QTRFcmxYRTs7RUFFRSxXakV4Qk87RWlFeUJQO0E1RXVsWEo7QTRFbmxYSTtFQUlJLHlCckU2UU87QVBxMFdmO0E0RXRsWEk7RUFJSSx5QnJFNlFPO0FQdzBXZjtBNEV6bFhJO0VBSUkseUJyRTZRTztBUDIwV2Y7QTRFNWxYSTtFQUlJLHlCckU2UU87QVA4MFdmO0E0RS9sWEk7RUFJSSx5QnJFNlFPO0FQaTFXZjtBNEVsbVhJO0VBSUkseUJyRTZRTztBUG8xV2Y7QTRFcm1YSTtFQUlJLHlCckU2UU87QVB1MVdmO0E0RXhtWEk7RUFJSSx5QnJFNlFPO0FQMDFXZjtBNEVqbVhJOzs7RUFHRSxjakVqQ0s7QVhvb1hYOztBNEV6bFhFOzs7RUFDRTtBNUU4bFhKOztBQWxwWEE7QTZFVkE7RUFDRTtBN0VncVhGOztBNkU3cFhBO0VBQ0U7QTdFZ3FYRjs7QUF4cFhBO0E4RWJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5cVhGOztBOEV0cVhBO0VBQ0U7QTlFeXFYRjs7QThFdHFYQTtFQUNFO0E5RXlxWEY7QThFdnFYRTtFQUNFO0VBQ0E7QTlFeXFYSjs7QThFcHFYRTtFQUNFO0E5RXVxWEo7O0E4RW5xWEE7RUFDRTtBOUVzcVhGOztBOEVscVhFO0VBQ0U7QTlFcXFYSjs7QThFanFYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVvcVhGOztBOEVocVhBO0VBQ0U7QTlFbXFYRjtBOEVqcVhFO0VBQ0U7RUFDQTtFQUNBO0E5RW1xWEo7QThFanFYSTtFQUNFO0E5RW1xWE47QThFL3BYRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFaXFYSjs7QThFNXBYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUUrcFhGOztBOEU1cFhBO0VBQ0U7RUFDQTtFQUNBO0E5RStwWEY7O0E4RTVwWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUUrcFhGOztBOEU1cFhBO0VBQ0U7QTlFK3BYRjs7QThFNXBYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFK3BYRjs7QThFNXBYQTtFQUNFO0E5RStwWEY7O0E4RTNwWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RThwWEo7QThFMXBYSTtFQUNFO0VBQ0E7RUFDQTtBOUU0cFhOOztBOEV2cFhBO0VBQ0U7QTlFMHBYRjs7QThFdnBYQTtFQUNFO0E5RTBwWEY7O0E4RXZwWEE7RUFDRTtFQUNBO0VBQ0E7QTlFMHBYRjtBOEV4cFhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFMHBYSjs7QThFdHBYQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV5cFhGO0FnQnJ2WEk7RThEc0ZKO0lBU0k7SUFDQTtFOUUwcFhGO0FBQ0Y7QThFeHBYRTtFQUNFO0VBQ0E7QTlFMHBYSjtBZ0IvdlhJO0U4RG1HRjtJQUtJO0lBQ0E7RTlFMnBYSjtBQUNGO0E4RXhwWEU7RUFDRTtFQUNBO0VBQ0E7QTlFMHBYSjtBOEV2cFhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFeXBYSjtBOEV0cFhFO0VBQ0U7RUFDQTtBOUV3cFhKO0E4RXRwWEk7RUFDRTtBOUV3cFhOOztBOEVucFhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFc3BYRjtBOEVucFhJO0VBQ0U7QTlFcXBYTjtBOEVqcFhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFbXBYSjtBOEVqcFhJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVtcFhOOztBOEU5b1hBO0VBQ0U7RUFDQTtFQUNBO0E5RWlwWEY7QWdCcHpYSTtFOERnS0o7SUFNSTtFOUVrcFhGO0FBQ0Y7O0E4RS9vWEE7RUFDRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RWlwWEY7QWdCcDBYSTtFOEQwS0o7SUFZSTtJQUNBO0U5RWtwWEY7QUFDRjtBOEVocFhFO0VBQ0U7QTlFa3BYSjtBOEUvb1hFO0VBQ0U7RUFDQTtFQUNBO0E5RWlwWEo7QThFL29YSTtFQUNFO0VBQ0E7QTlFaXBYTjtBOEU5b1hJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RWdwWE47QThFNW9YRTtFQUNFO0E5RThvWEo7QThFM29YRTtFQUNFO0E5RTZvWEo7QThFMW9YRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNG9YSjtBZ0I5MlhJO0U4RDBORjtJQVdJO0lBQ0E7SUFDQTtFOUU2b1hKO0FBQ0Y7QThFM29YSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU2b1hOO0E4RXpvWE07RUFDRTtBOUUyb1hSO0E4RXRvWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUV3b1hKO0E4RXRvWEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUV3b1hOO0E4RXJvWEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXVvWE47QWdCbjVYSTtFOEQwUEY7SUFzQkk7SUFDQTtJQUNBO0lBQ0E7RTlFdW9YSjtBQUNGO0E4RXBvWEU7RUFDRTtFQUNBO0E5RXNvWEo7QThFcG9YSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVzb1hOO0E4RWxvWEU7RUFDRTtBOUVvb1hKO0FnQjc2WEk7RThENFNGO0lBRUk7RTlFbW9YSjtBQUNGO0E4RWpvWEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RW1vWE47QThFaG9YSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVrb1hOOztBOEU3blhBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RWdvWEY7O0E4RTduWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFZ29YRjs7QThFN25YQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0E5RStuWEY7O0E4RTVuWEE7RUFDRTtBOUUrblhGOztBOEU1blhBO0VBQ0U7QTlFK25YRjs7QThFNW5YQTtFQUNFO0E5RStuWEY7O0E4RTVuWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUUrblhGO0E4RTduWEU7RUFDRTtFQUNBO0E5RStuWEo7O0E4RTNuWEE7RUFDRTtBOUU4blhGOztBOEUzblhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4blhGOztBOEUzblhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFOG5YRjs7QThFM25YQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtFQUNBO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtBOUU4blhGOztBOEUzblhBO0VBQ0U7QTlFOG5YRjs7QThFM25YQTtFQUNFO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtFQUNBO0VBQ0E7QTlFOG5YRjs7QThFM25YQTtFQUNFO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUU4blhGOztBOEUzblhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTlFOG5YRjs7QThFM25YQTtFQUNFO0VBQ0E7QTlFOG5YRjs7QThFM25YQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4blhGOztBOEUzblhBO0VBQ0U7QTlFOG5YRjs7QThFM25YQTtFQUNFO0VBQ0E7QTlFOG5YRjs7QThFM25YQTtFQUNFO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtFQUNBO0E5RThuWEY7O0E4RTNuWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUU4blhGO0E4RTVuWEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFOG5YSjtBOEU1blhJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RThuWE47QThFNW5YTTtFQUNFO0E5RThuWFI7QThFM25YTTtFQUNFO0VBQ0E7QTlFNm5YUjtBOEUxblhNO0VBQ0U7RUFDQTtFQUNBO0E5RTRuWFI7QThFem5YTTtFQUNFO0VBQ0E7QTlFMm5YUjtBOEV4blhNO0VBQ0U7QTlFMG5YUixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy91c2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9fY3VzdG9tLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3ItbW9kZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN3YXRjaC9kaXN0L2ZsYXRseS9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1yYW5nZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hbGVydC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fb2ZmY2FudmFzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3ItYmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19mb2N1cy1yaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ljb24tbGluay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdGFja3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3RleHQtdHJ1bmNhdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdnIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19hcGkuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN3YXRjaC9kaXN0L2ZsYXRseS9fYm9vdHN3YXRjaC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvX3RoZW1lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb21wb25lbnRzL19jaGF0LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnY3VzdG9tJztcblxuQGltcG9ydCBcIn5ib290c3dhdGNoL2Rpc3QvZmxhdGx5L3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9ib290c3RyYXBcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN3YXRjaC9kaXN0L2ZsYXRseS9ib290c3dhdGNoXCI7XG5cbkBpbXBvcnQgXCJ+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvY3NzL2FsbC5jc3NcIjtcblxuQGltcG9ydCBcIn5zbGlkZXItZm90b3JhbWEvZGlzdC9mb3RvcmFtYS5jc3NcIjtcblxuLyogdGhlbWUgKi9cbkBpbXBvcnQgJ3RoZW1lJztcblxuLyogcGVudHJ1IGNvbnZlcnNhyJtpaSAqL1xuQGltcG9ydCAnY29tcG9uZW50cy9jaGF0JztcbiIsImZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNlY2YwZjE7XG4gIG1hcmdpbi10b3A6IDJlbTtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbVxufVxuXG5mb290ZXIgcCB7XG4gIGNvbG9yOiAjN2I4YThiO1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbVxufVxuXG5mb290ZXIgI2Zvb3Rlci1yZXNvdXJjZXMge1xuICB0ZXh0LWFsaWduOiByaWdodFxufVxuXG5mb290ZXIgI2Zvb3Rlci1yZXNvdXJjZXMgaSB7XG4gIGNvbG9yOiAjN2I4YThiO1xuICBmb250LXNpemU6IDI4LjVweDtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtXG59XG5cbi5mb3JtLWdyb3VwLnJlcXVpcmVkIC5jb250cm9sLWxhYmVsOmFmdGVyIHtcbiAgY29udGVudDpcIipcIjtcbiAgY29sb3I6cmVkO1xufVxuXG4ubW9kYWwge1xuICAtLWJzLW1vZGFsLXppbmRleDogOTk5OTk5OTtcbn0iLCJAbWl4aW4gYnNCYW5uZXIoJGZpbGUpIHtcbiAgLyohXG4gICAqIEJvb3RzdHJhcCAjeyRmaWxlfSB2NS4zLjMgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjQgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICAgKi9cbn1cbiIsIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmctZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3ItZGFya307XG4gICAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWRhcmstbW9kZS12YXJzXG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZGltZW5zaW9uLW5vLW5vbi1udW1lcmljLXZhbHVlc1xuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+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+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIEZsYXRseSA1LjMuM1xuLy8gQm9vdHN3YXRjaFxuXG4kdGhlbWU6IFwiZmxhdGx5XCIgIWRlZmF1bHQ7XG5cbi8vXG4vLyBDb2xvciBzeXN0ZW1cbi8vXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2VjZjBmMSAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2I0YmNjMiAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzk1YTVhNiAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzdiOGE4YiAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGJsdWU6ICAgICMyYzNlNTAgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2U3NGMzYyAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmMzljMTIgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE4YmM5YyAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMzNDk4ZGIgIWRlZmF1bHQ7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDIuMDUgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcblxuLy8gRm9udHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgTGF0bywgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIgIWRlZmF1bHQ7XG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgMi41cmVtICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuLy8gVGFibGVzXG5cbiR0YWJsZS1iZy1zY2FsZTogICAgICAgICAgICAgIDAlICFkZWZhdWx0O1xuXG4vLyBEcm9wZG93bnNcblxuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICBkYXJrZW4oJHN1Y2Nlc3MsIDE1JSkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICBsaWdodGVuKCRzdWNjZXNzLCAxNSUpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4vLyBDbG9zZVxuXG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjQgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXIgb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkY291bnQpKTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbiBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3JlIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi8vIEZvciByb3dzXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEZvciBjb2x1bW5zXG4udGFibGUtc3RyaXBlZC1jb2x1bW5zIHtcbiAgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKCN7JHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcn0pIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSB0YWJsZVxuLy9cbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXG5cbi50YWJsZS1hY3RpdmUge1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE9uIEFuZHJvaWQgQ2hyb21lLCBmb3JtLWNvbnRyb2wncyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICAvL1xuICAgIC8vIE9uIGlPUyBTYWZhcmksIGZvcm0tY29udHJvbCdzIFwiYXBwZWFyYW5jZTogbm9uZVwiICsgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgaU9TIDE2LjIgLyBTYWZhcmkgMTYuMlxuICAgIG1pbi13aWR0aDogODVweDsgLy8gU2VlbXMgdG8gYmUgYSBnb29kIG1pbmltdW0gc2FmZSB3aWR0aFxuXG4gICAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG5cbiAgICAvLyBBbmRyb2lkIENocm9tZSB0eXBlPVwiZGF0ZVwiIGlzIHRhbGxlciB0aGFuIHRoZSBvdGhlciBpbnB1dHNcbiAgICAvLyBiZWNhdXNlIG9mIFwibWFyZ2luOiAxcHggMjRweCAxcHggNHB4XCIgaW5zaWRlIHRoZSBzaGFkb3cgRE9NXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZXhjZXNzaXZlIGRhdGUgaW5wdXQgaGVpZ2h0IGluIFdlYmtpdFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzM0NDMzXG4gICY6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20geyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207IH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcgeyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKX07XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nKSwgdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgKiAuNTsgLy8gbGluZS1oZWlnaHQgbWludXMgY2hlY2sgaGVpZ2h0XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2UpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tY2hlY2stdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgZmlsdGVyOiAkZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I7XG5cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdOmluZGV0ZXJtaW5hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcblxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIFVzZSBkaXNhYmxlZCBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gb2YgOmRpc2FibGVkIHBzZXVkby1jbGFzc1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XG4gIGN1cnNvcjogJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yO1xufVxuXG4vL1xuLy8gU3dpdGNoXG4vL1xuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSl9O1xuXG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMsIDApO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSl9O1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcblxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDtcbn1cblxuLmJ0bi1jaGVjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgICsgLmJ0biB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZS1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbWluLWhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDtcbiAgfVxuXG4gID4gbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyBSZXF1aXJlZCBmb3IgYWxpZ25pbmcgbGFiZWwncyB0ZXh0IHdpdGggdGhlIGlucHV0IGFzIGl0IGFmZmVjdHMgaW5uZXIgYm94IG1vZGVsXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbik7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIH4gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgI3skZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5fSk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgKCRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteCAqIC41KTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDsgLy8gUmVxdWlyZWQgdG8gcHJvcGVybHkgcG9zaXRpb24gbGFiZWwgdGV4dCAtIGFzIGV4cGxhaW5lZCBhYm92ZVxuICAgIH1cbiAgfVxuXG4gID4gOmRpc2FibGVkIH4gbGFiZWwsXG4gID4gLmZvcm0tY29udHJvbDpkaXNhYmxlZCB+IGxhYmVsIHsgLy8gUmVxdWlyZWQgZm9yIGAuZm9ybS1jb250cm9sYHMgYmVjYXVzZSBvZiBzcGVjaWZpY2l0eVxuICAgIGNvbG9yOiAkZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1zZWxlY3QsXG4gID4gLmZvcm0tZmxvYXRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tc2VsZWN0OmZvY3VzLFxuICA+IC5mb3JtLWZsb2F0aW5nOmZvY3VzLXdpdGhpbiB7XG4gICAgei1pbmRleDogNTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFwiXCI7XG4gIEBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkZm9ybS12YWxpZGF0aW9uLXN0YXRlcykge1xuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi10b29sdGlwKVwiICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLWZlZWRiYWNrKVwiO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcbiAgJHN0YXRlLFxuICAkY29sb3IsXG4gICRpY29uLFxuICAkdG9vbHRpcC1jb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICRib3JkZXItY29sb3I6ICRjb2xvclxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uOiAje2VzY2FwZS1zdmcoJGljb24pfTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoOiAjeyRidG4tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRidG4tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogI3skYnRuLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgI3skYnRuLWZvY3VzLXdpZHRofSByZ2JhKHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBidG4tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5idG4tY2hlY2sgKyAmOmhvdmVyIHtcbiAgICAvLyBvdmVycmlkZSBmb3IgdGhlIGNoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIDpub3QoLmJ0bi1jaGVjaykgKyAmOmFjdGl2ZSxcbiAgJjpmaXJzdC1jaGlsZDphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmLnNob3cge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmcpO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZDpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaWYgJGNvbG9yID09IFwibGlnaHRcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkY29sb3IgPT0gXCJkYXJrXCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctdGludC1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LW5vcm1hbH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRidG4tbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogMCAwIDAgIzAwMDsgLy8gQ2FuJ3QgdXNlIGBub25lYCBhcyBrZXl3b3JkIG5lZ2F0ZXMgYWxsIHZhbHVlcyB3aGVuIHVzZWQgd2l0aCBtdWx0aXBsZSBzaGFkb3dzXG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAjeyRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdifTtcblxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtY2xhc3Nlc1xuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLmNvbGxhcHNlLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLWJvcmRlci1yYWRpdXMsIDApKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnKSk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmcpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWRhcmstYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tZGFyay1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XG4gIC8vIC0gdGhlIFwidGhpcmQgb3IgbW9yZVwiIGNoaWxkXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXG4gID4gLmJ0bjpudGgtY2hpbGQobiArIDMpLFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoI3skYnRuLWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuIH4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxuXG4ubmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiAjeyRuYXYtbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiAjeyRuYXYtbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRuYXYtbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJG5hdi1saW5rLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBsaWdodGVucyB0ZXh0XG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi10YWJzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aDogI3skbmF2LXRhYnMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtdGFicy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi10YWJzLWNzcy12YXJzXG5cbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcik7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBQcmV2ZW50cyBhY3RpdmUgLm5hdi1saW5rIHRhYiBvdmVybGFwcGluZyBmb2N1cyBvdXRsaW5lIG9mIHByZXZpb3VzL25leHQgLm5hdi1saW5rXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi1waWxscy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogI3skbmF2LXBpbGxzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtcGlsbHMtY3NzLXZhcnNcblxuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzKSk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmcpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBVbmRlcmxpbmVcbi8vXG5cbi5uYXYtdW5kZXJsaW5lIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXA6ICN7JG5hdi11bmRlcmxpbmUtZ2FwfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICN7JG5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuXG4gIGdhcDogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwKTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXG4vL1xuXG4ubmF2LWZpbGwge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICA+IC5uYXYtbGluayxcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1maWxsLFxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIGJ1dHRvbiB3aWxsIGdyb3dcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14OiAje2lmKCRuYXZiYXItcGFkZGluZy14ID09IG51bGwsIDAsICRuYXZiYXItcGFkZGluZy14KX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXk6ICN7JG5hdmJhci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1saWdodC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteTogI3skbmF2YmFyLWJyYW5kLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAjeyRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZH07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemU6ICN7JG5hdmJhci1icmFuZC1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICN7JG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICN7JG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogI3skbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAjeyRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXkpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1uYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAwO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1uYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgJi5hY3RpdmUsXG4gICAgJi5zaG93IHtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuXG4gIGEsXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMgIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxuLy8gb24gdGhlIGAubmF2YmFyYCBwYXJlbnQuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gQnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbmF2YmFyIHdoZW4gaW4gaXRzIGNvbGxhcHNlZCBzdGF0ZVxuLm5hdmJhci10b2dnbGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yKTsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbikpO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aCk7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZXhwYW5kLWxvb3Bcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcyB7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihub25lKTtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZXhwYW5kLWxvb3BcblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLm5hdmJhci1saWdodCB7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAubmF2YmFyLWxpZ2h0YFwiLCBcInY1LjIuMFwiLCBcInY2LjAuMFwiLCB0cnVlKTtcbn1cblxuLm5hdmJhci1kYXJrLFxuLm5hdmJhcltkYXRhLWJzLXRoZW1lPVwiZGFya1wiXSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXZiYXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yOiAjeyRuYXZiYXItZGFyay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kYXJrLWNzcy12YXJzXG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICAgIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteTogI3skY2FyZC1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXg6ICN7JGNhcmQtc3BhY2VyLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15OiAjeyRjYXJkLXRpdGxlLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcjogI3skY2FyZC10aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3I6ICN7JGNhcmQtc3VidGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aDogI3skY2FyZC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcjogI3skY2FyZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdzogI3skY2FyZC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXk6ICN7JGNhcmQtY2FwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteDogI3skY2FyZC1jYXAtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmc6ICN7JGNhcmQtY2FwLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3I6ICN7JGNhcmQtY2FwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQ6ICN7JGNhcmQtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcjogI3skY2FyZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYmc6ICN7JGNhcmQtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICN7JGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZ307XG4gIC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luOiAjeyRjYXJkLWdyb3VwLW1hcmdpbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2FyZC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93KSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCAge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY29sb3IpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLXRpdGxlLXNwYWNlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIC5uYXYtbGluay5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3AsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuXG4vL1xuLy8gQ2FyZCBncm91cHNcbi8vXG5cbi5jYXJkLWdyb3VwIHtcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW4pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hY2NvcmRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWNjb3JkaW9uLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcjogI3skYWNjb3JkaW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJnOiAjeyRhY2NvcmRpb24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aDogI3skYWNjb3JkaW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGg6ICN7JGFjY29yZGlvbi1pY29uLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybTogI3skYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb259O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWNjb3JkaW9uLWNzcy12YXJzXG59XG5cbi5hY2NvcmRpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWJnKTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uKSk7XG5cbiAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSkgMCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbik7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cblxuICAvLyBBY2NvcmRpb24gaWNvblxuICAmOjphZnRlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zaXRpb24pKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLmFjY29yZGlvbi1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcblxuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteCk7XG59XG5cblxuLy8gRmx1c2ggYWNjb3JkaW9uIGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBhY2NvcmRpb24gaXRlbXMgZWRnZS10by1lZGdlLlxuXG4uYWNjb3JkaW9uLWZsdXNoIHtcbiAgPiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYsXG4gICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LWNsYXNzXG5cbiAgICA+IC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyayl9O1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXk6ICN7JGJyZWFkY3J1bWItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAjeyRicmVhZGNydW1iLW1hcmdpbi1ib3R0b219O1xuICBAaW5jbHVkZSByZnMoJGJyZWFkY3J1bWItZm9udC1zaXplLCAtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmc6ICN7JGJyZWFkY3J1bWItYmd9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICN7JGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICN7JGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b20pO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3IpO1xuICAgICAgY29udGVudDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKSkgI3tcIi8qIHJ0bDpcIn0gdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQpKSAje1wiKi9cIn07XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZ2luYXRpb24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZ2luYXRpb24tcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwYWdpbmF0aW9uLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZzogI3skcGFnaW5hdGlvbi1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmc6ICN7JHBhZ2luYXRpb24taG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZzogI3skcGFnaW5hdGlvbi1mb2N1cy1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogI3skcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmc6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHBhZ2luYXRpb24tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmcpO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgLmFjdGl2ZSA+ICYge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gIC5kaXNhYmxlZCA+ICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydCA9PSBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBBZGQgYm9yZGVyLXJhZGl1cyB0byBhbGwgcGFnZUxpbmtzIGluIGNhc2UgdGhleSBoYXZlIGxlZnQgbWFyZ2luXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14OiAjeyRiYWRnZS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXk6ICN7JGJhZGdlLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkYmFkZ2UtZm9udC1zaXplLCAtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodDogI3skYmFkZ2UtZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1jb2xvcjogI3skYmFkZ2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzOiAjeyRiYWRnZS1ib3JkZXItcmFkaXVzfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXg6ICN7JGFsZXJ0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteTogI3skYWxlcnQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbTogI3skYWxlcnQtbWFyZ2luLWJvdHRvbX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiBpbmhlcml0O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXI6ICN7JGFsZXJ0LWJvcmRlci13aWR0aH0gc29saWQgdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXM6ICN7JGFsZXJ0LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yOiBpbmhlcml0O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcik7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnRcbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtbW9kaWZpZXJzXG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWtleWZyYW1lc1xuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogJHByb2dyZXNzLWhlaWdodDsgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWtleWZyYW1lc1xuXG4ucHJvZ3Jlc3MsXG4ucHJvZ3Jlc3Mtc3RhY2tlZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQ6ICN7JHByb2dyZXNzLWhlaWdodH07XG4gIEBpbmNsdWRlIHJmcygkcHJvZ3Jlc3MtZm9udC1zaXplLCAtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iZzogI3skcHJvZ3Jlc3MtYmd9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAjeyRwcm9ncmVzcy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm94LXNoYWRvdzogI3skcHJvZ3Jlc3MtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1jb2xvcjogI3skcHJvZ3Jlc3MtYmFyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWJnOiAjeyRwcm9ncmVzcy1iYXItYmd9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogI3skcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb259O1xuICAvLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtZm9udC1zaXplKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm94LXNoYWRvdykpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWJnKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpIHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xufVxuXG4ucHJvZ3Jlc3Mtc3RhY2tlZCA+IC5wcm9ncmVzcyB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucHJvZ3Jlc3Mtc3RhY2tlZCA+IC5wcm9ncmVzcyA+IC5wcm9ncmVzcy1iYXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtY29sb3I6ICN7JGxpc3QtZ3JvdXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiAjeyRsaXN0LWdyb3VwLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAjeyRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogI3skbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiAjeyRsaXN0LWdyb3VwLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnOiAjeyRsaXN0LWdyb3VwLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYmc6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4ubGlzdC1ncm91cC1udW1iZXJlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW06OmJlZm9yZSB7XG4gICAgLy8gSW5jcmVtZW50cyBvbmx5IHRoaXMgaW5zdGFuY2Ugb2YgdGhlIHNlY3Rpb24gY291bnRlclxuICAgIGNvbnRlbnQ6IGNvdW50ZXJzKHNlY3Rpb24sIFwiLlwiKSBcIi4gXCI7XG4gICAgY291bnRlci1pbmNyZW1lbnQ6IHNlY3Rpb247XG4gIH1cbn1cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmcpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnKTtcbiAgfVxufVxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1iZyk7XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9zZWxlY3Rvci1uby1yZWR1bmRhbnQtbmVzdGluZy1zZWxlY3RvclxuICAmICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4vLyBMaXN0IGdyb3VwIGNvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1tb2RpZmllcnNcbiIsIi8vIFRyYW5zcGFyZW50IGJhY2tncm91bmQgYW5kIGJvcmRlciBwcm9wZXJ0aWVzIGluY2x1ZGVkIGZvciBidXR0b24gdmVyc2lvbi5cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLmJ0bi1jbG9zZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3I6ICN7JGJ0bi1jbG9zZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZzogI3sgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSB9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eTogI3skYnRuLWNsb3NlLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtaG92ZXItb3BhY2l0eTogI3skYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtc2hhZG93OiAjeyRidG4tY2xvc2UtZm9jdXMtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogI3skYnRuLWNsb3NlLXdoaXRlLWZpbHRlcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtY3NzLXZhcnNcblxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRidG4tY2xvc2UtcGFkZGluZy15ICRidG4tY2xvc2UtcGFkZGluZy14O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtYmcpIGNlbnRlciAvICRidG4tY2xvc2Utd2lkdGggYXV0byBuby1yZXBlYXQ7IC8vIGluY2x1ZGUgdHJhbnNwYXJlbnQgZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBib3JkZXI6IDA7IC8vIGZvciBidXR0b24gZWxlbWVudHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xuICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLW9wYWNpdHkpO1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5KTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3cpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eSk7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHkpO1xuICB9XG59XG5cbkBtaXhpbiBidG4tY2xvc2Utd2hpdGUoKSB7XG4gIGZpbHRlcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS13aGl0ZS1maWx0ZXIpO1xufVxuXG4uYnRuLWNsb3NlLXdoaXRlIHtcbiAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5idG4tY2xvc2Uge1xuICAgICAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG4gICAgfVxuICB9XG59XG4iLCIudG9hc3Qge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuICAtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXg6ICN7JHRvYXN0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteTogI3skdG9hc3QtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZzogI3skdG9hc3Qtc3BhY2luZ307XG4gIC0tI3skcHJlZml4fXRvYXN0LW1heC13aWR0aDogI3skdG9hc3QtbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCR0b2FzdC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvYXN0LWNvbG9yOiAjeyR0b2FzdC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJnOiAjeyR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoOiAjeyR0b2FzdC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItY29sb3I6ICN7JHRvYXN0LWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXM6ICN7JHRvYXN0LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93OiAjeyR0b2FzdC1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmc6ICN7JHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogI3skdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtY3NzLXZhcnNcblxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvYXN0LW1heC13aWR0aCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b2FzdC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItY29sb3IpO1xuICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpKTtcblxuICAmLnNob3dpbmcge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvYXN0LWNvbnRhaW5lciB7XG4gIC0tI3skcHJlZml4fXRvYXN0LXppbmRleDogI3skemluZGV4LXRvYXN0fTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b2FzdC16aW5kZXgpO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXRvYXN0LXNwYWNpbmcpO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhjYWxjKHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzKSAtIHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIH1cbn1cblxuLnRvYXN0LWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxuLy8gLm1vZGFsLWRpYWxvZyAgICAtIHBvc2l0aW9uaW5nIHNoZWxsIGZvciB0aGUgYWN0dWFsIG1vZGFsXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxuXG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW1vZGFsLXppbmRleDogI3skemluZGV4LW1vZGFsfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLW1kfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZzogI3skbW9kYWwtaW5uZXItcGFkZGluZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYmc6ICN7JG1vZGFsLWNvbnRlbnQtYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmc6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nfTsgLy8gVG9kbyBpbiB2NjogU3BsaXQgdGhpcyBwYWRkaW5nIGludG8geCBhbmQgeVxuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRtb2RhbC10aXRsZS1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXA6ICN7JG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2Vlbn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1iZzogI3skbW9kYWwtZm9vdGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGh9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1jb2xvcik7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3cpKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleDogI3skemluZGV4LW1vZGFsLWJhY2tkcm9wfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmc6ICN7JG1vZGFsLWJhY2tkcm9wLWJnfTtcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eTogI3skbW9kYWwtYmFja2Ryb3Atb3BhY2l0eX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcblxuICBAaW5jbHVkZSBvdmVybGF5LWJhY2tkcm9wKHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXgpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtYmcpLCB2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3Atb3BhY2l0eSkpO1xufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKTtcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZykgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7IC8vIFRvZG8gaW4gdjY6IHJlcGxhY2Ugd2l0aCBnYXAgb24gcGFyZW50IGNsYXNzXG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXB9O1xuICAgIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cH07XG4gIH1cblxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1zbX07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLWxnfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXhsfTtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyLFxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4OiAjeyR6aW5kZXgtdG9vbHRpcH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoOiAjeyR0b29sdGlwLW1heC13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14OiAjeyR0b29sdGlwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15OiAjeyR0b29sdGlwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luOiAjeyR0b29sdGlwLW1hcmdpbn07XG4gIEBpbmNsdWRlIHJmcygkdG9vbHRpcC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcjogI3skdG9vbHRpcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYmc6ICN7JHRvb2x0aXAtYmd9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXM6ICN7JHRvb2x0aXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eTogI3skdG9vbHRpcC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aDogI3skdG9vbHRpcC1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAjeyR0b29sdGlwLWFycm93LWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbik7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAkdG9vbHRpcC1tYXJnaW5gXCIsIFwidjVcIiwgXCJ2NS54XCIsIHRydWUpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eSk7IH1cblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93IHtcbiAgbGVmdDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICByaWdodDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIGJvdHRvbTogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3cge1xuICByaWdodDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1zdGFydDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoKTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzKSk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi5wb3BvdmVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXg6ICN7JHppbmRleC1wb3BvdmVyfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGg6ICN7JHBvcG92ZXItbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJnOiAjeyRwb3BvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGg6ICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3I6ICN7JHBvcG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdzogI3skcG9wb3Zlci1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1oZWFkZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcjogI3skcG9wb3Zlci1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZzogI3skcG9wb3Zlci1oZWFkZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteTogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcjogI3skcG9wb3Zlci1ib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aDogI3skcG9wb3Zlci1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0OiAjeyRwb3BvdmVyLWFycm93LWhlaWdodH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGgpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3cpKTtcblxuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItZW5kIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgbGVmdDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgdG9wOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItc3RhcnQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1zdGFydDtcbiAgfVxufVxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3IpO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZykgI3tcIi8qcnRsOlwiICsgZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpICsgXCIqL1wifTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKSAje1wiLypydGw6XCIgKyBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZykgKyBcIiovXCJ9O1xufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwcy9jb250cm9sc1xuLy9cbi8vIEFkZCBhIGNvbnRhaW5lciAoc3VjaCBhcyBhIGxpc3QpIHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGFuIGl0ZW0gKGlkZWFsbHkgYSBmb2N1c2FibGUgY29udHJvbCxcbi8vIGxpa2UgYSBidXR0b24pIHdpdGggZGF0YS1icy10YXJnZXQgZm9yIGVhY2ggc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuXG4gIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTtcbiAgfVxufVxuXG5cbi8vIE9wdGlvbmFsIGNhcHRpb25zXG4vL1xuLy9cblxuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjtcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG5AbWl4aW4gY2Fyb3VzZWwtZGFyaygpIHtcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuICAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cblxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLmNhcm91c2VsLWRhcmsge1xuICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIEBpZiAkY29sb3ItbW9kZS10eXBlID09IFwibWVkaWEtcXVlcnlcIiB7XG4gICAgICAuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAuY2Fyb3VzZWwsXG4gICAgICAmLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4uc3Bpbm5lci1ncm93LFxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZCkgbGluZWFyIGluZmluaXRlIHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGg6ICN7JHNwaW5uZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ib3JkZXI7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItY3NzLXZhcnNcblxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aCkgc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aC1zbX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcblxuLnNwaW5uZXItZ3JvdyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWdyb3ctY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ246ICN7JHNwaW5uZXItdmVydGljYWwtYWxpZ259O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lOiBzcGlubmVyLWdyb3c7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgKiAyfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4lb2ZmY2FudmFzLWNzcy12YXJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtemluZGV4OiAjeyR6aW5kZXgtb2ZmY2FudmFzfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoOiAjeyRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6ICN7JG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14OiAjeyRvZmZjYW52YXMtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteTogI3skb2ZmY2FudmFzLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcjogI3skb2ZmY2FudmFzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnOiAjeyRvZmZjYW52YXMtYmctY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAjeyRvZmZjYW52YXMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcjogI3skb2ZmY2FudmFzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3gtc2hhZG93OiAjeyRvZmZjYW52YXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uOiAje3RyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLWNzcy12YXJzXG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGV4dGVuZCAlb2ZmY2FudmFzLWNzcy12YXJzO1xuICB9XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWNvbG9yKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYmcpO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdykpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRyYW5zaXRpb24pKTtcblxuICAgICAgJi5vZmZjYW52YXMtc3RhcnQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1lbmQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLXRvcCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5zaG93Om5vdCguaGlkaW5nKSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5oaWRpbmcsXG4gICAgICAmLnNob3cge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6IGF1dG87XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAvLyBSZXNldCBgYmFja2dyb3VuZC1jb2xvcmAgaW4gY2FzZSBgLmJnLSpgIGNsYXNzZXMgYXJlIHVzZWQgaW4gb2ZmY2FudmFzXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcCwgJG9mZmNhbnZhcy1iYWNrZHJvcC1iZywgJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4ub2ZmY2FudmFzLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDtcblxuICAmLmJ0bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi5wbGFjZWhvbGRlci14cyB7XG4gIG1pbi1oZWlnaHQ6IC42ZW07XG59XG5cbi5wbGFjZWhvbGRlci1zbSB7XG4gIG1pbi1oZWlnaHQ6IC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vLyBBbmltYXRpb25cbi5wbGFjZWhvbGRlci1nbG93IHtcbiAgLnBsYWNlaG9sZGVyIHtcbiAgICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93IHtcbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW47XG4gIH1cbn1cblxuLnBsYWNlaG9sZGVyLXdhdmUge1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAkYmxhY2sgNTUlLCByZ2JhKDAsIDAsIDAsICgxIC0gJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluKSkgNzUlLCAkYmxhY2sgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLnRleHQtYmctI3skY29sb3J9IHtcbiAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJHZhbHVlKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICRob3Zlci1jb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICAgIGNvbG9yOiBSR0JBKCN7dG8tcmdiKCRob3Zlci1jb2xvcil9LCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHRvLXJnYigkaG92ZXItY29sb3IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9uZS1vZmYgc3BlY2lhbCBsaW5rIGhlbHBlciBhcyBhIGJyaWRnZSB1bnRpbCB2NlxuLmxpbmstYm9keS1lbXBoYXNpcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb2N1cy1yaW5nOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgLy8gQnkgZGVmYXVsdCwgdGhlcmUgaXMgbm8gYC0tYnMtZm9jdXMtcmluZy14YCwgYC0tYnMtZm9jdXMtcmluZy15YCwgb3IgYC0tYnMtZm9jdXMtcmluZy1ibHVyYCwgYnV0IHdlIHByb3ZpZGUgQ1NTIHZhcmlhYmxlcyB3aXRoIGZhbGxiYWNrcyB0byBpbml0aWFsIGAwYCB2YWx1ZXNcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteSwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctYmx1ciwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yKTtcbn1cbiIsIi5pY29uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiAkaWNvbi1saW5rLWdhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgPiAuYmkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6ICR2ci1ib3JkZXItd2lkdGg7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cbiIsIi8vIFV0aWxpdHkgZ2VuZXJhdG9yXG4vLyBVc2VkIHRvIGdlbmVyYXRlIHV0aWxpdGllcyAmIHByaW50IHV0aWxpdGllc1xuQG1peGluIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeDogXCJcIiwgJGlzLXJmcy1tZWRpYS1xdWVyeTogZmFsc2UpIHtcbiAgJHZhbHVlczogbWFwLWdldCgkdXRpbGl0eSwgdmFsdWVzKTtcblxuICAvLyBJZiB0aGUgdmFsdWVzIGFyZSBhIGxpc3Qgb3Igc3RyaW5nLCBjb252ZXJ0IGl0IGludG8gYSBtYXBcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gXCJzdHJpbmdcIiBvciB0eXBlLW9mKG50aCgkdmFsdWVzLCAxKSkgIT0gXCJsaXN0XCIge1xuICAgICR2YWx1ZXM6IHppcCgkdmFsdWVzLCAkdmFsdWVzKTtcbiAgfVxuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAkcHJvcGVydGllczogbWFwLWdldCgkdXRpbGl0eSwgcHJvcGVydHkpO1xuXG4gICAgLy8gTXVsdGlwbGUgcHJvcGVydGllcyBhcmUgcG9zc2libGUsIGZvciBleGFtcGxlIHdpdGggdmVydGljYWwgb3IgaG9yaXpvbnRhbCBtYXJnaW5zIG9yIHBhZGRpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHByb3BlcnRpZXMpID09IFwic3RyaW5nXCIge1xuICAgICAgJHByb3BlcnRpZXM6IGFwcGVuZCgoKSwgJHByb3BlcnRpZXMpO1xuICAgIH1cblxuICAgIC8vIFVzZSBjdXN0b20gY2xhc3MgaWYgcHJlc2VudFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNsYXNzKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpLCBudGgoJHByb3BlcnRpZXMsIDEpKTtcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBudWxsLCBcIlwiLCAkcHJvcGVydHktY2xhc3MpO1xuXG4gICAgLy8gVXNlIGN1c3RvbSBDU1MgdmFyaWFibGUgbmFtZSBpZiBwcmVzZW50LCBvdGhlcndpc2UgZGVmYXVsdCB0byBgY2xhc3NgXG4gICAgJGNzcy12YXJpYWJsZS1uYW1lOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSk7XG5cbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xuXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXCItXCIsIHN0ci1zbGljZSgkaW5maXgsIDIpLCAkaW5maXgpO1xuXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlLmcuIHdpdGggc2hhZG93IGNsYXNzKVxuICAgICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcjogaWYoJGtleSwgaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kICRpbmZpeCA9PSBcIlwiLCBcIlwiLCBcIi1cIikgKyAka2V5LCBcIlwiKTtcblxuICAgIEBpZiBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIHtcbiAgICAgIC8vIEluc2lkZSB0aGUgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiAkaXMtcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZSk7XG5cbiAgICAgICAgLy8gRG8gbm90IHJlbmRlciBhbnl0aGluZyBpZiBmbHVpZCBhbmQgbm9uIGZsdWlkIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICAgICAgJHZhbHVlOiBpZigkdmFsID09IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpLCBudWxsLCAkdmFsKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHZhbHVlOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkaXMtY3NzLXZhcjogbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcik7XG4gICAgJGlzLWxvY2FsLXZhcnM6IG1hcC1nZXQoJHV0aWxpdHksIGxvY2FsLXZhcnMpO1xuICAgICRpcy1ydGw6IG1hcC1nZXQoJHV0aWxpdHksIHJ0bCk7XG5cbiAgICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6YmVnaW46cmVtb3ZlICovXG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtY3NzLXZhciB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGNzcy12YXJpYWJsZS1uYW1lfTogI3skdmFsdWV9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0ge1xuICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICBAZWFjaCAkbG9jYWwtdmFyLCAkdmFyaWFibGUgaW4gJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMb29wIG92ZXIgZWFjaCBicmVha3BvaW50XG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuXG4gIC8vIEdlbmVyYXRlIG1lZGlhIHF1ZXJ5IGlmIG5lZWRlZFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUkZTIHJlc2NhbGluZ1xuQG1lZGlhIChtaW4td2lkdGg6ICRyZnMtbXEtdmFsdWUpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XG4gICAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcbiAgICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbkBtZWRpYSBwcmludCB7XG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAvLyBUaGVuIGNoZWNrIGlmIHRoZSB1dGlsaXR5IG5lZWRzIHByaW50IHN0eWxlc1xuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCBcIi1wcmludFwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZsYXRseSA1LjMuM1xuLy8gQm9vdHN3YXRjaFxuXG5cbi8vIFZhcmlhYmxlc1xuXG4kd2ViLWZvbnQtcGF0aDogXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUxhdG86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwJmRpc3BsYXk9c3dhcFwiICFkZWZhdWx0O1xuQGlmICR3ZWItZm9udC1wYXRoIHtcbiAgQGltcG9ydCB1cmwoXCIjeyR3ZWItZm9udC1wYXRofVwiKTtcbn1cblxuLy8gTmF2c1xuXG4ucGFnaW5hdGlvbiB7XG4gIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBJbmRpY2F0b3JzXG5cbi5iYWRnZSB7XG4gICYuYmctbGlnaHQge1xuICAgIGNvbG9yOiAkZGFyaztcbiAgfVxufVxuXG4uYWxlcnQge1xuICBjb2xvcjogJHdoaXRlO1xuICBib3JkZXI6IG5vbmU7XG5cbiAgYSxcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAmLSN7JGNvbG9yfSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmFsdWUgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkdmFsdWUsIDE1JSksICR2YWx1ZSkgcmVwZWF0LXg7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtbGlnaHQge1xuICAgICYsXG4gICAgYSxcbiAgICAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbnRhaW5lcnNcblxuLm1vZGFsLFxuLnRvYXN0LFxuLm9mZmNhbnZhcyB7XG4gIC5idG4tY2xvc2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJsYWNrfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLz48L3N2Zz5cIikpO1xuICB9XG59XG4iLCIuY2F0ZWdvcnlGaWx0ZXIgLmZvcm0tY2hlY2sge1xyXG4gIHBhZGRpbmctbGVmdDogMHB4O1xyXG59XHJcblxyXG4ubWF4LXdpZHRoLTUwIHtcclxuICBtYXgtd2lkdGg6IDUwJTtcclxufVxyXG4iLCI6cm9vdCB7XG4gIC0tYm9keS1iZzogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1ZjdmYSAwJSwgI2MzY2ZlMiAxMDAlKTtcbiAgLS1tc2dlci1iZzogI2ZmZjtcbiAgLS1ib3JkZXI6IDJweCBzb2xpZCAjZGRkO1xuICAtLWxlZnQtbXNnLWJnOiAjZWNlY2VjO1xuICAtLXJpZ2h0LW1zZy1iZzogIzQ5OTM0MTtcbn1cblxuLnJlbW92ZS1pbWFnZS1mb3JtIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLnRhZy5wcmljZSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIHN0cm9uZyB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuXG4ubXktcHJvcGVydGllcyB7XG4gIC5oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxudHIuaW5jYXRpdmUtc3RhdGUge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5mb3JtLWNoZWNrIHtcbiAgLmZvcm0tY2hlY2sge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuLmltYWdlLXByb3BlcnR5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cblxuLnRodW1uYWlsX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gIC5pbWctZmx1aWQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBwYWRkaW5nOiAzcHg7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5idG4taWNvbi1jdXN0b20ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAzcHggMTBweCAycHggMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZGMzNTQ1O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTBweDtcbiAgICByaWdodDogMTVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5cbi5saXZlX19zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNjcm9sbF9saXN0aW5nX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnNjcm9sbF9pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjIwcHg7XG4gIGZsZXg6IDAgMCAyMjBweDtcbiAgcGFkZGluZzogMCAxNXB4O1xufVxuXG4uc2Nyb2xsX2l0ZW0gaW1nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xufVxuXG4uc2Nyb2xsX2l0ZW0gLmJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNXB4O1xuICByaWdodDogMzFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNjcm9sbF9pdGVtIC5idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cblxuLmltYWdlLXByb2ZpbGUtY29udGFpbmVyIHtcbiAgLmljb24tcGhvdG8taG92ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uOiBmYWRlT3V0IC4ycyBib3RoIGVhc2U7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9pbWcvc3ZnL3Bob3RvLnN2ZycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjNweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLmljb24tcGhvdG8taG92ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGFuaW1hdGlvbjogZmFkZUluIC4zcyBib3RoIGVhc2U7XG4gICAgfVxuICB9XG59XG5cbi5teS1wcm9wZXJ0aWVzIHRhYmxlIHRib2R5IHRyIHRkIC5hY3Rpb25zIC5lZGl0IHtcbiAgZmxvYXQ6IGluaGVyaXQ7XG59XG5cbi5teS1wcm9wZXJ0aWVzIC50YWJsZSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uY3VycmVudC1hdmF0YXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Y2ZjZmNjtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmNmY2ZjY7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB9XG59XG5cbi5teS1tZXNzYWdlcyB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMzgsIDM4LCAzOCwgMC4yKTtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxuXG4gIC5oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIC50b3AtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLnByb3BlcnR5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzIwMjAyMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICB9XG5cbiAgLmlubmVyLWJveCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC5wcm9wZXJ0eS1mZWF0dXJlcyB7XG4gICAgICBjb2x1bW5zOiAyO1xuICAgIH1cbiAgfVxufVxuXG4uY29udmVyc2F0aW9uLWxpc3Qge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXg6IDE7XG5cbiAgLmNvbnZlcnNhdGlvbi1pdGVtIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucGFnaW5hdGUtbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgcGFkZGluZzogMTVweDtcblxuICAgIGEubG9hZE1vcmVNc2cge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogIzcyNzI3MjtcbiAgICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gICAgICBwYWRkaW5nOiA3cHg7XG4gICAgfVxuICB9XG59XG5cbi5jb252ZXJzYXRpb24taW5mIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleDogMTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi5jb252ZXJzYXRpb24taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8vbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZzogMTVweCAzMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZiZmJmYjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZGVkZWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2ZjZmNmZTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuXG4gICYuaXMtb3duZXIge1xuICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gIH1cblxuICAuZ2VuZXJhbC1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5wcm9wZXJ0eS1pZCB7XG4gICAgICBtaW4td2lkdGg6IDExMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLnByb3BlcnR5LXByaWNlIHtcbiAgICAgIG1pbi13aWR0aDogMTEwcHg7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjNDk5MzQxO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gIH1cblxuICAucHJvcGVydHktaW5mbyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuXG4gIC5jb252ZXJzYXRpb24tdXNlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDE0MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAuY3VzdG9tZXItbmFtZSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBjb2xvcjogIzQ5OTM0MTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIH1cblxuICAgIC5maWVsZC1tc2ctdGltZSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb252ZXJzYXRpb24tcHJvcGVydHkge1xuICAgIGZsZXg6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiAyMXB4O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzk1YzUxNDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgIC5sYXN0LW1lc3NhZ2Uge1xuICAgICAgY29sb3I6ICMyNDI0MjQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG5cbiAgICAucHJvcGVydHktbmFtZSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZmxleDogMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLnNlZW4tbiAubGFzdC1tZXNzYWdlIHtcbiAgICBwYWRkaW5nOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBoZWlnaHQ6IDVweDtcbiAgICAgIGJhY2tncm91bmQ6IHJlZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogLTEwcHg7XG4gICAgfVxuICB9XG5cbiAgLnByb3BlcnR5LWluZm8ge1xuICAgIGNvbG9yOiAjNzM3MzczO1xuICB9XG5cbiAgLmN1c3RvbWVyLWluZiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA5MCU7XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiA2MHB4O1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA5MCU7XG4gICAgfVxuICB9XG59XG5cbi8qIENoYXQgY29udGFpbmVyICovXG4ubXNnZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDg2N3B4O1xuICBtYXJnaW46IDI1cHggMTBweDtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLW1zZ2VyLWJnKTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDE1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5tc2dlci1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIGNvbG9yOiAjNjY2O1xufVxuXG4ubXNnZXItY2hhdCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgbWF4LWhlaWdodDogNTAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ubXNnZXItY2hhdDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogNnB4O1xufVxuXG4ubXNnZXItY2hhdDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xufVxuXG4ubXNnZXItY2hhdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICBiYWNrZ3JvdW5kOiAjYmRiZGJkO1xufVxuXG4ubXNnIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAuNXM7XG4gIH1cbn1cblxuLm1zZzpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW46IDA7XG59XG5cbi5tc2ctaW1nIHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm1zZy1idWJibGUge1xuICBtYXgtd2lkdGg6IDQ1MHB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZWZ0LW1zZy1iZyk7XG59XG5cbi5tc2ctaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm1zZy1pbmZvLW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5tc2ctaW5mby10aW1lIHtcbiAgZm9udC1zaXplOiAwLjg1ZW07XG59XG5cbi5sZWZ0LW1zZyAubXNnLWJ1YmJsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5yaWdodC1tc2cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5yaWdodC1tc2cgLm1zZy1idWJibGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yaWdodC1tc2ctYmcpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5yaWdodC1tc2cgLm1zZy1pbWcge1xuICBtYXJnaW46IDAgMCAwIDEwcHg7XG59XG5cbi5tc2dlci1pbnB1dGFyZWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXIpO1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xufVxuXG4ubXNnZXItaW5wdXRhcmVhICoge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi5tc2dlci1pbnB1dCB7XG4gIGZsZXg6IDE7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbi5tc2dlci1zZW5kLWJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjNDk5MzQxO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjIzcztcbn1cblxuLm1zZ2VyLXNlbmQtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzI4YTc0NTtcbn1cblxuLm1zZ2VyLWNoYXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZlO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cblxuLm1zZy10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmJhY2stYnRuLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbn1cblxuLnByb3BlcnR5LW1lc3NhZ2UtZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y2ZjZmNjtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cbiAgLmRldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9yZGVyOiAyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG5cbiAgICAuZGV0YWlscy1saXN0aW5nIHtcbiAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmbGV4OiAxO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZmxleDogMDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6ICMyNzI3Mjc7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiAjODg4O1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDgwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQ1cHg7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLnRodW1uYWlsX2l0ZW0ge1xuXG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/