/*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/css/User-new/pages/exception/exception.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/css/User-new/pages/exception/exception.scss (1) ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/*accordion*/
/*accordion*/
/*custom variables*/
/*!
   * Bootstrap  v5.3.2 (https://getbootstrap.com/)
   * Copyright 2011-2023 The Bootstrap Authors
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
   */
:root,
[data-bs-theme="light"] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f6f6f6;
  --bs-gray-200: #eeedee;
  --bs-gray-300: #e4e4e4;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: white;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc634;
  --bs-danger: #dc3545;
  --bs-light: #f6f6f6;
  --bs-dark: #212529;
  --bs-primary-rgb: 255, 255, 255;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 198, 52;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 246, 246, 246;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #666666;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664f15;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: white;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff4d6;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fbfbfb;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: white;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe8ae;
  --bs-danger-border-subtle: #f1aeb5;
  --bs-light-border-subtle: #eeedee;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #020202;
  --bs-body-color-rgb: 2, 2, 2;
  --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(2, 2, 2, 0.75);
  --bs-secondary-color-rgb: 2, 2, 2;
  --bs-secondary-bg: #eeedee;
  --bs-secondary-bg-rgb: 238, 237, 238;
  --bs-tertiary-color: rgba(2, 2, 2, 0.5);
  --bs-tertiary-color-rgb: 2, 2, 2;
  --bs-tertiary-bg: #f6f6f6;
  --bs-tertiary-bg-rgb: 246, 246, 246;
  --bs-heading-color: inherit;
  --bs-link-color: white;
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #cccccc;
  --bs-link-hover-color-rgb: 204, 204, 204;
  --bs-code-color: #d63384;
  --bs-highlight-color: #020202;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #777777;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0;
  --bs-border-radius-sm: 0;
  --bs-border-radius-lg: 0;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 0;
  --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(255, 255, 255, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme="dark"] {
  color-scheme: dark;
  --bs-body-color: #e4e4e4;
  --bs-body-color-rgb: 228, 228, 228;
  --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(228, 228, 228, 0.75);
  --bs-secondary-color-rgb: 228, 228, 228;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(228, 228, 228, 0.5);
  --bs-tertiary-color-rgb: 228, 228, 228;
  --bs-tertiary-bg: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: white;
  --bs-secondary-text-emphasis: #a7acb1;
  --bs-success-text-emphasis: #75b798;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #ffdd85;
  --bs-danger-text-emphasis: #ea868f;
  --bs-light-text-emphasis: #f6f6f6;
  --bs-dark-text-emphasis: #e4e4e4;
  --bs-primary-bg-subtle: #333333;
  --bs-secondary-bg-subtle: #161719;
  --bs-success-bg-subtle: #051b11;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #33280a;
  --bs-danger-bg-subtle: #2c0b0e;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #999999;
  --bs-secondary-border-subtle: #41464b;
  --bs-success-border-subtle: #0f5132;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #99771f;
  --bs-danger-border-subtle: #842029;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: white;
  --bs-link-hover-color: white;
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-hover-color-rgb: 255, 255, 255;
  --bs-code-color: #e685b5;
  --bs-highlight-color: #e4e4e4;
  --bs-highlight-bg: #664d03;
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #75b798;
  --bs-form-valid-border-color: #75b798;
  --bs-form-invalid-color: #ea868f;
  --bs-form-invalid-border-color: #ea868f;
}

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

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

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

hr {
  margin: 1rem 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

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

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}

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

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw);
}

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

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw);
}

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

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}

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

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

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

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

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

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

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

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

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

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .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: -.25em;
}

sup {
  top: -.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;
}

kbd kbd {
  padding: 0;
  font-size: 1em;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

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

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-secondary-color);
  text-align: left;
}

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

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

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

select:disabled {
  opacity: 1;
}

[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator {
  display: none !important;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

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

textarea {
  resize: vertical;
}

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

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit;
}

@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}

legend + * {
  clear: left;
}

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

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

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

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

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

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

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

.display-1 {
  font-size: calc(1.625rem + 4.5vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-size: calc(1.475rem + 2.7vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  line-height: 1.2;
}

@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

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

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

.list-inline-item {
  display: inline-block;
}

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

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

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote > :last-child {
  margin-bottom: 0;
}

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

.blockquote-footer::before {
  content: "\2014\00A0";
}

.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-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl,
.container-xxxl {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 95%;
  }
}

@media (min-width: 1536px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    max-width: 1476px;
  }
}

@media (min-width: 1660px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl, .container-xxxl {
    max-width: 1620px;
  }
}

:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1536px;
  --bs-breakpoint-xxxl: 1660px;
}

.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(-.5 * var(--bs-gutter-x));
  margin-left: calc(-.5 * var(--bs-gutter-x));
}

.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .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.33333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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.33333%;
  }
  .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.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
  .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.33333%;
  }
  .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.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
  .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.33333%;
  }
  .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.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
  .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.33333%;
  }
  .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.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
  .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: 1536px) {
  .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.33333%;
  }
  .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.66667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66667%;
  }
  .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;
  }
}

@media (min-width: 1660px) {
  .col-xxxl {
    flex: 1 0 0%;
  }
  .row-cols-xxxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxxl-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-xxxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxxl-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xxxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxxl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xxxl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xxxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxxl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xxxl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xxxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxxl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xxxl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xxxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxxl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xxxl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xxxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxxl-0 {
    margin-left: 0;
  }
  .offset-xxxl-1 {
    margin-left: 8.33333%;
  }
  .offset-xxxl-2 {
    margin-left: 16.66667%;
  }
  .offset-xxxl-3 {
    margin-left: 25%;
  }
  .offset-xxxl-4 {
    margin-left: 33.33333%;
  }
  .offset-xxxl-5 {
    margin-left: 41.66667%;
  }
  .offset-xxxl-6 {
    margin-left: 50%;
  }
  .offset-xxxl-7 {
    margin-left: 58.33333%;
  }
  .offset-xxxl-8 {
    margin-left: 66.66667%;
  }
  .offset-xxxl-9 {
    margin-left: 75%;
  }
  .offset-xxxl-10 {
    margin-left: 83.33333%;
  }
  .offset-xxxl-11 {
    margin-left: 91.66667%;
  }
  .g-xxxl-0,
  .gx-xxxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxxl-0,
  .gy-xxxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxxl-1,
  .gx-xxxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxxl-1,
  .gy-xxxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxxl-2,
  .gx-xxxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxxl-2,
  .gy-xxxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxxl-3,
  .gx-xxxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxxl-3,
  .gy-xxxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxxl-4,
  .gx-xxxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxxl-4,
  .gy-xxxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxxl-5,
  .gx-xxxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxxl-5,
  .gy-xxxl-5 {
    --bs-gutter-y: 3rem;
  }
}

.table {
  --bs-table-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-emphasis-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-emphasis-color);
  --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
  --bs-table-active-color: var(--bs-emphasis-color);
  --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
  --bs-table-hover-color: var(--bs-emphasis-color);
  --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}

.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}

.table > tbody {
  vertical-align: inherit;
}

.table > thead {
  vertical-align: bottom;
}

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

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

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

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

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

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

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

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

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

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

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

.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: white;
  --bs-table-border-color: #cccccc;
  --bs-table-striped-bg: #f2f2f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6e6e6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ececec;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: #e2e3e5;
  --bs-table-border-color: #b5b6b7;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #d1d2d4;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

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

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: #fff4d6;
  --bs-table-border-color: #ccc3ab;
  --bs-table-striped-bg: #f2e8cb;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6dcc1;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ece2c6;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #f6f6f6;
  --bs-table-border-color: #c5c5c5;
  --bs-table-striped-bg: #eaeaea;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dddddd;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e4e4e4;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #212529;
  --bs-table-border-color: #4d5154;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

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

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 1535.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 1659.98px) {
  .table-responsive-xxxl {
    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 #ced4da;
  border-radius: 0;
  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: #ced4da;
  outline: 0;
  box-shadow: none;
}

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

.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: 0;
}

.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 #ced4da;
  border-radius: 0;
  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: #ced4da;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 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%23e4e4e4%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: #ced4da;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
}

.form-check-input:checked {
  background-color: white;
  border-color: white;
}

.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: white;
  border-color: white;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e");
}

.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}

.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.form-switch {
  padding-left: 2.5em;
}

.form-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%280, 0, 0, 0.25%29%27/%3e%3c/svg%3e");
  width: 2em;
  margin-left: -2.5em;
  background-image: var(--bs-form-switch-bg);
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}

.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23ced4da%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, none;
}

.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, none;
}

.form-range::-moz-focus-outer {
  border: 0;
}

.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  appearance: none;
  background-color: white;
  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: white;
}

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

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

.form-floating > .form-control:-webkit-autofill ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating > .form-control-plaintext ~ label {
  border-width: var(--bs-border-width) 0;
}

.form-floating > :disabled ~ label,
.form-floating > .form-control:disabled ~ label {
  color: #6c757d;
}

.form-floating > :disabled ~ label::after,
.form-floating > .form-control:disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}

.input-group > .form-control:focus,
.input-group > .form-select:focus,
.input-group > .form-floating:focus-within {
  z-index: 5;
}

.input-group .btn {
  position: relative;
  z-index: 2;
}

.input-group .btn:focus {
  z-index: 5;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid #ced4da;
  border-radius: 0;
}

.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: .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%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.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%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e");
  padding-right: 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: .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: .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%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.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%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e");
  padding-right: 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: .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 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: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: #000;
  --bs-btn-bg: white;
  --bs-btn-border-color: white;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: white;
  --bs-btn-hover-border-color: white;
  --bs-btn-focus-shadow-rgb: 217, 217, 217;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: white;
  --bs-btn-active-border-color: white;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: white;
  --bs-btn-disabled-border-color: white;
}

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

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #13653f;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #31d2f2;
  --bs-btn-hover-border-color: #25cff2;
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #3dd5f3;
  --bs-btn-active-border-color: #25cff2;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc634;
  --bs-btn-border-color: #ffc634;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffcf52;
  --bs-btn-hover-border-color: #ffcc48;
  --bs-btn-focus-shadow-rgb: 217, 168, 44;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffd15d;
  --bs-btn-active-border-color: #ffcc48;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc634;
  --bs-btn-disabled-border-color: #ffc634;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #bb2d3b;
  --bs-btn-hover-border-color: #b02a37;
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #b02a37;
  --bs-btn-active-border-color: #a52834;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #dc3545;
  --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #f6f6f6;
  --bs-btn-border-color: #f6f6f6;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #d1d1d1;
  --bs-btn-hover-border-color: #c5c5c5;
  --bs-btn-focus-shadow-rgb: 209, 209, 209;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #c5c5c5;
  --bs-btn-active-border-color: #b9b9b9;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f6f6f6;
  --bs-btn-disabled-border-color: #f6f6f6;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #424649;
  --bs-btn-hover-border-color: #373b3e;
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #4d5154;
  --bs-btn-active-border-color: #373b3e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #212529;
  --bs-btn-disabled-border-color: #212529;
}

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

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

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
  --bs-gradient: none;
}

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

.btn-outline-warning {
  --bs-btn-color: #ffc634;
  --bs-btn-border-color: #ffc634;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffc634;
  --bs-btn-hover-border-color: #ffc634;
  --bs-btn-focus-shadow-rgb: 255, 198, 52;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffc634;
  --bs-btn-active-border-color: #ffc634;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc634;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc634;
  --bs-gradient: none;
}

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

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

.btn-outline-dark {
  --bs-btn-color: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #212529;
  --bs-gradient: none;
}

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

.btn-link:focus-visible {
  color: var(--bs-btn-color);
}

.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}

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

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

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

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

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

.dropdown-toggle {
  white-space: nowrap;
}

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

.dropdown-toggle:empty::after {
  margin-left: 0;
}

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

.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
  --bs-position: start;
}

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

.dropdown-menu-end {
  --bs-position: end;
}

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

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

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

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

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

@media (min-width: 1536px) {
  .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;
  }
}

@media (min-width: 1660px) {
  .dropdown-menu-xxxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxxl-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: #e4e4e4;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #e4e4e4;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: white;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group {
  border-radius: var(--bs-border-radius);
}

.btn-group > :not(.btn-check:first-child) + .btn,
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(var(--bs-border-width) * -1);
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn.dropdown-toggle-split:first-child,
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:nth-child(n + 3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropend .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropstart .dropdown-toggle-split::before {
  margin-right: 0;
}

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

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

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: calc(var(--bs-border-width) * -1);
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

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

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}

.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}

.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
}

.nav-link.disabled, .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}

.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}

.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: white;
}

.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}

.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}

.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}

.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

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

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

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

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

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

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%282, 2, 2, 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;
  --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, .navbar > .container-xxxl {
  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: 1536px) {
  .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;
  }
}

@media (min-width: 1660px) {
  .navbar-expand-xxxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxxl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xxxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxxl .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-xxxl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxxl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}

.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
}

.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-expand .offcanvas {
  position: static;
  z-index: auto;
  flex-grow: 1;
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  transition: none;
}

.navbar-expand .offcanvas .offcanvas-header {
  display: none;
}

.navbar-expand .offcanvas .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme="dark"] {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --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=%27rgba%28255, 255, 255, 0.55%29%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=%27rgba%28255, 255, 255, 0.55%29%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(-.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(-.5 * var(--bs-card-cap-padding-x));
  margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
  margin-left: calc(-.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(-.5 * var(--bs-card-cap-padding-x));
  margin-left: calc(-.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: #020202;
  --bs-accordion-bg: transparent;
  --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: white;
  --bs-accordion-border-width: 0;
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - 0);
  --bs-accordion-btn-padding-x: 30px;
  --bs-accordion-btn-padding-y: 15px;
  --bs-accordion-btn-color: white;
  --bs-accordion-btn-bg: #f6f6f6;
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23002c5a%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-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=%27%23666666%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-focus-border-color: transparent;
  --bs-accordion-btn-focus-box-shadow: none;
  --bs-accordion-body-padding-x: 0;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: #fff;
  --bs-accordion-active-bg: white;
}

.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;
  border-color: var(--bs-accordion-btn-focus-border-color);
  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-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-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-collapse {
  border-width: 0;
}

.accordion-flush .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.accordion-flush .accordion-item:first-child {
  border-top: 0;
}

.accordion-flush .accordion-item:last-child {
  border-bottom: 0;
}

.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {
  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=%27white%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=%27white%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;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x);
}

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

.breadcrumb-item.active {
  color: var(--bs-breadcrumb-item-active-color);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: var(--bs-border-color);
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: var(--bs-tertiary-bg);
  --bs-pagination-hover-border-color: var(--bs-border-color);
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: var(--bs-secondary-bg);
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: white;
  --bs-pagination-active-border-color: white;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: var(--bs-border-color);
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}

.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}

.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}

.page-link.active,
.active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}

.page-link.disabled,
.disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: calc(var(--bs-border-width) * -1);
}

.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}

.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

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

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

.badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.35em;
  --bs-badge-font-size: 0.75em;
  --bs-badge-font-weight: 700;
  --bs-badge-color: #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: white;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

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

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

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

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

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

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: white;
  --bs-list-group-active-border-color: white;
  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: 1536px) {
  .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);
  }
}

@media (min-width: 1660px) {
  .list-group-horizontal-xxxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxxl > .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-xxxl > .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-xxxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxxl > .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: #000;
  --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%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");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 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;
  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(-.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;
  justify-content: space-between;
  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) * .5) calc(var(--bs-modal-header-padding-x) * .5);
  margin: calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.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) * .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) * .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: 1535.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;
  }
}

@media (max-width: 1659.98px) {
  .modal-fullscreen-xxxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxxl-down .modal-header,
  .modal-fullscreen-xxxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxxl-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) * .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) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .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) * .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) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .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) * .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) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .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) * .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(-.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) * .5) 0 calc(var(--bs-popover-arrow-width) * .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%;
}

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%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");
}

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

.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-sm, .offcanvas-md, .offcanvas-lg, .offcanvas-xl, .offcanvas-xxl, .offcanvas-xxxl, .offcanvas {
  --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: 1535.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: 1535.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}

@media (max-width: 1535.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: 1536px) {
  .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;
  }
}

@media (max-width: 1659.98px) {
  .offcanvas-xxxl {
    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: 1659.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxxl {
    transition: none;
  }
}

@media (max-width: 1659.98px) {
  .offcanvas-xxxl.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-xxxl.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-xxxl.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-xxxl.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-xxxl.showing, .offcanvas-xxxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxxl.showing, .offcanvas-xxxl.hiding, .offcanvas-xxxl.show {
    visibility: visible;
  }
}

@media (min-width: 1660px) {
  .offcanvas-xxxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxxl .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;
  justify-content: space-between;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}

.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);
  margin-top: calc(-.5 * var(--bs-offcanvas-padding-y));
  margin-right: calc(-.5 * var(--bs-offcanvas-padding-x));
  margin-bottom: calc(-.5 * var(--bs-offcanvas-padding-y));
}

.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: .6em;
}

.placeholder-sm {
  min-height: .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: #000 !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: #000 !important;
  background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #000 !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(255, 255, 255, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(255, 255, 255, var(--bs-link-underline-opacity, 1)) !important;
}

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

.link-secondary:hover, .link-secondary:focus {
  color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.icon-link {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  backface-visibility: hidden;
}

.icon-link > .bi {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentcolor;
  transition: 0.2s ease-in-out transform;
}

@media (prefers-reduced-motion: reduce) {
  .icon-link > .bi {
    transition: none;
  }
}

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

.ratio {
  position: relative;
  width: 100%;
}

.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}

.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

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

.ratio-4x3 {
  --bs-aspect-ratio: calc(3 / 4 * 100%);
}

.ratio-16x9 {
  --bs-aspect-ratio: calc(9 / 16 * 100%);
}

.ratio-21x9 {
  --bs-aspect-ratio: calc(9 / 21 * 100%);
}

.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: 1536px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

@media (min-width: 1660px) {
  .sticky-xxxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}

.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

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

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

.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.rounded {
  border-radius: var(--bs-border-radius) !important;
}

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

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-xxl) !important;
}

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

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

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

.rounded-top-1 {
  border-top-left-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
  border-top-left-radius: var(--bs-border-radius-lg) !important;
  border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
  border-top-left-radius: var(--bs-border-radius-xl) !important;
  border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

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

.rounded-top-pill {
  border-top-left-radius: var(--bs-border-radius-pill) !important;
  border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
  border-top-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
  border-top-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
  border-top-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
  border-top-right-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
  border-top-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

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

.rounded-bottom-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

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

.rounded-bottom-pill {
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
  border-bottom-left-radius: 0 !important;
  border-top-left-radius: 0 !important;
}

.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
  border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
  border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
  border-bottom-left-radius: 50% !important;
  border-top-left-radius: 50% !important;
}

.rounded-start-pill {
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
  border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.z-n1 {
  z-index: -1 !important;
}

.z-0 {
  z-index: 0 !important;
}

.z-1 {
  z-index: 1 !important;
}

.z-2 {
  z-index: 2 !important;
}

.z-3 {
  z-index: 3 !important;
}

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

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

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

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

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

@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }
  .fs-2 {
    font-size: 2rem !important;
  }
  .fs-3 {
    font-size: 1.75rem !important;
  }
  .fs-4 {
    font-size: 1.5rem !important;
  }
}

@media print {
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-grid {
    display: grid !important;
  }
  .d-print-inline-grid {
    display: inline-grid !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
  .d-print-none {
    display: none !important;
  }
}

html, body, body * {
  font-family: "Signika Negative", sans-serif;
}

.custom-tooltip {
  border-color: rgba(0, 0, 0, 0.9) !important;
  position: absolute;
  bottom: 0;
  left: 80%;
  background: rgba(0, 0, 0, 0.87);
  color: white;
  padding: 5px 7px;
  width: auto;
  min-width: 250px;
  text-align: left;
  z-index: 10000;
  font-size: 1rem;
  border-radius: 3px;
  opacity: 0;
  visibility: hidden;
  transition: all .2s ease;
}

.custom-tooltip#tooltip-for-letter-spacing-normal, .custom-tooltip#tooltip-for-letter-spacing-big {
  bottom: unset;
}

@media (max-width: 767.98px) {
  .custom-tooltip {
    bottom: -50%;
    left: 0;
  }
}

* > a:focus + .custom-tooltip {
  opacity: 1;
  visibility: visible;
}

a:hover > .custom-tooltip, a:focus > .custom-tooltip, button:hover > .custom-tooltip, button:focus > .custom-tooltip {
  opacity: 1;
  visibility: visible;
}

nav.banners ul {
  margin-bottom: 0;
  list-style: none;
}

nav.banners ul li {
  position: relative;
  max-width: 300px;
  width: 100%;
  background: #fff;
}

@media (max-width: 1199.98px) {
  nav.banners ul li {
    margin-left: auto;
    margin-right: auto;
  }
}

nav.banners ul li:last-of-type {
  margin-bottom: 15px;
}

nav.banners ul li:not(:first-of-type) {
  margin-top: 15px;
}

nav.banners ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  border: 1px solid #777777;
  overflow: hidden;
  color: #020202;
  text-decoration: none;
}

nav.banners ul li a:hover {
  color: #020202;
}

nav.banners ul li a > .banner-img {
  display: block;
  max-width: 100%;
}

nav.banners ul li a span:not(.custom-tooltip) {
  height: 62.5px;
  display: flex;
  align-items: center;
}

nav.banners ul li a span:not(.custom-tooltip):not(.banner-sm-img-title) {
  background: white;
}

nav.banners ul li a span:not(.custom-tooltip) .banner-sm-img {
  display: inline-block;
  max-width: 70px;
  height: auto;
  padding: 8px;
}

nav.banners ul li a span:not(.custom-tooltip).banner-sm-img-title {
  width: calc(100% - 75px);
  padding-left: 2px;
  box-sizing: border-box;
}

nav.banners ul li.banner-sm a {
  justify-content: space-between;
}

.body .banners .banner-item, footer .banners .banner-item, .banner .banners .banner-item {
  background: #fff;
  box-sizing: border-box;
}

.body .banners .banner-item span, footer .banners .banner-item span, .banner .banners .banner-item span {
  display: flex;
  align-items: center;
}

.body .banners .banner-item a, .body .banners .banner-item a:hover, footer .banners .banner-item a, footer .banners .banner-item a:hover, .banner .banners .banner-item a, .banner .banners .banner-item a:hover {
  text-decoration: none;
  color: #020202;
}

.body .banners .banner-item-img, footer .banners .banner-item-img, .banner .banners .banner-item-img {
  display: flex;
  overflow: hidden;
  color: #020202;
  text-decoration: none;
}

.body .banners .banner-item-img > .banner-img, footer .banners .banner-item-img > .banner-img, .banner .banners .banner-item-img > .banner-img {
  display: block;
  max-width: 100%;
}

.body .banners .banner-item .banner-item-link, footer .banners .banner-item .banner-item-link, .banner .banners .banner-item .banner-item-link {
  justify-content: start;
  align-content: center;
  display: flex;
}

.body .banners .banner-item.banner-sm, footer .banners .banner-item.banner-sm, .banner .banners .banner-item.banner-sm {
  border: 1px solid #777777;
}

.body .banners .banner-item.banner-sm span:first-of-type, footer .banners .banner-item.banner-sm span:first-of-type, .banner .banners .banner-item.banner-sm span:first-of-type {
  height: 62.5px;
  display: flex;
  padding: 8px;
  background: white;
  width: 70px;
}

.body .banners .banner-item.banner-sm span:first-of-type img, footer .banners .banner-item.banner-sm span:first-of-type img, .banner .banners .banner-item.banner-sm span:first-of-type img {
  margin: auto;
  height: auto;
  min-width: 0;
}

.body .banners .banner-item.banner-sm .banner-sm-img-title, footer .banners .banner-item.banner-sm .banner-sm-img-title, .banner .banners .banner-item.banner-sm .banner-sm-img-title {
  height: 62.5px;
  width: calc(100% - 70px);
  padding-left: 5px;
  box-sizing: border-box;
}

.body .banners .banner-item.banner-wide img, footer .banners .banner-item.banner-wide img, .banner .banners .banner-item.banner-wide img {
  width: 100%;
}

footer .banners .banner-item .banner-item-img {
  height: 62.5px;
  overflow: hidden;
  color: #020202;
  text-decoration: none;
}

footer .banners .banner-item .banner-item-img > .banner-img {
  display: block;
  max-width: 100%;
}

/*popUp*/
.modal-content {
  background-color: #fff !important;
  color: white;
}

/*bonner header */
.banner-header .banner-item-link:focus {
  outline-offset: -4px;
}

/*banners*/
.banner-animation {
  position: relative;
}

.banner-animation .owl-play-control {
  position: absolute;
  z-index: 2;
  top: 15px;
  right: 15px;
}

.banner-animation .owl-play-control-btn {
  border: none;
  padding: 5px 10px;
  background-color: white;
  color: #fff;
}

.banner-item {
  overflow: hidden;
}

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

.banner-item-link {
  display: block;
  height: 100%;
  max-width: 700px;
  margin: 0 auto;
}

.banner-item span {
  max-width: 700px;
  margin: 0 auto;
}

.banner-middle-top {
  margin-right: -1px;
}

.banner-middle-top > *:not(.middle-nav) {
  margin-bottom: 15px;
}

footer .banners, .banner-middle-bottom .banners {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  justify-content: start;
}

.banner-middle-bottom .banner-item:only-child {
  flex: 0 0 auto;
  width: 100%;
}

@media (min-width: 576px) {
  .banner-middle-bottom .banner-item {
    margin-left: 7.5px;
    margin-right: 7.5px;
    flex: 0 0 auto;
    width: calc(50% - 7.5px);
  }
  .banner-middle-bottom .banner-item:nth-child(2n+1) {
    margin-left: 0;
  }
  .banner-middle-bottom .banner-item:nth-child(2n) {
    margin-right: 0;
  }
}

@media (max-width: 576px) {
  .banner-middle-bottom .banner-item {
    flex: 0 0 auto;
    width: 100%;
  }
}

footer .banner-item {
  margin-left: 7.5px;
  margin-right: 7.5px;
}

@media (max-width: 576px) {
  footer .banner-item {
    flex: 0 0 auto;
    width: calc(50% - 7.5px);
  }
  footer .banner-item:nth-child(2n+1) {
    margin-left: 0;
  }
  footer .banner-item:nth-child(2n) {
    margin-right: 0;
  }
}

@media (min-width: 576px) and (max-width: 852px) {
  footer .banner-item {
    flex: 0 0 auto;
    width: calc(33.3% - 10px);
  }
  footer .banner-item:nth-child(3n+1) {
    margin-left: 0;
  }
  footer .banner-item:nth-child(3n) {
    margin-right: 0;
  }
}

@media (min-width: 852px) {
  footer .banner-item {
    flex: 0 0 auto;
    width: calc(25% - 11.5px);
  }
  footer .banner-item:nth-child(4n+1) {
    margin-left: 0;
  }
  footer .banner-item:nth-child(4n) {
    margin-right: 0;
  }
}

.banners-footer:empty {
  display: none;
}

@media screen and (max-width: 991px) {
  nav.banners ul li {
    margin: 0;
    width: 100%;
    max-width: unset;
  }
  nav.banners ul li a {
    height: 75px;
    width: 100%;
  }
}

@media screen and (max-width: 991px) and (min-width: 550px) {
  nav.banners ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    align-items: end;
  }
  nav.banners ul li {
    margin: 0 !important;
  }
}

@media screen and (max-width: 991px) and (min-width: 750px) {
  nav.banners ul {
    grid-template-columns: repeat(3, 1fr);
  }
}

.skip-links {
  list-style: none;
  margin: 0;
}

.skip-links a {
  position: absolute;
  top: 10px;
  left: 50%;
  display: inline-block;
  width: 250px;
  font-size: 1.5rem;
  font-weight: bold;
  color: white;
  text-align: center;
  background: #fff;
  padding: 5px 10px;
  outline: 2px solid deeppink;
  outline-offset: -4px;
  margin-left: 0;
  clip: rect(1px, 1px, 1px, 1px);
  z-index: 10000;
  max-width: calc(100% - 30px);
  transform: translateX(-50%);
}

.skip-links a:focus {
  clip: auto;
}

.skip-links a:hover {
  text-decoration: none;
}

.banner-header {
  max-width: 1920px;
  border-top: none;
  margin: 0 auto;
}

.banner-header .banner-item .banner-item-link {
  display: block;
  width: 100%;
  overflow: hidden;
}

.banner-header .banner-item-img {
  height: auto;
  width: auto;
  min-width: 100%;
  max-width: unset;
  display: block;
  transform: translateX(-50%);
  position: relative;
  left: 50%;
}

@media screen and (min-width: 768px) {
  .banner-header .banner-item-img {
    max-width: 100%;
  }
}

@media (max-width: 767.98px) {
  .banner-header .banner-item .banner-item {
    overflow: hidden;
  }
  .banner-header .banner-item .banner-item-img {
    height: auto;
    width: auto !important;
    max-width: inherit;
  }
}

.banner-header .banner-animation {
  position: relative;
}

.banner-header .banner-animation .owl-play-control {
  position: absolute;
  top: 10px;
  right: 30px;
  text-align: right;
  z-index: 1000;
}

.banner-header .banner-animation .owl-play-control-btn {
  border: none;
  background-color: white;
  color: #fff;
  width: 35px;
  height: 35px;
  font-size: 0.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
}

@media (max-width: 767.98px) {
  .banner-header .banner-animation .banner-item {
    overflow: hidden;
  }
  .banner-header .banner-animation .banner-item-img {
    height: 150px;
    width: auto !important;
    max-width: inherit;
  }
}

.top-menu .navbar-nav {
  justify-content: space-between;
}

.top-menu .navbar-nav .nav-item {
  text-align: center;
}

.top-menu .navbar-nav .nav-item .nav-link {
  padding: 20px;
  white-space: nowrap;
}

@media (max-width: 991.98px) {
  .top-menu .navbar-nav .nav-item .nav-link {
    padding: 10px;
  }
}

.top-menu .navbar-nav .nav-item .nav-link:hover {
  color: #fff;
  background-color: white;
}

.top-menu .navbar-nav .nav-item .nav-link:focus {
  color: #fff;
  background-color: white;
  outline-color: pink;
}

.top-menu .navbar-nav .nav-item:not(:first-child) {
  text-align: center;
  background-color: #f6f6f6;
  text-transform: uppercase;
}

@media (min-width: 992px) {
  .top-menu .navbar-nav .nav-item:not(:first-child) {
    border-right: 1px solid #eeedee;
  }
}

@media (max-width: 991.98px) {
  .top-menu .navbar-nav .nav-item:not(:first-child) {
    border-bottom: 1px solid #eeedee;
  }
}

.top-menu .navbar-nav .nav-item:not(:first-child) .nav-link {
  color: #020202;
}

.top-menu .navbar-nav .nav-item:not(:first-child) .nav-link:focus, .top-menu .navbar-nav .nav-item:not(:first-child) .nav-link:hover {
  color: #fff;
  background-color: white;
}

.top-menu .navbar-nav .nav-item.main-page-item {
  background-color: white;
}

.top-menu .navbar-nav .nav-item.main-page-item .nav-link {
  color: #fff;
  padding: 20px 25px;
}

@media (max-width: 991.98px) {
  .top-menu .navbar-nav .nav-item.main-page-item .nav-link {
    padding: 10px;
  }
}

.top-menu .navbar-nav .nav-item #dropdownMenuButton {
  width: 100%;
  border: none;
  text-transform: uppercase;
  background-color: #eeedee;
  padding-right: 25px;
}

.top-menu .navbar-nav .nav-item #dropdownMenuButton::after {
  border: none;
  content: "\f078";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  font-size: 0.8rem;
  vertical-align: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 7px;
}

.top-menu .navbar-nav .nav-item #dropdownMenuButton:hover {
  color: #fff;
  background-color: white;
}

.top-menu .navbar-nav .nav-item #dropdownMenuButton:focus {
  color: #fff;
  background-color: white;
  outline-color: pink;
}

.top-menu .navbar-nav .nav-item.menutopmore #menutopmore-elements {
  border: none;
  padding: 0;
  border-bottom: 2px solid white;
}

.top-menu .navbar-nav .nav-item.menutopmore #menutopmore-elements ul {
  list-style: none;
  padding: 0;
}

.top-menu .navbar-nav .nav-item.menutopmore #menutopmore-elements ul .nav-item {
  background-color: #f6f6f6;
  border-right: 0;
  border-bottom: 1px solid #e9e9e9;
}

.top-menu .navbar-toggler {
  padding: 15px 15px;
  background: white;
}

.top-menu .navbar-toggler .menu-icon svg {
  fill: #fff;
}

@media (max-width: 991.98px) {
  .top-menu .navbar-toggler {
    display: block;
    margin-left: auto;
    margin-top: 10px;
  }
}

.subMenu-container {
  display: none;
  position: absolute;
  left: 0;
  min-height: 10px;
  width: 100%;
  z-index: 1000;
}

@media screen and (min-width: 991px) {
  .subMenu-container.shown {
    display: initial;
  }
}

.subMenu {
  border: 1px solid rgba(128, 128, 128, 0.27);
  border-top: none;
  background-color: #fff;
  padding: 25px;
  display: grid;
  grid-template-columns: 350px 300px 1fr;
  gap: 30px;
}

.subMenu.container-xl {
  margin: 0 .75rem;
  width: calc(100% - 1.5rem);
}

@media screen and (min-width: 1200px) {
  .subMenu.container-xl {
    width: calc(95% - 1.5rem);
    margin: 0 auto;
  }
}

.subMenu * {
  font-family: var(--font-temp), sans-serif;
  text-transform: none;
}

.subMenu__first {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
  position: relative;
}

.subMenu__first::before {
  position: absolute;
  height: 100%;
  content: '';
  top: 0;
  right: -20px;
  width: 18px;
  background-color: #fef3bf;
}

.subMenu__first--icon {
  width: 120px;
  height: 120px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 0;
}

.subMenu__first--icon img {
  width: 100%;
  margin: 0 !important;
}

.subMenu__first--text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 0;
  height: 100%;
}

.subMenu__first--text .subMenu-name {
  font-family: var(--font-temp), sans-serif;
  font-size: 35px;
  font-weight: 700;
  line-height: 38.4px;
  text-align: left;
}

.subMenu__first--text .subMenu-subname {
  font-family: var(--font-temp), sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 34.56px;
  text-align: left;
}

.subMenu__links {
  position: relative;
}

.subMenu__links ul {
  list-style: none;
  text-align: left;
}

.subMenu__links ul li a {
  text-decoration: none;
  color: #707070;
  font-family: var(--font-temp), sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 21px;
  /* 150% */
  letter-spacing: 0.7px;
  transition: 150ms;
}

.subMenu__links ul li a:hover {
  color: white;
  text-decoration: underline;
}

.subMenu__description {
  text-align: left;
}

.subMenu__description p {
  color: #707070;
  font-family: var(--font-temp), sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 21px;
  /* 150% */
  letter-spacing: 0.7px;
}

.header-main {
  padding-top: 30px;
  padding-bottom: 30px;
}

@media screen and (min-width: 1336px) {
  .header-main-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .header .logo-wrapper {
    white-space: nowrap;
  }
}

.header .img .logo-bip-link.letter-spacing-on {
  margin-right: 15px;
}

.header .img .logo-bip-link .logo-bip {
  min-width: 80px;
  max-width: 150px;
}

.header .img .logo-icon {
  max-height: 83px;
  margin-right: 30px;
}

.header .img .logo-icon:not(.logo-bip) {
  background-color: #fff;
}

.header .img .logo-icon.letter-spacing-on {
  margin-right: 15px;
}

@media screen and (max-width: 767.9px) {
  .header .img .logo-icon {
    margin: 10px;
  }
}

.header .main-title {
  color: black !important;
}

@media screen and (min-width: 992px) {
  .header .main-title {
    max-width: 70%;
  }
}

.header .main-title .what {
  font-size: 1.8rem;
  font-weight: bold;
}

.header .main-title .where {
  font-size: var(--font-title-where-size, 2rem);
  font-family: var(--font-title-where), var(--font), Sans-serif;
  font-weight: bold;
}

.header .main-title .sub {
  color: var(--font-title-sub-color, var(--main-color));
  font-size: var(--font-title-sub-size, 1.8rem);
  font-family: var(--font-title-sub), var(--font), Sans-serif;
  font-weight: bold;
}

.header .header-left {
  margin-left: auto;
}

.header .header-left .header-left-toolbar {
  background: #eeedee;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 700px) {
  .header .header-left .header-left-toolbar {
    position: absolute;
    left: .5vw;
    top: 65px;
  }
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-btn {
  font-size: 2rem;
  color: black !important;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-btn::after {
  display: none;
}

.header .header-left .header-left-toolbar .accessibility-panel .accessibility-menu {
  margin: 0 10px;
}

.header .header-left .header-left-toolbar .accessibility-panel .menu-reset::after {
  content: '\f0e2';
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu {
  padding: 15px;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .dropdown-item {
  display: inline-flex;
  width: 3rem;
  height: 3rem;
  border: 1px solid #000;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  padding: 0;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .dropdown-item:not(:last-of-type) {
  margin-right: 5px;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-contrast {
  background-color: #000;
  color: #ffff00;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu-separate-title {
  padding: 15px 0;
  font-size: 1rem;
  border-top: 1px solid #ced4da;
  margin-top: 15px;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu-items-title {
  font-size: 1.1rem;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .js-resize-big {
  font-size: 2rem;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .js-resize-middle {
  font-size: 1.8rem;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .js-resize-small {
  font-size: 1.4rem;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-links-hilight {
  background-color: #000;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-letter-spacing-midle {
  padding: 9px;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-letter-spacing-midle svg {
  fill: var(--bs-body-color);
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-letter-spacing-big {
  padding: 5px;
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-letter-spacing-big svg {
  fill: var(--bs-body-color);
}

.header .header-left .header-left-toolbar .accessibility-panel-dropdown-menu .menu-letter-spacing-big svg path {
  fill: var(--bs-body-color);
}

.header .header-left .header-left-toolbar .switch {
  position: relative;
  display: inline-block;
  width: 55px;
  height: 24px;
  border-radius: 5px;
  border: 1px solid #ced4da;
  background-color: white;
}

.header .header-left .header-left-toolbar .switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.header .header-left .header-left-toolbar .switch input + .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 5px;
}

.header .header-left .header-left-toolbar .switch input + .slider::before {
  position: absolute;
  content: "";
  height: 22px;
  width: 22px;
  left: 0;
  bottom: 0;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 5px;
}

.header .header-left .header-left-toolbar .switch input + .slider::after {
  position: absolute;
  content: '\f185';
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  right: 6px;
  bottom: 0;
  font-size: 0.938rem;
}

.header .header-left .header-left-toolbar .switch input:checked + .slider {
  background-color: white;
}

.header .header-left .header-left-toolbar .switch input:checked + .slider::before {
  -webkit-transform: translateX(31px);
  -ms-transform: translateX(31px);
  transform: translateX(31px);
}

.header .header-left .header-left-toolbar .switch input:checked + .slider::after {
  position: absolute;
  content: '\f186';
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  left: 6px;
  right: auto;
  bottom: 0;
  font-size: 0.938rem;
}

.header .header-left .header-left-toolbar .switch input:focus + .slider {
  outline: 2px solid deeppink;
  outline-offset: 2px;
}

.header .header-left .header-search {
  margin-left: 30px;
  margin-bottom: 0;
}

.header .header-left .header-search-btn {
  border: 1px solid #ced4da;
  border-left: none;
  padding: 15px;
  color: black !important;
  background-color: var(--bs-body-bg);
}

.header .header-left .header-search-btn:focus {
  outline: 2px solid deeppink !important;
  outline-offset: -4px;
}

.header .header-left .header-search-btn + .custom-tooltip {
  bottom: auto;
  left: auto;
  min-width: 70px;
  top: 95%;
  right: 1px;
}

.header .header-left .header-search-input {
  border-right: none;
  padding: 0.75rem;
}

#cookies-info {
  position: fixed;
  z-index: 100000;
  bottom: 0;
  background: #222;
  color: #fff;
}

#cookies-info a {
  color: #fff;
}

#cookies-info a:hover {
  color: #fff;
}

#cookies-info a:focus-visible {
  outline-offset: 2px;
}

@media (min-width: 768px) {
  #cookies-info > p {
    width: calc(100% - 115px);
  }
}

img.admin-logo {
  max-width: 120px;
}

body.mbip header .header-logo .main-title {
  border-left: none;
  font-size: 3.5rem;
  flex: 0 0 calc(60% - 30px);
}

body.mbip header .header-logo .main-title .img .logo-icon, body.mbip header .header-logo .main-title .img .logo-bip {
  max-height: 85px;
}

@media screen and (max-width: 767.98px) {
  body.mbip header .header-logo .img, body.mbip header .header-logo .main-title {
    flex: 0 0 auto;
  }
  body.mbip header .header-logo .main-title {
    width: 100%;
  }
}

body.mbip .contents_controls button:before, body.mbip .contents_controls button#metrics-btn:before {
  margin-right: 0;
}

body.mbip header .header-logo .main-title {
  border-left: none;
  font-size: 3.5rem;
}

body.mbip header .header-logo .img .logo-icon, body.mbip header .header-logo .img .logo-bip {
  max-height: 120px;
}

body.mbip header .header-logo .main-title {
  flex: 0 0 calc(60% - 30px);
}

body.mbip header .header-logo .img {
  flex: 0 0 20%;
}

body.mbip .contents_controls button:before, body.mbip .contents_controls button#metrics-btn:before {
  margin-right: 0;
}

@media screen and (max-width: 767.98px) {
  body.mbip header .header-logo .img {
    flex: 0 0 auto;
  }
  body.mbip header .header-logo .main-title {
    width: 100%;
    flex: 0 0 auto;
  }
}

body.mbip header .header-logo .img .logo-icon, body.mbip header .header-logo .img .logo-bip {
  max-height: 85px;
}

@media screen and (max-width: 768px) {
  body.mbip header .header-logo .img .logo-bip, body.mbip header .header-logo .img .logo-icon {
    max-height: 60px;
  }
}

.footer-main {
  color: #fff;
  margin-top: 30px;
}

.footer-main-boxes {
  background-color: #12132A;
  padding: 45px;
}

@media (max-width: 991.98px) {
  .footer-main-boxes {
    padding: 30px;
  }
}

.footer-main-boxes .footer-box {
  padding: 0 30px;
}

@media (min-width: 768px) {
  .footer-main-boxes .footer-box.columns-2 {
    width: 50%;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .footer-main-boxes .footer-box.columns-3 {
    width: 50%;
  }
}

@media (min-width: 992px) {
  .footer-main-boxes .footer-box.columns-3 {
    width: 33.33%;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .footer-main-boxes .footer-box.columns-4 {
    width: 50%;
  }
}

@media (min-width: 1200px) {
  .footer-main-boxes .footer-box.columns-4 {
    width: 25%;
  }
}

.footer-main-boxes .footer-box a {
  color: #fff;
}

.footer-main-boxes .footer-box * {
  word-wrap: break-word;
}

.footer-main-boxes .footer-box:not(:first-of-type) {
  border-left: 1px solid #5f697b;
}

.footer-main-boxes .footer-box-title {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  font-weight: bold;
}

@media (max-width: 1199.98px) {
  .footer-main-boxes .footer-box:nth-child(3) {
    border-left: none;
  }
  .footer-main-boxes .footer-box:nth-child(3), .footer-main-boxes .footer-box:nth-child(4) {
    margin-top: 45px;
  }
}

@media (max-width: 767.98px) {
  .footer-main-boxes .footer-box {
    padding: 0;
  }
  .footer-main-boxes .footer-box:not(:first-of-type) {
    margin-top: 30px;
    border-left: none;
  }
}

.footer-main-boxes .footer-main-boxes-link-icon {
  color: #5f697b;
  margin-right: 10px;
  width: 15px;
  display: flex;
  align-items: center;
}

.footer-main-boxes .footer-main-boxes-link-icon.fa-sitemap::before {
  font-size: 0.85rem;
}

.footer-main-boxes .footer-main-boxes-link-icon svg {
  fill: #5f697b;
}

.footer-main-boxes-link {
  color: var(--link-color);
  text-decoration: none;
  display: flex;
}

.footer-main-boxes-link:hover {
  text-decoration: underline;
  color: var(--link-color-hover);
}

.footer-main-bottom {
  padding: 15px;
  color: #020202;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.footer-main-bottom .bottom-left {
  margin-bottom: 15px;
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 576px) {
  .footer-main-bottom .bottom-left-version {
    padding-right: 10px;
    margin-right: 10px;
    border-right: 1px solid #020202;
  }
}

.footer-main-bottom {
  color: #0055B8 !important;
}

.footer-all {
  color: #fff;
  margin-top: 30px;
  background-color: #12132A;
}

.footer-all .footer-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
  align-items: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  padding: 30px;
}

@media screen and (min-width: 750px) {
  .footer-all .footer-container {
    display: grid;
    grid-template-columns: .5fr 1fr .5fr;
  }
}

.footer-all .footer-container__address {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.footer-all .footer-container__address h2, .footer-all .footer-container__address .h2, .footer-all .footer-container__address h3, .footer-all .footer-container__address .h3, .footer-all .footer-container__address .address__text {
  text-align: center;
}

.footer-all .footer-container__image {
  display: none;
  height: 100%;
  min-height: 220px;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 750px) {
  .footer-all .footer-container__image {
    display: initial;
  }
}

.footer-all .footer-container__menu .menu-title {
  text-transform: uppercase;
  font: 400 16px/24px 'Roboto', sans-serif;
  margin-bottom: 20px;
}

.footer-all .footer-container__menu .menu-container a {
  font: 700 16px/24px 'Roboto', sans-serif;
  text-decoration: underline;
  text-transform: uppercase;
  color: white;
}

.footer-all .footer-bottom {
  background-color: #002C5A;
  padding: 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 600px) {
  .footer-all .footer-bottom {
    flex-direction: row;
    justify-content: center;
    gap: 30px;
  }
}

.footer-all .footer-bottom p {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  color: white;
  font-size: 0.875rem;
}

.footer-all .footer-bottom p svg {
  fill: white;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 95%;
  }
}

@media (min-width: 1536px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    max-width: 1476px;
  }
}

@media (min-width: 1660px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl, .container-xxxl {
    max-width: 1620px;
  }
}

.sr-only-xs-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 0) {
  .sr-only-xs-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-sm-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 576px) {
  .sr-only-sm-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-md-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 768px) {
  .sr-only-md-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-lg-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 992px) {
  .sr-only-lg-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-xl-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 1200px) {
  .sr-only-xl-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-xxl-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 1536px) {
  .sr-only-xxl-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.sr-only-xxxl-down {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

@media (min-width: 1660px) {
  .sr-only-xxxl-down {
    position: relative;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: unset;
    clip: initial;
    border: 0;
  }
}

.aside, .navs-column {
  -webkit-box-flex: 0;
}

.aside .main-page-nav-title, .navs-column .main-page-nav-title {
  padding: 15px 30px 15px 30px;
  text-transform: uppercase;
  text-decoration: none;
  display: block;
  background-color: white;
  color: #fff;
  font-weight: bold;
}

.aside.aside-main-page, .navs-column.aside-main-page {
  margin-top: 30px;
}

@media (min-width: 992px) {
  .aside, .navs-column {
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
    width: 300px;
  }
}

.aside .left-menu-container, .navs-column .left-menu-container {
  background-color: #f6f6f6;
  margin-bottom: 30px;
}

.aside .left-menu-container .left-menu-title, .navs-column .left-menu-container .left-menu-title {
  text-align: left;
  padding: 0;
  color: #020202;
}

.aside .left-menu-container .left-menu-title .menu-icon, .navs-column .left-menu-container .left-menu-title .menu-icon {
  display: inline-block;
  padding: 21px;
  background-color: white;
  position: relative;
}

.aside .left-menu-container .left-menu-title .menu-icon #main-page-link, .navs-column .left-menu-container .left-menu-title .menu-icon #main-page-link {
  color: #fff;
}

.aside .left-menu-container .left-menu-title .menu-icon #main-page-link:focus, .navs-column .left-menu-container .left-menu-title .menu-icon #main-page-link:focus {
  outline-offset: 2px;
}

.aside .left-menu-container .left-menu-title .menu-btn-label, .navs-column .left-menu-container .left-menu-title .menu-btn-label {
  display: inline-block;
  padding: 15px;
  text-transform: uppercase;
}

.aside .left-menu-container .left-menu, .navs-column .left-menu-container .left-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  flex-direction: column;
  align-items: start;
  border-bottom: 2px solid white;
}

.aside .left-menu-container .left-menu ul, .navs-column .left-menu-container .left-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.aside .left-menu-container .left-menu li, .navs-column .left-menu-container .left-menu li {
  width: 100%;
}

.aside .left-menu-container .left-menu li a, .navs-column .left-menu-container .left-menu li a {
  padding: 15px 30px 15px 30px;
  text-transform: uppercase;
  text-decoration: none;
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  color: var(--white);
  overflow: hidden;
}

.aside .left-menu-container .left-menu li a::before, .navs-column .left-menu-container .left-menu li a::before {
  position: absolute;
  height: 100%;
  width: 5px;
  content: '';
  top: 0;
  left: -20px;
  transition: left 250ms ease-out;
  background-color: var(--main-color);
}

.aside .left-menu-container .left-menu li a:hover, .aside .left-menu-container .left-menu li a:focus, .navs-column .left-menu-container .left-menu li a:hover, .navs-column .left-menu-container .left-menu li a:focus {
  color: var(--main-color);
  text-decoration: underline !important;
}

.aside .left-menu-container .left-menu li a:hover::before, .aside .left-menu-container .left-menu li a:focus::before, .navs-column .left-menu-container .left-menu li a:hover::before, .navs-column .left-menu-container .left-menu li a:focus::before {
  left: 0;
}

.aside .left-menu-container .left-menu li.level-0, .navs-column .left-menu-container .left-menu li.level-0 {
  border-top: 1px solid #eeedee;
}

.aside .left-menu-container .left-menu li.level-0 > a.hasElements::after, .navs-column .left-menu-container .left-menu li.level-0 > a.hasElements::after {
  content: "\f078";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  position: absolute;
  right: 15px;
  top: 15px;
}

.aside .left-menu-container .left-menu li.level-0 > a.hasElements.rightErrow::after, .navs-column .left-menu-container .left-menu li.level-0 > a.hasElements.rightErrow::after {
  content: "\f054";
}

.aside .left-menu-container .left-menu li.level-0.current > a, .navs-column .left-menu-container .left-menu li.level-0.current > a {
  background-color: white;
  color: #fff;
  font-weight: bold;
}

.aside .left-menu-container .left-menu li.level-0.current > a.hasElements::after, .navs-column .left-menu-container .left-menu li.level-0.current > a.hasElements::after {
  content: "\f077";
}

.aside .left-menu-container .left-menu li.level-0.current > a.hasElements.rightErrow::after, .navs-column .left-menu-container .left-menu li.level-0.current > a.hasElements.rightErrow::after {
  content: "\f053";
}

.aside .left-menu-container .left-menu li.level-0 .menu-item-arrow, .navs-column .left-menu-container .left-menu li.level-0 .menu-item-arrow {
  width: 15px;
  height: 15px;
}

.aside .left-menu-container .left-menu li.level-1, .navs-column .left-menu-container .left-menu li.level-1 {
  background-color: #f2fbff;
  border-top: 1px solid #bac9d8;
}

.aside .left-menu-container .left-menu li.level-1 a, .navs-column .left-menu-container .left-menu li.level-1 a {
  padding-left: 50px;
  color: #020202;
}

.aside .left-menu-container .left-menu li.level-1 a.hasElements::after, .navs-column .left-menu-container .left-menu li.level-1 a.hasElements::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.90rem;
}

.aside .left-menu-container .left-menu li.level-1 a.hasElements.rightErrow::after, .navs-column .left-menu-container .left-menu li.level-1 a.hasElements.rightErrow::after {
  content: "\f054";
}

.aside .left-menu-container .left-menu li.level-1.current > a, .navs-column .left-menu-container .left-menu li.level-1.current > a {
  font-weight: bold;
}

.contents {
  color: #020202;
  /*gallery carousel*/
  /*gallery list*/
}

@media (min-width: 992px) {
  .contents:not(.inlo-container) {
    width: calc(100% - 300px);
    padding-left: 30px;
  }
}

.contents.inlo-container {
  width: 100%;
}

.contents.full-width {
  padding-left: 0;
  width: 100%;
}

.contents .category-lead {
  border-bottom: 2px solid white;
  padding: 0 30px 15px;
  margin-bottom: 30px;
}

@media (max-width: 767.98px) {
  .contents .category-lead {
    padding: 15px;
    margin-bottom: 15px;
  }
}

.contents .galleries-list-count {
  margin-top: 10px;
}

.contents .galleries-list-item-title {
  margin-bottom: 10px;
  font-size: 1.7rem;
  display: block;
}

.contents .galleries-list-item-img {
  height: 200px;
  background-size: cover !important;
}

.contents .gallery-carousel {
  max-width: 760px;
  margin: 15px auto;
}

.contents .gallery-carousel .owl-stage {
  display: flex;
  align-items: center;
}

.contents .gallery-carousel-item {
  height: 200px;
  overflow: hidden;
  padding: 5px;
}

.contents .gallery-carousel-item-link {
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
  justify-content: center;
}

.contents .gallery-carousel-item-link-img {
  max-width: unset !important;
  width: auto !important;
  height: 100%;
}

.contents .owl-nav button {
  width: 3.2rem;
  height: 3.2rem;
  background: white;
  color: #fff !important;
  border-radius: 0 !important;
}

.contents .owl-nav button:hover {
  background: white;
  opacity: 0.95;
}

.contents .owl-nav button:focus {
  outline: 2px solid pink;
}

.contents .gallery-list {
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.contents .gallery-list-item {
  padding: 7.5px;
  overflow: hidden;
  height: 200px;
}

@media (min-width: 576px) {
  .contents .gallery-list-item {
    max-width: 50%;
  }
}

@media (min-width: 768px) {
  .contents .gallery-list-item {
    max-width: 33%;
  }
}

@media (min-width: 1200px) {
  .contents .gallery-list-item {
    max-width: 25%;
  }
}

.contents .gallery-list-item-link {
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
  justify-content: center;
}

.contents .gallery-list-item-link-img {
  max-width: unset !important;
  width: auto;
  height: 100%;
}

.contents .middle-nav {
  border-left: 6px solid #e4e4e4;
  background-color: #f6f6f6;
}

.contents .middle-nav .category-list {
  margin: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.contents .middle-nav .category-list li {
  border-bottom: 1px solid #eeedee;
  display: block;
}

.contents .middle-nav .category-list li:last-of-type {
  margin-bottom: 15px;
}

.contents .middle-nav .category-list li.current a {
  font-weight: bold;
}

.contents .middle-nav .category-list li a {
  position: relative;
  display: block;
  padding: 20.5px 15px 20.5px 50px;
}

.contents .middle-nav .category-list li a.hasElements::before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  position: absolute;
  left: 30px;
  font-size: 0.90rem;
}

.contents .middle-nav .category-list li a:focus {
  outline-offset: -4px !important;
}

.contents .contents-title {
  padding: 19.5px 30px;
  color: white;
  text-transform: uppercase;
  border-bottom: 1px solid #ced4da;
  font-size: 1.4rem;
  font-weight: bold;
  background-color: #f6f6f6;
  margin-bottom: 0;
}

@media (max-width: 767.98px) {
  .contents .contents-title {
    padding: 19.5px 15px;
  }
}

.tags {
  border-top: 1px solid #ced4da;
  padding: 15px 30px;
}

.highlight {
  padding: 15px 30px;
  background: #e3f6ff;
  border-bottom: 2px solid white;
  display: flex;
  margin-bottom: 15px;
}

.highlight::before {
  content: "\f06a";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  display: block;
  margin-right: 30px;
  font-size: 2rem;
  color: white;
}

#content-title, #main-title {
  color: black !important;
}

.breadcrumbs .breadcrumb {
  margin: 30px 0;
}

@media (max-width: 991.8px) {
  .breadcrumbs .breadcrumb {
    margin-top: 15px;
    margin-bottom: 15px;
  }
}

.breadcrumbs .breadcrumb-item:not(.active)::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  font-size: 0.8rem;
  margin-left: 13px;
}

.breadcrumbs .breadcrumb-item.active {
  color: #020202;
}

.breadcrumbs .breadcrumb-item a {
  text-decoration: none;
}

img {
  max-width: 100%;
}

.body {
  overflow: hidden;
}

@media (min-width: 992px) {
  .body {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

#main-content.contents-main-page {
  margin-top: 30px;
}

.btn-outline-primary:hover {
  color: white;
}

.form-control:focus {
  outline: 2px solid deeppink;
  outline-offset: -4px;
  border-color: #ced4da;
}

a:focus, button:focus, .btn:focus {
  outline: 2px solid deeppink;
  outline-offset: -4px;
  border-color: #ced4da;
  border-color: transparent;
}

a.btn-primary:focus, button.btn-primary:focus, .btn.btn-primary:focus {
  outline-color: pink;
}

a:hover + .custom-tooltip {
  opacity: 1;
  visibility: visible;
  position: absolute;
}

.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 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z%27/%3e%3c/svg%3e");
}

.header-main-top a:not(.dropdown-item):not(.more-btn):not(.banners):focus, .contents a:not(.dropdown-item):not(.more-btn):not(.banners):focus {
  outline-offset: 4px !important;
}

.contents_controls a:focus, .contents_controls button:focus, .footer-main.footer-main-boxes a:focus, .footer-main.footer-main-boxes button:focus {
  outline: 2px solid pink;
  outline-offset: 2px;
  border-color: white;
}

.breadcrumb-item a:focus {
  outline: 2px solid deeppink;
  outline-offset: 4px;
  border-color: white;
}

a.link-hilight {
  background-color: #2b2b2b !important;
  color: #ffff00 !important;
  display: inline-block;
}

.table-responsive {
  overflow-x: auto;
}

.table-responsive {
  height: auto;
  max-height: unset;
  overflow: auto;
  direction: ltr;
  scrollbar-color: white #eeedee;
  scrollbar-width: thin;
}

.table-responsive::-webkit-scrollbar {
  height: 5px;
  width: 5px;
}

.table-responsive::-webkit-scrollbar-track {
  background-color: #eeedee;
}

.table-responsive::-webkit-scrollbar-thumb {
  border-radius: 0;
  background-image: linear-gradient(white, white);
}

.banners > ul {
  list-style: none;
  padding-left: 0 !important;
}

@media (min-width: 992px) {
  .banners > ul .banner-sm-img {
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
    width: 300px;
  }
}

.contents-list .title-main-page {
  position: relative;
}

.contents-list .title-main-page::before {
  content: '\f1ea';
  font-family: 'Font Awesome 5 Free';
  font-weight: 400;
  margin-right: 10px;
}

.title-main-page {
  font: 700 28px/normal 'Signika Negative', sans-serif;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  align-items: center;
  width: 100%;
}

.title-main-page::after {
  content: '';
  width: 70%;
  transform: translateY(-50%);
  height: 1px;
  background-color: red;
  margin-left: auto;
}

.title-main-page.authority .material-symbols-outlined {
  font-size: 32px;
  transform: translateY(7px);
}

#attachments-metrics {
  position: relative;
}

#attachments-metrics::before {
  display: inline-block;
  margin-left: 6px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f05a";
  text-decoration: none;
}

.articles {
  min-height: unset !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin: 0;
}

.articles__importants, .articles__nonimportants {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 15px;
}

.articles__importants--single, .articles__nonimportants--single {
  background-color: var(--white-bg-color);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15px;
  padding: 25px;
  width: 100%;
  max-width: 600px;
  min-height: 300px;
  border-radius: 6px;
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

.articles__importants--single .content-wrapper, .articles__nonimportants--single .content-wrapper {
  width: 100%;
}

.articles__importants--single .content, .articles__nonimportants--single .content {
  background: var(--white-bg-color);
  color: var(--main-text-color);
  padding: 20px 0;
}

.articles__importants--single .item-img-article, .articles__nonimportants--single .item-img-article {
  min-height: 120px;
  height: 35%;
  width: 100%;
  aspect-ratio: 1.7;
  overflow: hidden;
  border-radius: 6px;
  object-fit: cover;
}

.articles__importants--single .item-img-article img, .articles__nonimportants--single .item-img-article img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.articles__importants--single .item-img-article.no-img, .articles__nonimportants--single .item-img-article.no-img {
  width: 100%;
  background-color: #dadada;
  color: #212121;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

.articles__importants--single .article-header, .articles__nonimportants--single .article-header {
  font-size: 1.6rem;
  font-weight: 600;
  font-family: "Favela", sans-serif;
}

.articles__importants--single .article-header a, .articles__nonimportants--single .article-header a {
  color: black;
}

.articles__importants--single .article-header a:hover, .articles__importants--single .article-header a:visited, .articles__importants--single .article-header a:link, .articles__nonimportants--single .article-header a:hover, .articles__nonimportants--single .article-header a:visited, .articles__nonimportants--single .article-header a:link {
  color: black;
}

.articles__importants--single .article-header__date, .articles__nonimportants--single .article-header__date {
  width: 100%;
  margin-bottom: 0 !important;
  font-size: 0.8rem;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
}

.articles__importants--single .article-header__date .material-symbols-outlined, .articles__nonimportants--single .article-header__date .material-symbols-outlined {
  font-size: .8rem;
}

.articles__importants--single .article-content, .articles__nonimportants--single .article-content {
  font-size: 1rem;
}

.articles__importants--single .article-read-more, .articles__nonimportants--single .article-read-more {
  font-size: .9rem;
  font-weight: 600;
  margin: 10px 0 20px 0;
  display: inline-block;
  color: var(--main-color);
}

.articles__importants {
  box-shadow: none;
}

.articles .article-controls {
  display: none;
}

@media screen and (min-width: 1200px) {
  .articles {
    width: 100%;
    height: 600px;
    max-height: unset;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
  }
  .articles__importants, .articles__nonimportants {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
    max-width: unset;
  }
  .articles__importants--single, .articles__nonimportants--single {
    max-width: unset;
  }
  .articles__importants {
    position: relative;
    width: 50%;
    height: 100%;
    border-radius: 6px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
  }
  .articles__importants .article-controls {
    position: absolute;
    bottom: 0;
    background-color: var(--white-bg-color);
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
    width: 100%;
    height: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
  }
  .articles__importants .article-controls__dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid grey;
    background-color: var(--white-bg-color);
    transition: 500ms cubic-bezier(0.88, -1.97, 0.3, 1.75);
  }
  .articles__importants .article-controls__dot.active {
    background-color: var(--main-color);
    transform: scale(1.5);
    border: 1px solid rgba(128, 128, 128, 0.34);
  }
  .articles__importants--single {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 100px);
    opacity: 1;
    transition: 250ms;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    box-shadow: none;
  }
  .articles__importants--single.not-visible {
    opacity: 0;
    pointer-events: none;
  }
  .articles__nonimportants {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    height: 100%;
  }
  .articles__nonimportants.three-columns {
    grid-template-columns: repeat(3, 1fr);
  }
  .articles__nonimportants--single {
    position: relative;
    padding: 15px;
    height: 100%;
  }
  .articles__nonimportants--single .article-header {
    padding: 0 30px;
    font-size: 1.25rem;
    background-color: var(--white-bg-color);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 5px;
  }
  .articles__nonimportants--single .article-content {
    height: 100px;
  }
  .articles__nonimportants--single a.show-more {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 20px;
    color: white;
    text-decoration: none;
    background-color: var(--main-color);
    border-radius: 6px;
    border: none;
    opacity: .8;
    transition: 200ms;
  }
  .articles__nonimportants--single a.show-more:hover {
    opacity: 1;
    filter: brightness(1.2);
  }
}

.cancelation__form {
  width: 100%;
  border-radius: 6px;
  border: 1px solid grey;
  padding: 25px;
}

.cancelation__form label {
  font-weight: 600;
  font-size: 1.2rem;
}

.cancelation__form textarea {
  border-radius: 6px;
  border: 1px solid grey;
}

.user-details {
  margin: 10px auto;
  max-width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-end !important;
  align-items: center;
  gap: 15px !important;
}

@media screen and (max-width: 700px) {
  .user-details:not(.loggedOf) a.profile-settings {
    display: inline-block;
    width: 100%;
  }
}

@media screen and (max-width: 500px) {
  .user-details:not(.loggedOf) {
    flex-direction: column;
  }
  .user-details:not(.loggedOf) .user-details__second {
    margin: 0 auto;
  }
}

@media screen and (min-width: 500px) {
  .user-details:not(.loggedOf) {
    flex-direction: row;
  }
}

@media screen and (max-width: 700px) {
  .user-details__first--info {
    padding-right: 20px;
  }
  .user-details__first--info .mobile-hide {
    display: none;
  }
}

@media screen and (min-width: 1200px) {
  .user-details {
    max-width: 95%;
  }
}

@media screen and (min-width: 1536px) {
  .user-details {
    max-width: 1476px;
  }
}

@media screen and (min-width: 1660px) {
  .user-details {
    max-width: 1620px;
  }
}

.user-details .profile-settings {
  color: #4771DA;
  text-decoration: underline;
  font-weight: 400;
}

.user-details .loggedOf .profile-settings {
  text-decoration: none;
  font-weight: 400;
}

.user-details .loggedOf .profile-settings:hover {
  text-decoration: underline;
}

.user-details .login-user, .user-details .admin-logout {
  padding: 7px 15px;
  border-radius: 6px;
  background-color: #00009d;
  color: white;
  border: none;
  transition: 250ms;
  height: fit-content;
  text-decoration: none;
}

.user-details .login-user:hover, .user-details .admin-logout:hover {
  background-color: #0000c5;
  scale: 1.03;
  box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.25);
}

.user-details .login-user:active, .user-details .admin-logout:active {
  scale: .95;
  box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.44);
}

.user-details .admin-logout {
  border-radius: 4px;
  border: 1px solid #C2372A;
  background-color: #C2372A;
  color: white;
  font-weight: 400;
}

.user-details .admin-logout:hover {
  background-color: #be0000;
}

@media screen and (max-width: 991.9px) {
  .orneta-title {
    text-align: center;
  }
}

.orneta-title p {
  font-family: var(--font-temp), sans-serif;
  line-height: 1.5rem;
}

.orneta-title__top {
  text-transform: uppercase;
  font-size: 1.375rem;
}

.orneta-title__bottom {
  font-size: 2rem;
  text-transform: capitalize;
  font-weight: 500;
}

.articles {
  min-height: 800px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-bottom: 30px;
}

.articles *:not(.material-symbols-outlined):not(.fa):not(.fas):not(.far) {
  font-family: "Signika Negative", sans-serif !important;
}

.articles__importants, .articles__nonimportants {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 15px;
}

.articles__importants--single, .articles__nonimportants--single {
  background-color: var(--white-bg-color);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15px;
  padding: 25px;
  width: 100%;
  max-width: 600px;
  min-height: unset !important;
  border-radius: 6px;
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

.articles__importants--single h2, .articles__importants--single .h2, .articles__nonimportants--single h2, .articles__nonimportants--single .h2 {
  background-color: transparent !important;
}

.articles__importants--single .content-wrapper, .articles__nonimportants--single .content-wrapper {
  width: 100% !important;
}

.articles__importants--single .content, .articles__nonimportants--single .content {
  background: var(--white-bg-color);
  color: var(--main-text-color);
  padding: 10px 0;
}

.articles__importants--single .item-img, .articles__nonimportants--single .item-img {
  min-height: 120px;
  height: 55%;
  width: 100% !important;
  aspect-ratio: 1.7;
  overflow: hidden;
  border-radius: 6px;
  object-fit: cover;
}

.articles__importants--single .item-img img, .articles__nonimportants--single .item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.articles__importants--single .item-img.no-img, .articles__nonimportants--single .item-img.no-img {
  width: 100%;
  background-color: #dadada;
  color: #212121;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

.articles__importants--single .article-header, .articles__nonimportants--single .article-header {
  font-size: 1.59375rem;
  font-weight: 600;
}

.articles__importants--single .article-header .thinner, .articles__nonimportants--single .article-header .thinner {
  font-weight: 400;
}

.articles__importants--single .article-header__date, .articles__nonimportants--single .article-header__date {
  width: 100%;
  font-size: 1rem;
}

.articles__importants--single .article-content, .articles__nonimportants--single .article-content {
  font-size: 1.6rem;
}

.articles__importants--single .article-read-more, .articles__nonimportants--single .article-read-more {
  font-size: 1.6rem;
  font-weight: 600;
  display: inline-block;
}

.articles .article-controls {
  display: none;
}

.articles__importants .article-header {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
}

@media screen and (min-width: 1200px) {
  .articles {
    width: 100%;
    max-height: 600px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
  }
  .articles__importants, .articles__nonimportants {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 20px;
    max-width: unset;
  }
  .articles__importants--single, .articles__nonimportants--single {
    max-width: unset;
  }
  .articles__importants {
    border: 1px solid rgba(128, 128, 128, 0.2);
    box-shadow: none;
    border-radius: 6px;
    position: relative;
    width: 50%;
    height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
  }
  .articles__importants--single {
    box-shadow: none;
    border-bottom: none;
  }
  .articles__importants .article-controls {
    position: absolute;
    bottom: 0;
    background-color: var(--white-bg-color);
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
    width: 100%;
    height: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
  }
  .articles__importants .article-controls__dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid grey;
    background-color: var(--white-bg-color);
    transition: 500ms cubic-bezier(0.88, -1.97, 0.3, 1.75);
  }
  .articles__importants .article-controls__dot.active {
    background-color: var(--main-color);
    transform: scale(1.5);
    border: 1px solid rgba(128, 128, 128, 0.34);
  }
  .articles__importants--single {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 50px);
    opacity: 1;
    transition: 250ms;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .articles__importants--single.not-visible {
    opacity: 0;
  }
  .articles__nonimportants {
    width: 50%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 30px;
    height: 100%;
    min-height: unset;
  }
  .articles__nonimportants--single {
    padding: 15px;
    height: 100%;
  }
  .articles__nonimportants--single .article-header {
    font-size: 1rem;
  }
  .articles__nonimportants--single .article-content {
    height: 100px;
  }
  .articles__nonimportants .article-header {
    height: fit-content;
    padding: 0;
  }
}

.articles.no-importants {
  height: unset;
  min-height: unset;
  width: 100%;
}

@media screen and (min-width: 1200px) {
  .articles.no-importants .articles__nonimportants {
    width: 100%;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 1fr;
  }
}

.pr-half .articles {
  width: 100%;
  max-height: 600px;
  display: flex;
  flex-direction: column;
  justify-content: 20px;
  align-items: flex-start;
  gap: 0;
}

.pr-half .articles__importants, .pr-half .articles__nonimportants {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
  max-width: unset;
}

.pr-half .articles__importants--single, .pr-half .articles__nonimportants--single {
  max-width: unset;
}

.pr-half .articles .articles__nonimportants {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 250px 250px;
  gap: 20px;
}

.see-all-articles {
  display: inline-block;
  padding: 15px 25px;
  border-radius: 5px;
  background-color: var(--main-color);
  color: var(--font-color-on-main);
  text-decoration: none;
  font-size: 1.9rem;
  font-weight: 600;
  margin: 0 auto 30px auto;
  transition: 250ms;
}

.see-all-articles:hover {
  color: var(--font-color-on-main);
  transform: scale(1.03);
}

.see-all-articles:active {
  scale: .98;
}

.title-main-page.newsfeed::before {
  content: '\f1ea';
  font-family: 'Font Awesome 5 Free';
  font-weight: 400;
  margin-right: 10px;
}

section.single-art.orneta .contents_controls {
  display: none;
}

section.single-art.orneta .contents-title {
  display: none;
}

.shortcuts.orneta.pill {
  margin-top: 30px;
  clear: both;
  width: 100%;
  background-color: #FFF;
  border-radius: 80px;
  overflow: hidden;
  border: 1px solid transparent;
}

.shortcuts.orneta.pill .title-main-page {
  display: none;
}

.shortcuts.orneta.pill .shortcuts-group {
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}

@media screen and (min-width: 600px) {
  .shortcuts.orneta.pill .shortcuts-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
}

@media screen and (min-width: 750px) {
  .shortcuts.orneta.pill .shortcuts-group {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: normal;
    gap: 0;
  }
}

.shortcuts.orneta.pill .shortcuts-group-item {
  margin: 0;
  color: #fff;
  display: flex;
  flex-direction: row !important;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.shortcuts.orneta.pill .shortcuts-group-item * {
  margin: 0;
  font-family: "Signika Negative", sans-serif;
  color: #fff;
}

.shortcuts.orneta.pill .shortcuts-group-item-link {
  color: black !important;
  width: 100%;
  background-color: transparent !important;
  display: flex;
  flex-direction: row !important;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.shortcuts.orneta.pill .shortcuts-group-item-link span {
  font-size: 0.9375rem;
  color: black !important;
}

.shortcuts.orneta.pill .shortcuts-group-item-link:hover {
  background-image: none;
  background-color: #FFF !important;
  font-weight: 600;
  text-decoration: underline;
}

@media screen and (max-width: 750px) {
  .shortcuts.orneta.pill .shortcuts-group-item {
    width: 100% !important;
  }
  .shortcuts.orneta.pill .shortcuts-group-item-link {
    justify-content: flex-start;
  }
}

@media screen and (max-width: 750px) and (max-width: 600px) {
  .shortcuts.orneta.pill .shortcuts-group-item-link {
    gap: 10px;
    padding: 20px 50px !important;
  }
}

main#main-content > div, main#main-content > section {
  margin-bottom: 30px;
}

.otherBips {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}

.otherBips-wrapper {
  margin-bottom: 30px;
}

.top-front {
  width: 100%;
  padding: 20px 30px;
  background-color: #ffc634;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  align-items: center;
}

@media screen and (min-width: 1000px) {
  .top-front {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

.top-front__links {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  align-items: center;
}

@media screen and (min-width: 660px) {
  .top-front__links {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
}

.top-front__links a {
  padding: 0 17px;
  text-decoration: none !important;
  color: var(--link-color);
  text-align: center;
}

.top-front__links a:hover {
  color: var(--link-color-hover);
  text-decoration: underline !important;
}

@media screen and (min-width: 660px) {
  .top-front__links a {
    text-align: left;
  }
  .top-front__links a:first-child {
    border-right: 1px solid #0055B8;
  }
}

.top-front__actions {
  display: flex;
  gap: 20px;
  justify-content: flex-start;
  align-items: center;
}

.top-front__actions a {
  text-decoration: none !important;
  color: var(--link-color);
  transition: 250ms;
}

.top-front__actions a:hover {
  color: var(--link-color-hover);
  scale: 1.1;
}

.top-front__actions--logout, .top-front__actions--login {
  height: fit-content;
  padding: 7px 15px;
  border-radius: 6px;
  border-radius: 4px;
  color: white !important;
  font-weight: 600;
  transition: 250ms;
  text-decoration: none;
}

.top-front__actions--logout:hover, .top-front__actions--login:hover {
  scale: 1.03;
  color: white !important;
}

.top-front__actions--logout:active, .top-front__actions--login:active {
  scale: .95;
  box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.44);
}

.top-front__actions--login {
  padding: 5px 20px;
  background-color: var(--main-color);
  border: none;
}

.top-front__actions--login:hover {
  background-color: var(--main-color-second);
}

.top-front__actions--logout {
  padding: 5px 20px;
  border: 1px solid #C2372A;
  background-color: #C2372A;
}

.top-front__actions--logout:hover {
  background-color: #be0000;
  scale: 1.03;
  color: white !important;
}

.header-main-top {
  width: 100%;
  padding: 10px 0;
}

.header-main-top .site-title {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  align-items: center;
}

@media screen and (min-width: 1000px) {
  .header-main-top .site-title {
    flex-direction: row;
    justify-content: space-between;
  }
}

@media screen and (min-width: 1100px) {
  .header-main-top .site-title .header-left, .header-main-top .site-title .logo-wrapper {
    width: 25%;
  }
  .header-main-top .site-title h1, .header-main-top .site-title .h1 {
    width: 50%;
  }
}

.header-main-top .site-title .logo-wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
}

.header-main-top .site-title .header-left {
  display: flex;
  margin: 0 !important;
}

.header-main-top .site-title .header-left-toolbar {
  background-color: transparent !important;
}

.header-main-top .site-title .header-left form {
  margin: 0 !important;
  height: 65px;
  border-radius: 30px;
  border: 1px solid grey;
  overflow: hidden;
}

.header-main-top .site-title .header-left form input, .header-main-top .site-title .header-left form button {
  border: none;
}

h1#main-title, #main-title.h1 {
  color: black;
}

.contents-list-news {
  background-color: white;
  color: black;
}

.contents-list-news .content-wrapper {
  padding: 15px;
}

.contents-list-news .content-wrapper h2 a, .contents-list-news .content-wrapper .h2 a {
  text-decoration: none;
  color: #020202;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 28.8px;
}

.contents-list-news .content-wrapper .content {
  padding: 10px 0;
}

.contents .contents-title {
  background-color: white;
}

.contents_controls, .body .contents_controls a {
  color: var(--main-color) !important;
}

.register-site .office-title__text {
  color: #000;
  text-align: center;
  font-family: 'Signika Negative', sans-serif;
  font-size: 2.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.office-register .title-main-page .title-text {
  min-width: fit-content;
}

.office-register .title-main-page .material-symbols-outlined {
  font-size: 36px;
}

.office-register form .mb-3, .office-register form .input-label-field {
  position: relative;
  margin: 0 !important;
}

.office-register form .mb-3 label:not([for="scholar_agreeTerms"]), .office-register form .input-label-field label:not([for="scholar_agreeTerms"]) {
  transition: 250ms;
  position: absolute;
  font-weight: 600;
  font-size: 1rem;
  top: 7px;
  left: 5px;
  max-width: 500px;
}

.office-register form .mb-3 label:not([for="scholar_agreeTerms"]).translated, .office-register form .input-label-field label:not([for="scholar_agreeTerms"]).translated {
  background-color: white;
  padding: 3px;
  text-align: center;
  top: -13px;
  font-size: .8rem;
  color: grey;
}

.office-register form .mb-3 input:not([type="checkbox"]), .office-register form .mb-3 select, .office-register form .input-label-field input:not([type="checkbox"]), .office-register form .input-label-field select {
  border-radius: 6px;
  border: 1px solid #CED4DA;
  width: 100%;
  background: #FFF;
}

.office-register form #scholar_frontUser {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.register-container .title-main-page__rodo {
  font-family: 'Signika Negative', sans-serif;
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: normal;
}

.register-container .rodo-content p {
  text-align: justify;
  font-family: 'Signika Negative', sans-serif;
  font-size: 0.8125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

@media screen and (min-width: 1000px) {
  .register-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    align-items: baseline;
  }
}

.register-form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.register-form__row {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.register-form__row .mb-3 {
  width: 100%;
}

@media screen and (min-width: 600px) {
  .register-form__row {
    flex-direction: row;
  }
}

.register-form .help-text {
  font-size: 0.75rem;
}

.register-form .button-positioner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.register-form .button-positioner button {
  padding: 10px 20px;
  border-radius: 6px;
  background-color: #FFF;
  color: black;
  border: 1px solid white;
  transition: 250ms;
  box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.38);
}

.register-form .button-positioner button:hover {
  transform: scale(1.03);
}

.register-form .button-positioner button:active {
  transform: scale(0.97);
}

.register-form input[type="checkbox"]:checked {
  background-color: red;
}

.banner-item-img {
  position: relative;
}

.banner-item-img .banner-item-container {
  z-index: 100;
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: initial;
}

@media screen and (max-width: 1200px) {
  .banner-item-img .banner-item-container {
    display: none;
  }
}

.banner-item-img .banner-item-container .hero {
  position: relative;
}

.banner-item-img .banner-item-container .hero__img {
  top: -30px;
  position: absolute;
  left: 50%;
  height: 120px;
  transform: translate(-50%, -50%);
  box-shadow: 2px 3px 4px 1px rgba(0, 0, 0, 0.22);
  width: 120px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
}

.banner-item-img .banner-item-container .hero__img img {
  object-fit: contain;
}

.banner-item-img .banner-item-container .hero__text {
  padding: 50px 20px 30px 20px;
  background-color: #fff;
  border-radius: 8px;
  text-align: center;
}

.banner-item-img .banner-item-container .hero__text-text {
  text-align: center;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 600;
  line-height: 2.125rem;
}

.banner-item-img .banner-item-container .hero__text-button {
  background-color: black;
  display: inline-block;
  color: #fff;
  text-align: center;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5rem;
  padding: 7px 15px;
  border-radius: 6px;
}

.banner-item-img .banner-item-container .hero__text-button:hover {
  transform: scale(1.03);
}

.banner-item-img .banner-item-container .hero__text-button:active {
  transform: scale(0.97);
}

.shortcuts .shortcuts-group-item-link {
  background-color: #FFF;
}

.shortcuts .shortcuts-group-item-link:hover {
  background-color: white;
  color: black;
  background-image: none !important;
  text-decoration: underline;
}

.edit-form {
  margin-top: 20px;
}

.edit-form h1, .edit-form .h1 {
  font-size: 1.8rem;
}

.edit-form h2, .edit-form .h2 {
  font-size: 1.4rem;
  margin-top: 20px;
}

.edit-form h3, .edit-form .h3 {
  font-size: 1.2rem;
  font-weight: 700;
}

.edit-form p {
  font-weight: 300;
}

.edit-form__form {
  padding-top: 30px;
}

.edit-form__form .form-field-container {
  padding: 10px 0;
}

.edit-form__form .form-field-container .mb-3:not(fieldset), .edit-form__form .form-field-container .input-label-field {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 15px;
  align-items: center;
}

.edit-form__form .form-field-container .mb-3:not(fieldset) input:not([type="radio"]):not([type="checkbox"]), .edit-form__form .form-field-container .mb-3:not(fieldset) select, .edit-form__form .form-field-container .input-label-field input:not([type="radio"]):not([type="checkbox"]), .edit-form__form .form-field-container .input-label-field select {
  height: 40px;
  width: 100%;
  border-radius: 4px;
}

.edit-form__form .form-field-container .mb-3:not(fieldset) input[type="date"], .edit-form__form .form-field-container .input-label-field input[type="date"] {
  max-width: 250px;
}

.edit-form__form .form-field-container .mb-3:not(fieldset) textarea, .edit-form__form .form-field-container .input-label-field textarea {
  width: 100%;
  grid-column: span 2;
  border-radius: 4px;
}

.edit-form__form .form-field-container .mb-3:not(fieldset) > p, .edit-form__form .form-field-container .input-label-field > p {
  width: 100%;
  grid-column: span 2;
}

.edit-form__form .form-field-container.costs .js-essensialCosts-add,
.edit-form__form .form-field-container.costs .js-promotionalCosts-add,
.edit-form__form .form-field-container.costs .js-administrativeCosts-add {
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border: 1px solid var(--footer-background);
  opacity: .4;
  transition: 250ms;
}

.edit-form__form .form-field-container.costs .js-essensialCosts-add:hover,
.edit-form__form .form-field-container.costs .js-promotionalCosts-add:hover,
.edit-form__form .form-field-container.costs .js-administrativeCosts-add:hover {
  opacity: 1;
}

.edit-form__form .form-field-container.costs .js-essensialCosts-add:hover span.fa,
.edit-form__form .form-field-container.costs .js-promotionalCosts-add:hover span.fa,
.edit-form__form .form-field-container.costs .js-administrativeCosts-add:hover span.fa {
  color: var(--footer-background);
}

.edit-form__form .form-field-container.costs .input-label-field {
  grid-template-columns: 200px 1fr;
  margin: 5px 0;
}

.edit-form__form .form-field-container.costs .input-label-field input, .edit-form__form .form-field-container.costs .input-label-field select, .edit-form__form .form-field-container.costs .input-label-field textarea {
  grid-column: span 1;
}

.edit-form__form .form-field-container.costs .delete-btn {
  font-size: 2.5rem;
  color: #930000;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 25px;
  width: 20px;
  border: 1px solid #930000;
  border-radius: 4px;
  margin: 5px 0 10px 0;
}

.edit-form__form .form-field-container.costs .delete-btn:hover {
  background-color: red;
  color: white;
}

.edit-form__form .form-finals {
  font-weight: 300;
  color: rgba(0, 0, 0, 0.88);
  font-size: .85rem;
}

.edit-form .form-remember {
  padding: 10px 0;
}

.edit-form .positioner-0 {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.edit-form .positioner-0 #e_budget_project_submit {
  padding: 7px 15px;
  border-radius: 4px;
  background-color: black;
  color: white;
  transition: 250ms;
}

.edit-form .positioner-0 #e_budget_project_submit:hover {
  transform: scale(1.03);
}

.edit-form .positioner-0 #e_budget_project_submit:active {
  transform: scale(0.97);
}

.project-list-body__buttons {
  padding: 15px 0;
}

.contents-title {
  padding: 19.5px 30px;
  color: white;
  text-transform: uppercase;
  border-bottom: 1px solid #ced4da;
  font-size: 1.4rem;
  font-weight: bold;
  background-color: #f6f6f6;
  margin-bottom: 0;
}

@media (max-width: 767.98px) {
  .contents-title {
    padding: 19.5px 15px;
  }
}

.metrics-block .table {
  background-color: #f2fbff;
  margin-bottom: 0;
  border-top: none;
}

.metrics-block .table tr:first-of-type {
  border-top: none;
}

.metrics-block .table th {
  font-weight: normal;
  padding: 10px 30px;
}

@media (min-width: 768px) {
  .metrics-block .table th {
    width: 25%;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .metrics-block .table th {
    width: 30%;
    padding: 10px 15px;
  }
}

@media (max-width: 767.98px) {
  .metrics-block .table th {
    width: 30%;
    padding: 10px 15px;
  }
}

@media (max-width: 575.98px) {
  .metrics-block .table th {
    width: 50%;
  }
}

.metrics-block .table td {
  padding: 10px 30px;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .metrics-block .table td {
    padding: 10px 15px;
  }
}

@media (max-width: 767.98px) {
  .metrics-block .table td {
    padding: 10px 15px;
  }
}

.metrics-block .table thead,
.metrics-block .table tbody,
.metrics-block .table tfoot,
.metrics-block .table tr,
.metrics-block .table td,
.metrics-block .table th {
  border-color: #777777;
}

#content_metrics_block .table {
  background-color: #fff3f3;
  margin: 15px;
  width: calc(100% - 30px);
  border-top: 1px solid #777777;
}

@media (min-width: 768px) {
  #content_metrics_block .table {
    margin: 15px 30px;
    width: calc(100% - 60px);
  }
}

.contents_controls {
  background: #12132A;
  padding: 15px;
  display: flex;
  justify-content: space-between;
  color: #fff;
}

@media (min-width: 576px) {
  .contents_controls {
    padding: 15px 30px;
  }
}

@media (max-width: 575.98px) {
  .contents_controls {
    flex-wrap: wrap;
  }
}

.contents_controls button {
  border: none;
  padding: 0;
  background-color: transparent;
}

.contents_controls a, .contents_controls button {
  color: #fff;
  text-decoration: none;
}

.contents_controls a:hover, .contents_controls button:hover {
  color: #fff;
}

.contents_controls_limit #page-limit {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e");
}

.contents_controls_limit #page-limit:focus {
  outline: 2px solid deeppink;
  outline-offset: -4px;
  box-shadow: none;
}

@media (max-width: 575.98px) {
  .contents_controls .left {
    margin-right: 15px;
  }
}

.contents_controls .left a:first-of-type {
  margin-right: 15px;
}

.contents_controls .right a, .contents_controls .right button {
  vertical-align: unset;
}

.contents_controls .right a:last-of-type, .contents_controls .right button:last-of-type {
  margin-left: 15px;
}

@media (max-width: 575.98px) {
  .contents_controls .right a:last-of-type, .contents_controls .right button:last-of-type {
    margin-left: 0;
  }
}

@media (max-width: 575.98px) {
  .contents_controls_limit #page-limit {
    padding: 0.375rem 1.5rem 0.375rem 0.5rem;
    background-position: right 0.25rem center;
  }
}

.contents_controls_limit .page-limit-label {
  white-space: nowrap;
  margin-right: 7px;
}

.contents_controls .pagination .page-number-input {
  max-width: 80px;
  display: inline-block;
}

@media (max-width: 575.98px) {
  .contents_controls .pagination .page-number-input {
    max-width: 70px;
    padding: 0.375rem 0.2rem 0.375rem 0.75rem;
  }
}

.contents_controls .pagination .page-number-info {
  white-space: nowrap;
}

.contents_controls .pagination .page-item {
  padding: 0.375rem 1.2rem;
  background: #fff;
  color: #020202;
  border: 1px solid #ced4da;
}

@media (max-width: 575.98px) {
  .contents_controls .pagination .page-item {
    padding: 0.375rem .8rem;
  }
}

.contents_controls .pagination .page-item a {
  color: #020202;
}

.contents_controls .pagination .page-item a:focus {
  color: #020202;
  outline-color: deeppink;
}

.contents_controls .pagination .page-item .icon {
  padding: 4px 0;
}

@media screen and (max-width: 600px) {
  .contents_controls .left span,
  .contents_controls .right button span {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .exception-img {
    max-width: 200px;
  }
}

.exception .content {
  padding: 30px;
}

@media (max-width: 767.98px) {
  .exception .content {
    padding: 15px;
  }
}

.exception .exception-links {
  margin-top: 30px;
  margin-bottom: 15px;
}

.exception .exception-links-item {
  border: 1px solid #e4e4e4;
  background-color: #f6f6f6;
  margin-bottom: 15px;
  text-align: center;
}

.exception .exception-links-item a {
  text-decoration: none;
  display: block;
  padding: 15px;
  height: 100%;
  width: 100%;
}

.exception .exception-links-item a svg {
  max-width: 100%;
}

.exception .exception-links-item .svg-color {
  stroke: white;
}

@media (min-width: 576px) and (max-width: 767.98px) {
  .exception .exception-links {
    margin-right: -12.5px;
  }
  .exception .exception-links-item {
    width: calc(33.33% - 15px);
    flex: 0 0 calc(33.33% - 15px);
    margin-bottom: 0;
  }
  .exception .exception-links-item a {
    padding: 15px;
  }
  .exception .exception-links-item:not(:last-of-type) {
    margin-right: 25px;
  }
}

@media (min-width: 576px) {
  .exception .exception-links-item {
    margin-bottom: 0;
  }
  .exception .exception-links-item a {
    padding: 30px;
  }
  .exception .exception-links-item:not(:last-of-type) {
    margin-right: 25px;
    width: calc(33.33% - 25px);
    flex: 0 0 calc(33.33% - 25px);
  }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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O0FHdElBO0VEdU1RLGlDQWY2QjtBRjlDckM7O0FFL0ZJO0VDM0NKO0lEOE1RLGlCQTlFNkI7RUZlbkM7QUFDRjs7QUczSUE7RURrTVEsaUNBZjZCO0FGcENyQzs7QUV6R0k7RUN0Q0o7SUR5TVEsZUE5RTZCO0VGeUJuQztBQUNGOztBR2hKQTtFRDZMUSwrQkFmNkI7QUYxQnJDOztBRW5ISTtFQ2pDSjtJRG9NUSxrQkE5RTZCO0VGbUNuQztBQUNGOztBR3JKQTtFRHdMUSxpQ0FmNkI7QUZoQnJDOztBRTdISTtFQzVCSjtJRCtMUSxpQkE5RTZCO0VGNkNuQztBQUNGOztBRzFKQTtFRCtLTSxrQkFuRStCO0FGa0RyQzs7QUd6SkE7RUQwS00sZUFuRStCO0FGc0RyQzs7QUdsSkE7RUFDRSxhQUFhO0VBQ2IsbUJDd1Y4QjtBSm5NaEM7O0FHM0lBO0VBQ0UsaUNBQWlDO0VBQ2pDLFlBQVk7RUFDWiw4QkFBOEI7QUg4SWhDOztBR3hJQTtFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsb0JBQW9CO0FIMkl0Qjs7QUdySUE7O0VBRUUsa0JBQWtCO0FId0lwQjs7QUdySUE7OztFQUdFLGFBQWE7RUFDYixtQkFBbUI7QUh3SXJCOztBR3JJQTs7OztFQUlFLGdCQUFnQjtBSHdJbEI7O0FHcklBO0VBQ0UsZ0JDNmIrQjtBSnJUakM7O0FHbklBO0VBQ0Usb0JBQW9CO0VBQ3BCLGNBQWM7QUhzSWhCOztBR2hJQTtFQUNFLGdCQUFnQjtBSG1JbEI7O0FHM0hBOztFQUVFLG1CQ3Nha0M7QUp4U3BDOztBR3RIQTtFRDZFTSxrQkFuRStCO0FGZ0hyQzs7QUduSEE7RUFDRSxpQkNxZm1DO0VEcGZuQyxnQ0FBd0Q7RUFDeEQsd0NBQTZEO0FIc0gvRDs7QUc3R0E7O0VBRUUsa0JBQWtCO0VEd0RkLGlCQW5FK0I7RUNhbkMsY0FBYztFQUNkLHdCQUF3QjtBSGdIMUI7O0FHN0dBO0VBQU0sY0FBYztBSGlIcEI7O0FHaEhBO0VBQU0sVUFBVTtBSG9IaEI7O0FHL0dBO0VBQ0UsZ0VBQTRHO0VBQzVHLDBCQ2dOaUQ7QUo5Rm5EOztBR3BIQTtFQUtJLG1EQUEyQztBSG1IL0M7O0FHekdBO0VBR0ksY0FBYztFQUNkLHFCQUFxQjtBSDBHekI7O0FHbkdBOzs7O0VBSUUscUNDZ1YyRTtFRmxVdkUsY0FuRStCO0FGNEpyQzs7QUcvRkE7RUFDRSxjQUFjO0VBQ2QsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQixjQUFjO0VERVYsa0JBbkUrQjtBRm9LckM7O0FHdkdBO0VETU0sa0JBbkUrQjtFQ3dFakMsY0FBYztFQUNkLGtCQUFrQjtBSGlHdEI7O0FHN0ZBO0VEVk0sa0JBbkUrQjtFQytFbkMsMkJBQThDO0VBQzlDLHFCQUFxQjtBSGdHdkI7O0FHN0ZFO0VBQ0UsY0FBYztBSGdHbEI7O0FHNUZBO0VBQ0UsMkJDdTVDeUM7RUY3NkNyQyxrQkFuRStCO0VDMkZuQyx3QkN1NUNtRTtFRHQ1Q25FLHNDQ3U1Q3lFO0VDNXJEdkUsZ0JSQ2dCO0FHb1lwQjs7QUdwR0E7RUFRSSxVQUFVO0VEN0JSLGNBbkUrQjtBRmlNckM7O0FHdEZBO0VBQ0UsZ0JBQWdCO0FIeUZsQjs7QUduRkE7O0VBRUUsc0JBQXNCO0FIc0Z4Qjs7QUc5RUE7RUFDRSxvQkFBb0I7RUFDcEIseUJBQXlCO0FIaUYzQjs7QUc5RUE7RUFDRSxtQkM0WGlDO0VEM1hqQyxzQkMyWGlDO0VEMVhqQyxnQ0M0WjZFO0VEM1o3RSxnQkFBZ0I7QUhpRmxCOztBRzFFQTtFQUVFLG1CQUFtQjtFQUNuQixnQ0FBZ0M7QUg0RWxDOztBR3pFQTs7Ozs7O0VBTUUscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixlQUFlO0FINEVqQjs7QUdwRUE7RUFDRSxxQkFBcUI7QUh1RXZCOztBR2pFQTtFQUVFLGdCQUFnQjtBSG1FbEI7O0FHM0RBO0VBQ0UsVUFBVTtBSDhEWjs7QUd6REE7Ozs7O0VBS0UsU0FBUztFQUNULG9CQUFvQjtFRDVIaEIsa0JBbkUrQjtFQ2lNbkMsb0JBQW9CO0FINER0Qjs7QUd4REE7O0VBRUUsb0JBQW9CO0FIMkR0Qjs7QUFFQTtFR3ZERSxlQUFlO0FIeURqQjs7QUd0REE7RUFHRSxpQkFBaUI7QUh1RG5COztBRzFEQTtFQU9JLFVBQVU7QUh1RGQ7O0FBRUE7RUdqREUsd0JBQXdCO0FIbUQxQjs7QUczQ0E7Ozs7RUFJRSwwQkFBMEI7QUg4QzVCOztBR2xEQTs7OztFQVFNLGVBQWU7QUhpRHJCOztBRzFDQTtFQUNFLFVBQVU7RUFDVixrQkFBa0I7QUg2Q3BCOztBR3hDQTtFQUNFLGdCQUFnQjtBSDJDbEI7O0FHakNBO0VBQ0UsWUFBWTtFQUNaLFVBQVU7RUFDVixTQUFTO0VBQ1QsU0FBUztBSG9DWDs7QUc1QkE7RUFDRSxXQUFXO0VBQ1gsV0FBVztFQUNYLFVBQVU7RUFDVixxQkNtTmlDO0VGcGEzQixpQ0FmNkI7RUNtT25DLG9CQUFvQjtBSDhCdEI7O0FFOVlJO0VDeVdKO0lEdE1RLGlCQTlFNkI7RUY4VG5DO0FBQ0Y7O0FHM0NBO0VBVUksV0FBVztBSHFDZjs7QUc5QkE7Ozs7Ozs7RUFPRSxVQUFVO0FIaUNaOztBRzlCQTtFQUNFLFlBQVk7QUhpQ2Q7O0FBRUE7RUd6QkUsNkJBQTZCO0VBQzdCLG9CQUFvQjtBSDJCdEI7O0FHbkJBOzs7Ozs7O0NINEJDO0FHakJEO0VBQ0Usd0JBQXdCO0FIbUIxQjs7QUdkQTtFQUNFLFVBQVU7QUhpQlo7O0FHVkE7RUFDRSxhQUFhO0VBQ2IsMEJBQTBCO0FIYTVCOztBR1JBO0VBQ0UscUJBQXFCO0FIV3ZCOztBR05BO0VBQ0UsU0FBUztBSFNYOztBR0ZBO0VBQ0Usa0JBQWtCO0VBQ2xCLGVBQWU7QUhLakI7O0FHR0E7RUFDRSx3QkFBd0I7QUhBMUI7O0FBRUE7RUdPRSx3QkFBd0I7QUhMMUI7O0FNaGtCQTtFSm1RTSxrQkFuRStCO0VJOUxuQyxnQkZ3b0IrQjtBSnJFakM7O0FNOWpCRTtFSmdRTSxpQ0FmNkI7RUk3T2pDLGdCRnluQnFCO0VFeG5CckIsZ0JGd21CNkI7QUp6Q2pDOztBRWhlSTtFSXBHRjtJSnVRTSxlQTlFNkI7RUZnWm5DO0FBQ0Y7O0FNMWtCRTtFSmdRTSxpQ0FmNkI7RUk3T2pDLGdCRnluQnFCO0VFeG5CckIsZ0JGd21CNkI7QUo3QmpDOztBRTVlSTtFSXBHRjtJSnVRTSxpQkE5RTZCO0VGNFpuQztBQUNGOztBTXRsQkU7RUpnUU0saUNBZjZCO0VJN09qQyxnQkZ5bkJxQjtFRXhuQnJCLGdCRndtQjZCO0FKakJqQzs7QUV4Zkk7RUlwR0Y7SUp1UU0sZUE5RTZCO0VGd2FuQztBQUNGOztBTWxtQkU7RUpnUU0saUNBZjZCO0VJN09qQyxnQkZ5bkJxQjtFRXhuQnJCLGdCRndtQjZCO0FKTGpDOztBRXBnQkk7RUlwR0Y7SUp1UU0saUJBOUU2QjtFRm9ibkM7QUFDRjs7QU05bUJFO0VKZ1FNLGlDQWY2QjtFSTdPakMsZ0JGeW5CcUI7RUV4bkJyQixnQkZ3bUI2QjtBSk9qQzs7QUVoaEJJO0VJcEdGO0lKdVFNLGVBOUU2QjtFRmdjbkM7QUFDRjs7QU0xbkJFO0VKZ1FNLGlDQWY2QjtFSTdPakMsZ0JGeW5CcUI7RUV4bkJyQixnQkZ3bUI2QjtBSm1CakM7O0FFNWhCSTtFSXBHRjtJSnVRTSxpQkE5RTZCO0VGNGNuQztBQUNGOztBTTltQkE7RUN2REUsZUFBZTtFQUNmLGdCQUFnQjtBUHlxQmxCOztBTTltQkE7RUM1REUsZUFBZTtFQUNmLGdCQUFnQjtBUDhxQmxCOztBTWhuQkE7RUFDRSxxQkFBcUI7QU5tbkJ2Qjs7QU1wbkJBO0VBSUksb0JGc29CK0I7QUpsQm5DOztBTTFtQkE7RUo4TU0sa0JBbkUrQjtFSXpJbkMseUJBQXlCO0FONm1CM0I7O0FNem1CQTtFQUNFLG1CRmlVVztFRjFIUCxrQkFuRStCO0FGeWVyQzs7QU05bUJBO0VBS0ksZ0JBQWdCO0FONm1CcEI7O0FNem1CQTtFQUNFLGlCRndUVztFRXZUWCxtQkZ1VFc7RUYxSFAsa0JBbkUrQjtFSXhIbkMsY0Z0RmdCO0FKa3NCbEI7O0FNaG5CQTtFQU9JLHFCQUFxQjtBTjZtQnpCOztBUTdzQkE7RUNJRSxlQUFlO0VBR2YsWUFBWTtBVDJzQmQ7O0FRNXNCQTtFQUNFLGdCSjZqRHdDO0VJNWpEeEMsbUNKNmpEbUU7RUk1akRuRSwyREo4akQ2RTtFQzNqRDNFLHNDRDRqRDZFO0VLcGtE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TThEO0VoQnFEMUQsbUJBbkUrQjtBRjhqRXJDOztBbUJ0eEVBO0VBQ0UsbUJmKzFCNEM7RUZya0J4QyxrQkFuRStCO0VpQm5ObkMsZ0NmKzFCdUY7QUp3N0N6Rjs7QW9CNXhFQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gseUJoQjh3QmtDO0VGdGY5QixlQW5FK0I7RWtCbE5uQyxnQmhCa21CK0I7RWdCam1CL0IsZ0JoQnltQitCO0VnQnhtQi9CLDJCaEI0M0I2RTtFZ0IzM0I3RSxnQkFBZ0I7RUFDaEIsbUNoQnEzQnVFO0VnQnAzQnZFLDRCQUE0QjtFQUM1Qiw0Q3RCVzBCO0VPUnhCLGdCUkttQjtFd0JSakIsd0VqQm81QjRGO0FKNDRDbEc7O0FxQjV4RU07RURoQk47SUNpQlEsZ0JBQWdCO0VyQmd5RXRCO0FBQ0Y7O0FvQmx6RUE7RUFxQkksZ0JBQWdCO0FwQml5RXBCOztBb0J0ekVBO0VBd0JNLGVBQWU7QXBCa3lFckI7O0FvQjF6RUE7RUE4QkksMkJoQnMyQjJFO0VnQnIyQjNFLG1DaEJnMkJxRTtFZ0IvMUJyRSxxQnRCVHdCO0VzQlV4QixVQUFVO0VBS1IsZ0J2QmQyQjtBRzB5RWpDOztBb0JsMEVBO0VBZ0RJLGVBQWU7RUFNZixhQUFtRTtFQUtuRSxTQUFTO0FwQjZ3RWI7O0FvQngwRUE7RUFpRUksY0FBYztFQUNkLFVBQVU7QXBCMndFZDs7QW9CNzBFQTtFQXVFSSxnQ2hCNDBCcUY7RWdCMTBCckYsVUFBVTtBcEJ5d0VkOztBb0JsMUVBO0VBbUZJLHdDaEI4eUIrRTtFZ0IzeUIvRSxVQUFVO0FwQml3RWQ7O0FvQnYxRUE7RUEyRkkseUJoQnNyQmdDO0VnQnJyQmhDLDBCaEJxckJnQztFZ0JwckJoQywwQmhCb3JCZ0M7RWdCbnJCaEMsMkJoQnN5QjJFO0VrQnA0QjdFLHVDbEJxaUN5RTtFZ0JyOEJ2RSxvQkFBb0I7RUFDcEIscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixlQUFlO0VBQ2YsK0NoQmdzQnFFO0VnQi9yQnJFLGdCQUFnQjtFQ3pGZCxxSWpCbzBCNkk7QUpzaERuSjs7QXFCdDFFTTtFRGhCTjtJQ2lCUSxnQkFBZ0I7RXJCMDFFdEI7QUFDRjs7QW9CNTJFQTtFQTBHSSx3Q2hCNDdCeUU7QUowMEM3RTs7QW9CN3ZFQTtFQUNFLGNBQWM7RUFDZCxXQUFXO0VBQ1gsbUJBQTJCO0VBQzNCLGdCQUFnQjtFQUNoQixnQmhCd2YrQjtFZ0J2Zi9CLDJCaEIyeEI2RTtFZ0IxeEI3RSw2QkFBNkI7RUFDN0IseUJBQXlCO0VBQ3pCLHNDQUFtQztBcEJnd0VyQzs7QW9CendFQTtFQVlJLFVBQVU7QXBCaXdFZDs7QW9CN3dFQTtFQWlCSSxnQkFBZ0I7RUFDaEIsZUFBZTtBcEJnd0VuQjs7QW9CcnZFQTtFQUNFLG1FRnFGOEQ7RUVwRjlELHVCaEIyb0JpQztFRmxnQjdCLG1CQW5FK0I7RUd6TWpDLHlDRDIzQnVGO0FKa2dEM0Y7O0FvQjV2RUE7RUFPSSx1QmhCc29CK0I7RWdCcm9CL0Isd0JoQnFvQitCO0VnQnBvQi9CLHlCaEJvb0IrQjtBSnFuRG5DOztBb0JydkVBO0VBQ0UsaUVGd0U4RDtFRXZFOUQsb0JoQmtvQmdDO0VGdGdCNUIsa0JBbkUrQjtFR3pNakMseUNENDNCdUY7QUo4Z0QzRjs7QW9CNXZFQTtFQU9JLG9CaEI2bkI4QjtFZ0I1bkI5QixxQmhCNG5COEI7RWdCM25COUIsdUJoQjJuQjhCO0FKOG5EbEM7O0FvQmx2RUE7RUFFSSxvRUZ1RDREO0FsQjZyRWhFOztBb0J0dkVBO0VBTUksbUVGbUQ0RDtBbEJpc0VoRTs7QW9CMXZFQTtFQVVJLGlFRitDNEQ7QWxCcXNFaEU7O0FvQi91RUE7RUFDRSxXaEJxdUIwQztFZ0JwdUIxQyxnRUZ3QzhEO0VFdkM5RCxpQmhCaWxCbUM7QUppcURyQzs7QW9CcnZFQTtFQU1JLGVBQWU7QXBCbXZFbkI7O0FvQnp2RUE7RUFVSSxvQkFBb0I7RWZ2THBCLGdCUkttQjtBR3M2RXZCOztBb0I5dkVBO0VBZUksb0JBQW9CO0VmNUxwQixnQlJLbUI7QUcyNkV2Qjs7QW9CbndFQTtFQW1Cc0IsK0RGdUIwQztBbEI2dEVoRTs7QW9CdndFQTtFQW9Cc0IsNkRGc0IwQztBbEJpdUVoRTs7QXVCdDhFQTtFQUNFLGdFQUFtRDtFQUVuRCxjQUFjO0VBQ2QsV0FBVztFQUNYLDBDbkIyd0JrQztFRnRmOUIsZUFuRStCO0VxQi9NbkMsZ0JuQitsQitCO0VtQjlsQi9CLGdCbkJzbUIrQjtFbUJybUIvQiwyQm5CeTNCNkU7RW1CeDNCN0UsZ0JBQWdCO0VBQ2hCLG1DbkJrM0J1RTtFbUJqM0J2RSxtRkFBMEk7RUFDMUksNEJBQTRCO0VBQzVCLHlDbkIrOUJxRTtFbUI5OUJyRSwwQm5CKzlCMkM7RW1COTlCM0MsNEN6QkswQjtFT1J4QixnQlJLbUI7RXdCUmpCLHdFakJvNUI0RjtBSjJqRGxHOztBcUIzOEVNO0VFZk47SUZnQlEsZ0JBQWdCO0VyQis4RXRCO0FBQ0Y7O0F1QmgrRUE7RUF1QkkscUJ6QkR3QjtFeUJFeEIsVUFBVTtFQUtSLG1EekJiUztBRXM5RWY7O0F1QnQrRUE7RUFtQ0ksc0JuQjZ1QmdDO0VtQjV1QmhDLHNCQUFzQjtBdkJ1OEUxQjs7QXVCMytFQTtFQXlDSSx3Q25CdTFCK0U7QUorbURuRjs7QXVCLytFQTtFQStDSSxrQkFBa0I7RUFDbEIsdUNuQm0xQjJFO0FKaW5EL0U7O0F1Qmg4RUE7RUFDRSxvQm5Cc3VCa0M7RW1CcnVCbEMsdUJuQnF1QmtDO0VtQnB1QmxDLG9CbkJxdUJpQztFRmxnQjdCLG1CQW5FK0I7RUd6TWpDLHlDRDIzQnVGO0FKbW5EM0Y7O0F1Qmg4RUE7RUFDRSxtQm5Ca3VCaUM7RW1CanVCakMsc0JuQml1QmlDO0VtQmh1QmpDLGtCbkJpdUJnQztFRnRnQjVCLGtCQW5FK0I7RUd6TWpDLHlDRDQzQnVGO0FKMG5EM0Y7O0FBRUE7RXVCLzdFTSxnRUFBbUQ7QXZCaThFekQ7O0F3QnpnRkE7RUFDRSxjQUFjO0VBQ2Qsa0JwQnE2QjJFO0VvQnA2QjNFLG1CcEJxNkJzRTtFb0JwNkJ0RSx1QnBCcTZCK0M7QUp1bURqRDs7QXdCaGhGQTtFQU9JLFdBQVc7RUFDWCxtQkFBMkM7QXhCNmdGL0M7O0F3QnpnRkE7RUFDRSxvQnBCMjVCc0U7RW9CMTVCdEUsZUFBZTtFQUNmLGlCQUFpQjtBeEI0Z0ZuQjs7QXdCL2dGQTtFQU1JLFlBQVk7RUFDWixvQkFBNEM7RUFDNUMsY0FBYztBeEI2Z0ZsQjs7QXdCemdGQTtFQUNFLHFDQUF5QztFQUV6QyxjQUFjO0VBQ2QsVXBCMDRCMkM7RW9CejRCM0MsV3BCeTRCMkM7RW9CeDRCM0Msa0JBQThEO0VBQzlELG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIseUNBQStEO0VBQy9ELCtDQUEyRTtFQUMzRSw0QkFBNEI7RUFDNUIsMkJBQTJCO0VBQzNCLHdCQUF3QjtFQUN4QiwyRHBCMjRCcUk7RW9CMTRCckkseUJBQXlCO0F4QjJnRjNCOztBd0IxaEZBO0VuQlRJLHFCRG02QjJDO0FKb29EL0M7O0F3QjloRkE7RUF3Qkksa0JwQm00QnlDO0FKdW9EN0M7O0F3QmxpRkE7RUE0QkksdUJwQjAzQnFEO0FKZ3BEekQ7O0F3QnRpRkE7RUFnQ0kscUIxQmpDd0I7RTBCa0N4QixVQUFVO0VBQ1YsbUQxQnpDVztBRW1qRmY7O0F3QjVpRkE7RUFzQ0ksdUIxQjdDVztFMEI4Q1gsbUIxQjlDVztBRXdqRmY7O0F3QmpqRkE7RUE2Q1EsaUVBQXFEO0F4QndnRjdEOztBd0JyakZBO0VBcURRLGlFQUFxRDtBeEJvZ0Y3RDs7QXdCempGQTtFQTJESSx1QjFCbEVXO0UwQm1FWCxtQjFCbkVXO0UwQndFVCxpRUFBcUQ7QXhCOC9FM0Q7O0F3Qi9qRkE7RUFzRUksb0JBQW9CO0VBQ3BCLFlBQVk7RUFDWixZcEJrMkJ5QztBSjJwRDdDOztBd0Jya0ZBO0VBZ0ZNLGVBQWU7RUFDZixZcEJ5MUJ1QztBSmdxRDdDOztBd0IzK0VBO0VBQ0UsbUJwQm8xQnlEO0FKMHBEM0Q7O0F3Qi8rRUE7RUFJSSw0REFBMkM7RUFFM0MsVXBCODBCaUM7RW9CNzBCakMsbUJBQTRDO0VBQzVDLDBDQUFpRTtFQUNqRSxnQ0FBZ0M7RW5CakhoQyxrQkQ0N0JpQztFaUIvN0IvQixpRGpCbThCZ0U7QUppcUR0RTs7QXFCaG1GTTtFR3VHTjtJSHRHUSxnQkFBZ0I7RXJCb21GdEI7QUFDRjs7QXdCLy9FQTtFQWNNLDREQUEyQztBeEJxL0VqRDs7QXdCbmdGQTtFQWtCTSxpQ3BCNjBCd0M7RW9CeDBCdEMsNERBQTJDO0F4QmkvRW5EOztBd0J4Z0ZBO0VBNkJJLG9CcEJ3ekJ1RDtFb0J2ekJ2RCxlQUFlO0F4QisrRW5COztBd0I3Z0ZBO0VBaUNNLG9CQUE2QztFQUM3QyxjQUFjO0F4QmcvRXBCOztBd0IzK0VBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCcEJzeUJvQztBSndzRHRDOztBd0IzK0VBO0VBQ0Usa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixvQkFBb0I7QXhCOCtFdEI7O0F3QmovRUE7RUFRTSxvQkFBb0I7RUFDcEIsWUFBWTtFQUNaLGFwQnNwQjJCO0FKdTFEakM7O0FBRUE7RXdCditFTSw0REFBMkM7QXhCeStFakQ7O0F5QjVwRkE7RUFDRSxXQUFXO0VBQ1gsY1ArTjJCO0VPOU4zQixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLDZCQUE2QjtBekIrcEYvQjs7QXlCcHFGQTtFQVFJLFVBQVU7QXpCZ3FGZDs7QXlCeHFGQTtFQVk4QixnQzVCVUc7QUdzcEZqQzs7QXlCNXFGQTtFQWE4QixnQzVCU0c7QUcwcEZqQzs7QXlCaHJGQTtFQWlCSSxTQUFTO0F6Qm1xRmI7O0F5QnByRkE7RUFxQkksV3JCKy9CMkM7RXFCOS9CM0MsWXJCOC9CMkM7RXFCNy9CM0Msb0JBQXNFO0VBQ3RFLGdCQUFnQjtFSDFCbEIsdUJ4QmlCYTtFMkJXWCxTckI2L0J3QztFQzFnQ3hDLG1CRDJnQzJDO0VpQjlnQ3pDLDRHakJvaENrSTtBSmlxRHhJOztBcUJqckZNO0VJZE47SUplUSxnQkFBZ0I7RXJCcXJGdEI7QUFDRjs7QXlCcnNGQTtFSEZFLHVCSjBNbUM7QWxCaWdGckM7O0F5QnpzRkE7RUFxQ0ksV3JCdytCa0M7RXFCditCbEMsY3JCdytCbUM7RXFCditCbkMsa0JBQWtCO0VBQ2xCLGVyQnUrQnFDO0VxQnQrQnJDLHdDckJ1K0J5RTtFcUJ0K0J6RSx5QkFBeUI7RXBCN0J6QixtQkRvZ0NrQztBSmtzRHRDOztBeUJudEZBO0VBZ0RJLFdyQm8rQjJDO0VxQm4rQjNDLFlyQm0rQjJDO0VxQmwrQjNDLGdCQUFnQjtFSHBEbEIsdUJ4QmlCYTtFMkJxQ1gsU3JCbStCd0M7RUMxZ0N4QyxtQkQyZ0MyQztFaUI5Z0N6Qyw0R2pCb2hDa0k7QUorckR4STs7QXFCL3NGTTtFSWROO0lKZVEsZ0JBQWdCO0VyQm10RnRCO0FBQ0Y7O0F5Qm51RkE7RUhGRSx1QkowTW1DO0FsQitoRnJDOztBeUJ2dUZBO0VBK0RJLFdyQjg4QmtDO0VxQjc4QmxDLGNyQjg4Qm1DO0VxQjc4Qm5DLGtCQUFrQjtFQUNsQixlckI2OEJxQztFcUI1OEJyQyx3Q3JCNjhCeUU7RXFCNThCekUseUJBQXlCO0VwQnZEekIsbUJEb2dDa0M7QUpndUR0Qzs7QXlCanZGQTtFQTBFSSxvQkFBb0I7QXpCMnFGeEI7O0F5QnJ2RkE7RUE2RU0sMkNyQmc5QnNGO0FKNHRENUY7O0F5Qnp2RkE7RUFpRk0sMkNyQjQ4QnNGO0FKZ3VENUY7O0EwQm53RkE7RUFDRSxrQkFBa0I7QTFCc3dGcEI7O0EwQnZ3RkE7OztFQU1JLHVEUm9PNEQ7RVFuTzVELDJEUm1PNEQ7RVFsTzVELGlCdEJ1aUN3QztBSmd1RDVDOztBMEIvd0ZBO0VBWUksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsVUFBVTtFQUNWLFlBQVk7RUFDWixxQnRCb3dCZ0M7RXNCbndCaEMsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixnREFBNkM7RUFDN0MscUJBQXFCO0VMUm5CLGdFakJ3aUNvRjtBSnd1RDFGOztBcUI1d0ZNO0VLcEJOO0lMcUJRLGdCQUFnQjtFckJneEZ0QjtBQUNGOztBMEJ0eUZBOztFQThCSSxxQnRCdXZCZ0M7QUpzaEVwQzs7QTBCM3lGQTs7RUFpQ00sa0JBQWtCO0ExQit3RnhCOztBMEJoekZBOzs7RUFzQ00scUJ0QjRnQzBDO0VzQjNnQzFDLHdCdEI0Z0N5QztBSm93RC9DOztBMEJ2ekZBOztFQTJDTSxxQnRCdWdDMEM7RXNCdGdDMUMsd0J0QnVnQ3lDO0FKMHdEL0M7O0EwQjd6RkE7RUFpREkscUJ0QmlnQzRDO0VzQmhnQzVDLHdCdEJpZ0MyQztBSit3RC9DOztBMEJsMEZBOzs7O0VBMERNLDJDQUE2RjtFQUM3Riw4RHRCMi9Ca0Y7QUpveER4Rjs7QTBCMTBGQTs7OztFQThEUSxrQkFBa0I7RUFDbEIsb0JBQStEO0VBQy9ELFdBQVc7RUFDWCxhdEJtL0JxQztFc0JsL0JyQyxXQUFXO0VBQ1gsbUN0QmcwQmlFO0VDaDNCckUsZ0JSS21CO0FHK3pGdkI7O0EwQnYxRkE7RUEyRU0sMkNBQTZGO0VBQzdGLDhEdEIwK0JrRjtBSnN5RHhGOztBMEI1MUZBO0VBa0ZNLHNDQUFtQztBMUI4d0Z6Qzs7QTBCaDJGQTs7RUF3RkksY3RCMUVjO0FKdTFGbEI7O0EwQnIyRkE7O0VBMkZNLHdDdEIweUI2RTtBSnErRG5GOztBMkJ0MkZBO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYixlQUFlO0VBQ2Ysb0JBQW9CO0VBQ3BCLFdBQVc7QTNCeTJGYjs7QTJCOTJGQTs7O0VBVUksa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxTQUFTO0VBQ1QsWUFBWTtBM0IwMkZoQjs7QTJCdjNGQTs7O0VBb0JJLFVBQVU7QTNCeTJGZDs7QTJCNzNGQTtFQTJCSSxrQkFBa0I7RUFDbEIsVUFBVTtBM0JzMkZkOztBMkJsNEZBO0VBK0JNLFVBQVU7QTNCdTJGaEI7O0EyQjUxRkE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHlCdkJvdUJrQztFRnRmOUIsZUFuRStCO0V5QnpLbkMsZ0J2QnlqQitCO0V1QnhqQi9CLGdCdkJna0IrQjtFdUIvakIvQiwyQnZCbTFCNkU7RXVCbDFCN0Usa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQix1Q3ZCMDZCK0U7RXVCejZCL0UsNEM3QjlCMEI7RU9SeEIsZ0JSS21CO0FHaTRGdkI7O0EyQnQxRkE7Ozs7RUFJRSxvQnZCOHRCZ0M7RUZ0Z0I1QixrQkFuRStCO0VHek1qQyx5Q0Q0M0J1RjtBSm1oRTNGOztBMkJ0MUZBOzs7O0VBSUUsdUJ2Qml0QmlDO0VGbGdCN0IsbUJBbkUrQjtFR3pNakMseUNEMjNCdUY7QUo2aEUzRjs7QTJCdDFGQTs7RUFFRSxtQkFBc0U7QTNCeTFGeEU7O0EyQjkwRkE7Ozs7RXRCL0RJLDBCc0JxRThCO0V0QnBFOUIsNkJzQm9FOEI7QTNCZzFGbEM7O0EyQnQxRkE7Ozs7RXRCL0RJLDBCc0I4RThCO0V0QjdFOUIsNkJzQjZFOEI7QTNCKzBGbEM7O0EyQjkxRkE7RUF5QkksOENBQThDO0V0QjFFOUMseUJzQjJFOEI7RXRCMUU5Qiw0QnNCMEU4QjtBM0IwMEZsQzs7QTJCcDJGQTs7RXRCakRJLHlCc0JnRjhCO0V0Qi9FOUIsNEJzQitFOEI7QTNCMjBGbEM7O0EyQmwxRjhEO0VDL0YxRCxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CeEJ1MEIwQztFRnJrQnhDLGtCQW5FK0I7RTBCNUxqQyxpQ3hCb2pDNEQ7QUpnNERoRTs7QTJCMTFGMEM7RUN0RnRDLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJ4QnUxQzRDO0V3QnQxQzVDLGlCQUFpQjtFMUJxUGYsbUJBbkUrQjtFMEIvS2pDLFd4QnlpQ3FCO0V3QnhpQ3JCLG1DeEJ5aUNxRDtFQ3BrQ3JELHNDRDAyQzZFO0FKcW1EakY7O0E0QjU5Rkk7Ozs7RUErQ0UsY0FBYztBNUJvN0ZwQjs7QTRCbitGSTtFQXFERSwrQ3hCOGhDK0U7RXdCM2hDN0Usb0NWNEt3RDtFVTNLeEQseURWd0UwRTtFVXZFMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRVZ3S3dEO0FsQnd3RmhFOztBNEI1K0ZJO0VBZ0VJLCtDeEJtaEM2RTtFd0JsaEM3RSwyRHhCaWhDNEk7QUorNURwSjs7QTRCai9GSTtFQTBFSSxvQ1YwSndEO0VVekp4RCxrRlZ5SndEO0FsQmt4RmhFOztBNEJ0L0ZJO0VBa0ZFLCtDeEJpZ0MrRTtBSnU2RHJGOztBNEIxL0ZJO0VBdUZNLGlFQUFxRDtFQUNyRCx1QnhCMDVCMkY7RXdCejVCM0YsK0R4QjQ0Qm9EO0V3QjM0QnBELDJFVjBJc0Q7QWxCNnhGaEU7O0E0QmpnR0k7RUErRkksK0N4Qm8vQjZFO0V3Qm4vQjdFLDJEeEJrL0I0STtBSm83RHBKOztBNEJ0Z0dJO0VBd0dJLHlDVjRId0Q7QWxCc3lGaEU7O0E0QjFnR0k7RUErR0UsK0N4Qm8rQitFO0FKMjdEckY7O0E0QjlnR0k7RUFrSEksNEN4QjQ5QndEO0FKbzhEaEU7O0E0QmxoR0k7RUFzSEksMkR4QjQ5QjRJO0FKbzhEcEo7O0E0QnRoR0k7RUEwSEksaUN4Qm85QndEO0FKNDhEaEU7O0E0QjU1RkU7RUFFSSxpQkFBaUI7QTVCODVGdkI7O0E0QjloR0k7Ozs7O0VBMElNLFVBQVU7QTVCNDVGcEI7O0EyQmw3RnlHO0VDL0ZyRyxhQUFhO0VBQ2IsV0FBVztFQUNYLG1CeEJ1MEIwQztFRnJrQnhDLGtCQW5FK0I7RTBCNUxqQyxtQ3hCNGpDZ0U7QUp3OURwRTs7QTJCMTdGbUY7RUN0Ri9FLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsVUFBVTtFQUNWLGFBQWE7RUFDYixlQUFlO0VBQ2YsdUJ4QnUxQzRDO0V3QnQxQzVDLGlCQUFpQjtFMUJxUGYsbUJBbkUrQjtFMEIvS2pDLFd4QmlqQ3FCO0V3QmhqQ3JCLGtDeEJpakNtRDtFQzVrQ25ELHNDRDAyQzZFO0FKcXNEakY7O0E0QjVqR0k7Ozs7RUErQ0UsY0FBYztBNUJvaEdwQjs7QTRCbmtHSTtFQXFERSxpRHhCc2lDbUY7RXdCbmlDakYsb0NWNEt3RDtFVTNLeEQsMERWd0UwRTtFVXZFMUUsNEJBQTRCO0VBQzVCLDJEQUE2RDtFQUM3RCxnRVZ3S3dEO0FsQncyRmhFOztBNEI1a0dJO0VBZ0VJLGlEeEIyaENpRjtFd0IxaENqRiwwRHhCeWhDMEk7QUp1L0RsSjs7QTRCamxHSTtFQTBFSSxvQ1YwSndEO0VVekp4RCxrRlZ5SndEO0FsQmszRmhFOztBNEJ0bEdJO0VBa0ZFLGlEeEJ5Z0NtRjtBSisvRHpGOztBNEIxbEdJO0VBdUZNLGtFQUFxRDtFQUNyRCx1QnhCMDVCMkY7RXdCejVCM0YsK0R4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RixpREFBc0Y7QXRDcTJKNUY7O0FzQzMzSkE7RUE0QkksY0FBYztFQUNkLHlDQUEwRTtFQUMxRSwwQ0FBMkU7RUFDM0UsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCw4Q0FBeUU7RUFDekUsNEJBQTRCO0VBQzVCLG1EQUFvRjtFakJsRGxGLG1EaUJtRCtGO0F0Q20ySnJHOztBcUJsNUpNO0VpQldOO0lqQlZRLGdCQUFnQjtFckJzNUp0QjtBQUNGOztBc0M3NEpBO0VBd0NJLFVBQVU7QXRDeTJKZDs7QXNDajVKQTtFQTRDSSxVQUFVO0VBQ1Ysd0RBQWlHO0VBQ2pHLFVBQVU7RUFDVixvREFBMkY7QXRDeTJKL0Y7O0FzQ3IySkE7RUFDRSxnQkFBZ0I7QXRDdzJKbEI7O0FzQ3IySkE7RUFDRSxnQ0FBd0Q7RUFDeEQsd0NBQTZEO0VBQzdELCtFQUE2STtBdEN3MkovSTs7QXNDMzJKQTtFakMxREkseURpQ2dFNEY7RWpDL0Q1RiwwRGlDK0Q0RjtBdEMwMkpoRzs7QXNDaDNKQTtFakMxREksK0RpQ21FMEc7RWpDbEUxRyxnRWlDa0UwRztBdEM0Mko5Rzs7QXNDcjNKQTtFQWNJLGFBQWE7QXRDMjJKakI7O0FzQ3ozSkE7RWpDNUNJLDZEaUMrRCtGO0VqQzlEL0YsNERpQzhEK0Y7QXRDMjJKbkc7O0FzQzkzSkE7RWpDNUNJLG1FaUNtRStHO0VqQ2xFL0csa0VpQ2tFK0c7QXRDNDJKbkg7O0FzQ240SkE7RWpDNUNJLDZEaUN3RWlHO0VqQ3ZFakcsNERpQ3VFaUc7QXRDNDJKckc7O0FzQ3YySkE7RUFDRSw4RUFBZ0o7QXRDMDJKbEo7O0FzQ2wySkE7RUFFSSxlQUFlO0F0Q28ySm5COztBc0N0MkpBO0VBTUksZUFBZTtFQUNmLGNBQWM7RWpDcEhkLGdCaUNxSHdCO0F0Q28ySjVCOztBc0M1MkpBO0VBVW9CLGFBQWE7QXRDczJKakM7O0FzQ2gzSkE7RUFXbUIsZ0JBQWdCO0F0Q3kySm5DOztBc0NwM0pBO0VqQzdHSSxnQmlDNkg0QjtBdEN3MkpoQzs7QUFFQTtFc0NqMkpNLGlFQUFtRDtFQUNuRCx3RUFBaUU7QXRDbTJK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LzNLSTtFaUM4REE7SUFDRSxtQkFBbUI7RTdDcTBLdkI7RTZDdDBLRTtJeENuREEsNkR3Q3dENkc7SXhDcEU3RywwQndDcUVzQztFN0NvMEt4QztFNkMxMEtFO0l4Qy9EQSwyRHdDeUV3RztJeEM3RHhHLDRCd0M4RDJDO0U3Q20wSzdDO0U2QzkwS0U7SUFlTSxhQUFhO0U3Q2swS3JCO0U2Q2oxS0U7SUFtQk0sbURBQW1GO0lBQ25GLG9CQUFvQjtFN0NpMEs1QjtFNkNyMUtFO0lBdUJRLHlEQUF5RjtJQUN6RixvREFBb0Y7RTdDaTBLOUY7QUFDRjs7QVl4NUtJO0VpQzhEQTtJQUNFLG1CQUFtQjtFN0M4MUt2QjtFNkMvMUtFO0l4Q25EQSw2RHdDd0Q2RztJeENwRTdHLDBCd0NxRXNDO0U3QzYxS3hDO0U2Q24yS0U7SXhDL0RBLDJEd0N5RXdHO0l4QzdEeEcsNEJ3QzhEMkM7RTdDNDFLN0M7RTZDdjJLRTtJQWVNLGFBQWE7RTdDMjFLckI7RTZDMTJLRTtJQW1CTSxtREFBbUY7SUFDbkYsb0JBQW9CO0U3QzAxSzVCO0U2QzkyS0U7SUF1QlEseURBQXlGO0lBQ3pGLG9EQUFvRjtFN0MwMUs5RjtBQUNGOztBWWo3S0k7RWlDOERBO0lBQ0UsbUJBQW1CO0U3Q3UzS3ZCO0U2Q3gzS0U7SXhDbkRBLDZEd0N3RDZHO0l4Q3BFN0csMEJ3Q3FFc0M7RTdDczNLeEM7RTZDNTNLRTtJeEMvREEsMkR3Q3lFd0c7SXhDN0R4Ryw0QndDOEQyQztFN0NxM0s3QztFNkNoNEtFO0lBZU0sYUFBYTtFN0NvM0tyQjtFNkNuNEtFO0lBbUJNLG1EQUFtRjtJQUNuRixvQkFBb0I7RTdDbTNLNUI7RTZDdjRLRTtJQXVCUSx5REFBeUY7SUFDekYsb0RBQW9GO0U3Q20zSzlGO0FBQ0Y7O0FZMThLSTtFaUM4REE7SUFDRSxtQkFBbUI7RTdDZzVLdkI7RTZDajVLRTtJeENuREEsNkR3Q3dENkc7SXhDcEU3RywwQndDcUVzQztFN0MrNEt4QztFNkNyNUtFO0l4Qy9EQSwyRHdDeUV3RztJeEM3RHhHLDRCd0M4RDJDO0U3Qzg0SzdDO0U2Q3o1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QU9JLHVCQUErRDtBdkVrc1AzRTs7QXVFenNQUTtFQU9JLHdCQUErRDtBdkVzc1AzRTs7QXVFN3NQUTtFQU9JLHFCQUErRDtBdkUwc1AzRTs7QXVFanRQUTtFQU9JLHlCQUErRDtBdkU4c1AzRTs7QXVFcnRQUTtFQU9JLDJCQUErRDtBdkVrdFAzRTs7QXVFenRQUTtFQU9JLDRCQUErRDtBdkVzdFAzRTs7QXVFN3RQUTtFQU9JLDJCQUErRDtBdkUwdFAzRTs7QXVFanVQUTtFQU9JLDJCQUErRDtBdkU4dFAzRTs7QXVFcnVQUTtFQU9JLDZCQUErRDtBdkVrdVAzRTs7QXVFenVQUTtFQU9JLDhCQUErRDtBdkVzdVAzRTs7QXVFN3VQUTtFQU9JLDZCQUErRDtBdkUwdVAzRTs7QXVFanZQUTtFQU9JLDJCQUErRDtBdkU4dVAzRTs7QXVFcnZQUTtFQU9JLDZCQUErRDtBdkVrdlAzRTs7QXVFenZQUTtFQU9JLDhCQUErRDtBdkVzdlAzRTs7QXVFN3ZQUTtFQU9JLDZCQUErRDtBdkUwdlAzRTs7QXVFandQUTtFQU9JLDBCQUErRDtBdkU4dlAzRTs7QXVFcndQUTtFQU9JLGdDQUErRDtBdkVrd1AzRTs7QXVFendQUTtFQU9JLHlCQUErRDtBdkVzd1AzRTs7QXVFN3dQUTtFQU9JLHdCQUErRDtBdkUwd1AzRTs7QXVFanhQUTtFQU9JLCtCQUErRDtBdkU4d1AzRTs7QXVFcnhQUTtFQU9JLHlCQUErRDtBdkVreFAzRTs7QXVFenhQUTtFQU9JLDZCQUErRDtBdkVzeFAzRTs7QXVFN3hQUTtFQU9JLDhCQUErRDtBdkUweFAzRTs7QXVFanlQUTtFQU9JLHdCQUErRDtBdkU4eFAzRTs7QXVFcnlQUTtFQU9JLCtCQUErRDtBdkVreVAzRTs7QXVFenlQUTtFQU9JLHdCQUErRDtBdkVzeVAzRTs7QXVFN3lQUTtFQU9JLDJDQUErRDtBdkUweVAzRTs7QXVFanpQUTtFQU9JLDhDQUErRDtBdkU4eVAzRTs7QXVFcnpQUTtFQU9JLDhDQUErRDtBdkVrelAzRTs7QXVFenpQUTtFQU9JLDJCQUErRDtBdkVzelAzRTs7QXVFdjBQUTtFQUNFLGdGQUFvQztBdkUwMFA5Qzs7QXVFMzBQUTtFQUNFLGtGQUFvQztBdkU4MFA5Qzs7QXVFLzBQUTtFQUNFLGdGQUFvQztBdkVrMVA5Qzs7QXVFbjFQUTtFQUNFLDZFQUFvQztBdkVzMVA5Qzs7QXVFdjFQUTtFQUNFLGdGQUFvQztBdkUwMVA5Qzs7QXVFMzFQUTtFQUNFLCtFQUFvQztBdkU4MVA5Qzs7QXVFLzFQUTtFQUNFLDhFQUFvQztBdkVrMlA5Qzs7QXVFbjJQUTtFQUNFLDZFQUFvQztBdkVzMlA5Qzs7QXVFNzFQUTtFQU9JLDJCQUErRDtBdkUwMVAzRTs7QXVFajJQUTtFQU9JLDZCQUErRDtBdkU4MVAzRTs7QXVFcjJQUTtFQU9JLDZCQUErRDtBdkVrMlAzRTs7QXVFejJQUTtFQU9JLDBCQUErRDtBdkVzMlAzRTs7QXVFNzJQUTtFQU9JLDJCQUErRDtBdkUwMlAzRTs7QXVFajNQUTtFQU9JLGlCQUErRDtBdkU4MlAzRTs7QXVFcjNQUTtFQU9JLG1CQUErRDtBdkVrM1AzRTs7QXVFejNQUTtFQU9JLG9CQUErRDtBdkVzM1AzRTs7QXVFNzNQUTtFQU9JLG9CQUErRDtBdkUwM1AzRTs7QXVFajRQUTtFQU9JLHNCQUErRDtBdkU4M1AzRTs7QXVFcjRQUTtFQU9JLHVCQUErRDtBdkVrNFAzRTs7QXVFejRQUTtFQU9JLGtCQUErRDtBdkVzNFAzRTs7QXVFNzRQUTtFQU9JLG9CQUErRDtBdkUwNFAzRTs7QXVFajVQUTtFQU9JLHFCQUErRDtBdkU4NFAzRTs7QXVFcjVQUTtFQU9JLG1CQUErRDtBdkVrNVAzRTs7QXVFejVQUTtFQU9JLHFCQUErRDtBdkVzNVAzRTs7QXVFNzVQUTtFQU9JLHNCQUErRDtBdkUwNVAzRTs7QXVFajZQUTtFQU9JLDJDQUErRDtBdkU4NVAzRTs7QXVFcjZQUTtFQU9JLHNDQUErRDtBdkVrNlAzRTs7QXVFejZQUTtFQU9JLHNDQUErRDtBdkVzNlAzRTs7QXVFNzZQUTtFQU9JLHVGQUErRDtBdkUwNlAzRTs7QXVFajdQUTtFQU9JLG9CQUErRDtBdkU4NlAzRTs7QXVFcjdQUTtFQU9JLDJGQUErRDtBdkVrN1AzRTs7QXVFejdQUTtFQU9JLHdCQUErRDtBdkVzN1AzRTs7QXVFNzdQUTtFQU9JLDZGQUErRDtBdkUwN1AzRTs7QXVFajhQUTtFQU9JLDBCQUErRDtBdkU4N1AzRTs7QXVFcjhQUTtFQU9JLDhGQUErRDtBdkVrOFAzRTs7QXVFejhQUTtFQU9JLDJCQUErRDtBdkVzOFAzRTs7QXVFNzhQUTtFQU9JLDRGQUErRDtBdkUwOFAzRTs7QXVFajlQUTtFQU9JLHlCQUErRDtBdkU4OFAzRTs7QXVFcjlQUTtFQUlRLHNCQUE0QjtFQUdoQyw4RUFBK0Q7QXZFbTlQM0U7O0F1RTE5UFE7RUFJUSxzQkFBNEI7RUFHaEMsZ0ZBQStEO0F2RXc5UDNFOztBdUUvOVBRO0VBSVEsc0JBQTRCO0VBR2hDLDhFQUErRDtBdkU2OVAzRTs7QXVFcCtQUTtFQUlRLHNCQUE0QjtFQUdoQywyRUFBK0Q7QXZFaytQM0U7O0F1RXorUFE7RUFJUSxzQkFBNEI7RUFHaEMsOEVBQStEO0F2RXUrUDNFOztBdUU5K1BRO0VBSVEsc0JBQTRCO0VBR2hDLDZFQUErRDtBdkU0K1AzRTs7QXVFbi9QUTtFQUlRLHNCQUE0QjtFQUdoQyw0RUFBK0Q7QXZFaS9QM0U7O0F1RXgvUFE7RUFJUSxzQkFBNEI7RUFHaEMsMkVBQStEO0F2RXMvUDNFOztBdUU3L1BRO0VBSVEsc0JBQTRCO0VBR2hDLDRFQUErRDtBdkUyL1AzRTs7QXVFbGdRUTtFQUlRLHNCQUE0QjtFQUdoQyw0RUFBK0Q7QXZFZ2dRM0U7O0F1RXZnUVE7RUFPSSx3REFBK0Q7QXZFb2dRM0U7O0F1RTNnUVE7RUFPSSwwREFBK0Q7QXZFd2dRM0U7O0F1RS9nUVE7RUFPSSx3REFBK0Q7QXZFNGdRM0U7O0F1RW5oUVE7RUFPSSxxREFBK0Q7QXZFZ2hRM0U7O0F1RXZoUVE7RUFPSSx3REFBK0Q7QXZFb2hRM0U7O0F1RTNoUVE7RUFPSSx1REFBK0Q7QXZFd2hRM0U7O0F1RS9oUVE7RUFPSSxzREFBK0Q7QXZFNGhRM0U7O0F1RW5pUVE7RUFPSSxxREFBK0Q7QXZFZ2lRM0U7O0F1RXZpUVE7RUFPSSw0QkFBK0Q7QXZFb2lRM0U7O0F1RTNpUVE7RUFPSSw0QkFBK0Q7QXZFd2lRM0U7O0F1RS9pUVE7RUFPSSw0QkFBK0Q7QXZFNGlRM0U7O0F1RW5qUVE7RUFPSSw0QkFBK0Q7QXZFZ2pRM0U7O0F1RXZqUVE7RUFPSSw0QkFBK0Q7QXZFb2pRM0U7O0F1RXJrUVE7RUFDRSx3QkFBb0M7QXZFd2tROUM7O0F1RXprUVE7RUFDRSx5QkFBb0M7QXZFNGtROUM7O0F1RTdrUVE7RUFDRSx3QkFBb0M7QXZFZ2xROUM7O0F1RWpsUVE7RUFDRSx5QkFBb0M7QXZFb2xROUM7O0F1RXJsUVE7RUFDRSxzQkFBb0M7QXZFd2xROUM7O0F1RS9rUVE7RUFPSSxxQkFBK0Q7QXZFNGtRM0U7O0F1RW5sUVE7RUFPSSxxQkFBK0Q7QXZFZ2xRM0U7O0F1RXZsUVE7RUFPSSxxQkFBK0Q7QXZFb2xRM0U7O0F1RTNsUVE7RUFPSSxzQkFBK0Q7QXZFd2xRM0U7O0F1RS9sUVE7RUFPSSxzQkFBK0Q7QXZFNGxRM0U7O0F1RW5tUVE7RUFPSSwwQkFBK0Q7QXZFZ21RM0U7O0F1RXZtUVE7RUFPSSx1QkFBK0Q7QXZFb21RM0U7O0F1RTNtUVE7RUFPSSwyQkFBK0Q7QXZFd21RM0U7O0F1RS9tUVE7RUFPSSxzQkFBK0Q7QXZFNG1RM0U7O0F1RW5uUVE7RUFPSSxzQkFBK0Q7QXZFZ25RM0U7O0F1RXZuUVE7RUFPSSxzQkFBK0Q7QXZFb25RM0U7O0F1RTNuUVE7RUFPSSx1QkFBK0Q7QXZFd25RM0U7O0F1RS9uUVE7RUFPSSx1QkFBK0Q7QXZFNG5RM0U7O0F1RW5vUVE7RUFPSSwyQkFBK0Q7QXZFZ29RM0U7O0F1RXZvUVE7RUFPSSx3QkFBK0Q7QXZFb29RM0U7O0F1RTNvUVE7RUFPSSw0QkFBK0Q7QXZFd29RM0U7O0F1RS9vUVE7RUFPSSx5QkFBK0Q7QXZFNG9RM0U7O0F1RW5wUVE7RUFPSSw4QkFBK0Q7QXZFZ3BRM0U7O0F1RXZwUVE7RUFPSSxpQ0FBK0Q7QXZFb3BRM0U7O0F1RTNwUVE7RUFPSSxzQ0FBK0Q7QXZFd3BRM0U7O0F1RS9wUVE7RUFPSSx5Q0FBK0Q7QXZFNHBRM0U7O0F1RW5xUVE7RUFPSSx1QkFBK0Q7QXZFZ3FRM0U7O0F1RXZxUVE7RUFPSSx1QkFBK0Q7QXZFb3FRM0U7O0F1RTNxUVE7RUFPSSx5QkFBK0Q7QXZFd3FRM0U7O0F1RS9xUVE7RUFPSSx5QkFBK0Q7QXZFNHFRM0U7O0F1RW5yUVE7RUFPSSwwQkFBK0Q7QXZFZ3JRM0U7O0F1RXZyUVE7RUFPSSw0QkFBK0Q7QXZFb3JRM0U7O0F1RTNyUVE7RUFPSSxrQ0FBK0Q7QXZFd3JRM0U7O0F1RS9yUVE7RUFPSSxzQ0FBK0Q7QXZFNHJRM0U7O0F1RW5zUVE7RUFPSSxvQ0FBK0Q7QXZFZ3NRM0U7O0F1RXZzUVE7RUFPSSxrQ0FBK0Q7QXZFb3NRM0U7O0F1RTNzUVE7RUFPSSx5Q0FBK0Q7QXZFd3NRM0U7O0F1RS9zUVE7RUFPSSx3Q0FBK0Q7QXZFNHNRM0U7O0F1RW50UVE7RUFPSSx3Q0FBK0Q7QXZFZ3RRM0U7O0F1RXZ0UVE7RUFPSSxrQ0FBK0Q7QXZFb3RRM0U7O0F1RTN0UVE7RUFPSSxnQ0FBK0Q7QXZFd3RRM0U7O0F1RS90UVE7RUFPSSw4QkFBK0Q7QXZFNHRRM0U7O0F1RW51UVE7RUFPSSxnQ0FBK0Q7QXZFZ3VRM0U7O0F1RXZ1UVE7RUFPSSwrQkFBK0Q7QXZFb3VRM0U7O0F1RTN1UVE7RUFPSSxvQ0FBK0Q7QXZFd3VRM0U7O0F1RS91UVE7RUFPSSxrQ0FBK0Q7QXZFNHVRM0U7O0F1RW52UVE7RUFPSSxnQ0FBK0Q7QXZFZ3ZRM0U7O0F1RXZ2UVE7RUFPSSx1Q0FBK0Q7QXZFb3ZRM0U7O0F1RTN2UVE7RUFPSSxzQ0FBK0Q7QXZFd3ZRM0U7O0F1RS92UVE7RUFPSSxpQ0FBK0Q7QXZFNHZRM0U7O0F1RW53UVE7RUFPSSwyQkFBK0Q7QXZFZ3dRM0U7O0F1RXZ3UVE7RUFPSSxpQ0FBK0Q7QXZFb3dRM0U7O0F1RTN3UVE7RUFPSSwrQkFBK0Q7QXZFd3dRM0U7O0F1RS93UVE7RUFPSSw2QkFBK0Q7QXZFNHdRM0U7O0F1RW54UVE7RUFPSSwrQkFBK0Q7QXZFZ3hRM0U7O0F1RXZ4UVE7RUFPSSw4QkFBK0Q7QXZFb3hRM0U7O0F1RTN4UVE7RUFPSSxvQkFBK0Q7QXZFd3hRM0U7O0F1RS94UVE7RUFPSSxtQkFBK0Q7QXZFNHhRM0U7O0F1RW55UVE7RUFPSSxtQkFBK0Q7QXZFZ3lRM0U7O0F1RXZ5UVE7RUFPSSxtQkFBK0Q7QXZFb3lRM0U7O0F1RTN5UVE7RUFPSSxtQkFBK0Q7QXZFd3lRM0U7O0F1RS95UVE7RUFPSSxtQkFBK0Q7QXZFNHlRM0U7O0F1RW56UVE7RUFPSSxtQkFBK0Q7QXZFZ3pRM0U7O0F1RXZ6UVE7RUFPSSxtQkFBK0Q7QXZFb3pRM0U7O0F1RTN6UVE7RUFPSSxvQkFBK0Q7QXZFd3pRM0U7O0F1RS96UVE7RUFPSSwwQkFBK0Q7QXZFNHpRM0U7O0F1RW4wUVE7RUFPSSx5QkFBK0Q7QXZFZzBRM0U7O0F1RXYwUVE7RUFPSSx1QkFBK0Q7QXZFbzBRM0U7O0F1RTMwUVE7RUFPSSx5QkFBK0Q7QXZFdzBRM0U7O0F1RS8wUVE7RUFPSSx1QkFBK0Q7QXZFNDBRM0U7O0F1RW4xUVE7RUFPSSx1QkFBK0Q7QXZFZzFRM0U7O0F1RXYxUVE7RUFPSSwwQkFBK0Q7RUFBL0QseUJBQStEO0F2RXExUTNFOztBdUU1MVFRO0VBT0ksZ0NBQStEO0VBQS9ELCtCQUErRDtBdkUwMVEzRTs7QXVFajJRUTtFQU9JLCtCQUErRDtFQUEvRCw4QkFBK0Q7QXZFKzFRM0U7O0F1RXQyUVE7RUFPSSw2QkFBK0Q7RUFBL0QsNEJBQStEO0F2RW8yUTNFOztBdUUzMlFRO0VBT0ksK0JBQStEO0VBQS9ELDhCQUErRDtBdkV5MlEzRTs7QXVFaDNRUTtFQU9JLDZCQUErRDtFQUEvRCw0QkFBK0Q7QXZFODJRM0U7O0F1RXIzUVE7RUFPSSw2QkFBK0Q7RUFBL0QsNEJBQStEO0F2RW0zUTNFOztBdUUxM1FRO0VBT0ksd0JBQStEO0VBQS9ELDJCQUErRDtBdkV3M1EzRTs7QXVFLzNRUTtFQU9JLDhCQUErRDtFQUEvRCxpQ0FBK0Q7QXZFNjNRM0U7O0F1RXA0UVE7RUFPSSw2QkFBK0Q7RUFBL0QsZ0NBQStEO0F2RWs0UTNFOztBdUV6NFFRO0VBT0ksMkJBQStEO0VBQS9ELDhCQUErRDtBdkV1NFEzRTs7QXVFOTRRUTtFQU9JLDZCQUErRDtFQUEvRCxnQ0FBK0Q7QXZFNDRRM0U7O0F1RW41UVE7RUFPSSwyQkFBK0Q7RUFBL0QsOEJBQStEO0F2RWk1UTNFOztBdUV4NVFRO0VBT0ksMkJBQStEO0VBQS9ELDhCQUErRDtBdkVzNVEzRTs7QXVFNzVRUTtFQU9JLHdCQUErRDtBdkUwNVEzRTs7QXVFajZRUTtFQU9JLDhCQUErRDtBdkU4NVEzRTs7QXVFcjZRUTtFQU9JLDZCQUErRDtBdkVrNlEzRTs7QXVFejZRUTtFQU9JLDJCQUErRDtBdkVzNlEzRTs7QXVFNzZRUTtFQU9JLDZCQUErRDtBdkUwNlEzRTs7QXVFajdRUTtFQU9JLDJCQUErRDtBdkU4NlEzRTs7QXVFcjdRUTtFQU9JLDJCQUErRDtBdkVrN1EzRTs7QXVFejdRUTtFQU9JLDBCQUErRDtBdkVzN1EzRTs7QXVFNzdRUTtFQU9JLGdDQUErRDtBdkUwN1EzRTs7QXVFajhRUTtFQU9JLCtCQUErRDtBdkU4N1EzRTs7QXVFcjhRUTtFQU9JLDZCQUErRDtBdkVrOFEzRTs7QXVFejhRUTtFQU9JLCtCQUErRDtBdkVzOFEzRTs7QXVFNzhRUTtFQU9JLDZCQUErRDtBdkUwOFEzRTs7QXVFajlRUTtFQU9JLDZCQUErRDtBdkU4OFEzRTs7QXVFcjlRUTtFQU9JLDJCQUErRDtBdkVrOVEzRTs7QXVFejlRUTtFQU9JLGlDQUErRDtBdkVzOVEzRTs7QXVFNzlRUTtFQU9JLGdDQUErRDtBdkUwOVEzRTs7QXVFaitRUTtFQU9JLDhCQUErRDtBdkU4OVEzRTs7QXVFcitRUTtFQU9JLGdDQUErRDtBdkVrK1EzRTs7QXVFeitRUTtFQU9JLDhCQUErRDtBdkVzK1EzRTs7QXVFNytRUTtFQU9JLDhCQUErRDtBdkUwK1EzRTs7QXVFai9RUTtFQU9JLHlCQUErRDtBdkU4K1EzRTs7QXVFci9RUTtFQU9JLCtCQUErRDtBdkVrL1EzRTs7QXVFei9RUTtFQU9JLDhCQUErRDtBdkVzL1EzRTs7QXVFNy9RUTtFQU9JLDRCQUErRDtBdkUwL1EzRTs7QXVFamdSUTtFQU9JLDhCQUErRDtBdkU4L1EzRTs7QXVFcmdSUTtFQU9JLDRCQUErRDtBdkVrZ1IzRTs7QXVFemdSUTtFQU9JLDRCQUErRDtBdkVzZ1IzRTs7QXVFN2dSUTtFQU9JLHFCQUErRDtBdkUwZ1IzRTs7QXVFamhSUTtFQU9JLDJCQUErRDtBdkU4Z1IzRTs7QXVFcmhSUTtFQU9JLDBCQUErRDtBdkVraFIzRTs7QXVFemhSUTtFQU9JLHdCQUErRDtBdkVzaFIzRTs7QXVFN2hSUTtFQU9JLDBCQUErRDtBdkUwaFIzRTs7QXVFamlSUTtFQU9JLHdCQUErRDtBdkU4aFIzRTs7QXVFcmlSUTtFQU9JLDJCQUErRDtFQUEvRCwwQkFBK0Q7QXZFbWlSM0U7O0F1RTFpUlE7RUFPSSxpQ0FBK0Q7RUFBL0QsZ0NBQStEO0F2RXdpUjNFOztBdUUvaVJRO0VBT0ksZ0NBQStEO0VBQS9ELCtCQUErRDtBdkU2aVIzRTs7QXVFcGpSUTtFQU9JLDhCQUErRDtFQUEvRCw2QkFBK0Q7QXZFa2pSM0U7O0F1RXpqUlE7RUFPSSxnQ0FBK0Q7RUFBL0QsK0JBQStEO0F2RXVqUjNFOztBdUU5alJRO0VBT0ksOEJBQStEO0VBQS9ELDZCQUErRDtBdkU0alIzRTs7QXVFbmtSUTtFQU9JLHlCQUErRDtFQUEvRCw0QkFBK0Q7QXZFaWtSM0U7O0F1RXhrUlE7RUFPSSwrQkFBK0Q7RUFBL0Qsa0NBQStEO0F2RXNrUjNFOztBdUU3a1JRO0VBT0ksOEJBQStEO0VBQS9ELGlDQUErRDtBdkUya1IzRTs7QXVFbGxSUTtFQU9JLDRCQUErRDtFQUEvRCwrQkFBK0Q7QXZFZ2xSM0U7O0F1RXZsUlE7RUFPSSw4QkFBK0Q7RUFBL0QsaUNBQStEO0F2RXFsUjNFOztBdUU1bFJRO0VBT0ksNEJBQStEO0VBQS9ELCtCQUErRDtBdkUwbFIzRTs7QXVFam1SUTtFQU9JLHlCQUErRDtBdkU4bFIzRTs7QXVFcm1SUTtFQU9JLCtCQUErRDtBdkVrbVIzRTs7QXVFem1SUTtFQU9JLDhCQUErRDtBdkVzbVIzRTs7QXVFN21SUTtFQU9JLDRCQUErRDtBdkUwbVIzRTs7QXVFam5SUTtFQU9JLDhCQUErRDtBdkU4bVIzRTs7QXVFcm5SUTtFQU9JLDRCQUErRDtBdkVrblIzRTs7QXVFem5SUTtFQU9JLDJCQUErRDtBdkVzblIzRTs7QXVFN25SUTtFQU9JLGlDQUErRDtBdkUwblIzRTs7QXVFam9SUTtFQU9JLGdDQUErRDtBdkU4blIzRTs7QXVFcm9SUTtFQU9JLDhCQUErRDtBdkVrb1IzRTs7QXVFem9SUTtFQU9JLGdDQUErRDtBdkVzb1IzRTs7QXVFN29SUTtFQU9JLDhCQUErRDtBdkUwb1IzRTs7QXVFanBSUTtFQU9JLDRCQUErRDtBdkU4b1IzRTs7QXVFcnBSUTtFQU9JLGtDQUErRDtBdkVrcFIzRTs7QXVFenBSUTtFQU9JLGlDQUErRDtBdkVzcFIzRTs7QXVFN3BSUTtFQU9JLCtCQUErRDtBdkUwcFIzRTs7QXVFanFSUTtFQU9JLGlDQUErRDtBdkU4cFIzRTs7QXVFcnFSUTtFQU9JLCtCQUErRDtBdkVrcVIzRTs7QXVFenFSUTtFQU9JLDBCQUErRDtBdkVzcVIzRTs7QXVFN3FSUTtFQU9JLGdDQUErRDtBdkUwcVIzRTs7QXVFanJSUTtFQU9JLCtCQUErRDtBdkU4cVIzRTs7QXVFcnJSUTtFQU9JLDZCQUErRDtBdkVrclIzRTs7QXVFenJSUTtFQU9JLCtCQUErRDtBdkVzclIzRTs7QXVFN3JSUTtFQU9JLDZCQUErRDtBdkUwclIzRTs7QXVFanNSUTtFQU9JLGlCQUErRDtBdkU4clIzRTs7QXVFcnNSUTtFQU9JLHVCQUErRDtBdkVrc1IzRTs7QXVFenNSUTtFQU9JLHNCQUErRDtBdkVzc1IzRTs7QXVFN3NSUTtFQU9JLG9CQUErRDtBdkUwc1IzRTs7QXVFanRSUTtFQU9JLHNCQUErRDtBdkU4c1IzRTs7QXVFcnRSUTtFQU9JLG9CQUErRDtBdkVrdFIzRTs7QXVFenRSUTtFQU9JLHFCQUErRDtBdkVzdFIzRTs7QXVFN3RSUTtFQU9JLDJCQUErRDtBdkUwdFIzRTs7QXVFanVSUTtFQU9JLDBCQUErRDtBdkU4dFIzRTs7QXVFcnVSUTtFQU9JLHdCQUErRDtBdkVrdVIzRTs7QXVFenVSUTtFQU9JLDBCQUErRDtBdkVzdVIzRTs7QXVFN3VSUTtFQU9JLHdCQUErRDtBdkUwdVIzRTs7QXVFanZSUTtFQU9JLHdCQUErRDtBdkU4dVIzRTs7QXVFcnZSUTtFQU9JLDhCQUErRDtBdkVrdlIzRTs7QXVFenZSUTtFQU9JLDZCQUErRDtBdkVzdlIzRTs7QXVFN3ZSUTtFQU9JLDJCQUErRDtBdkUwdlIzRTs7QXVFandSUTtFQU9JLDZCQUErRDtBdkU4dlIzRTs7QXVFcndSUTtFQU9JLDJCQUErRDtBdkVrd1IzRTs7QXVFendSUTtFQU9JLGdEQUErRDtBdkVzd1IzRTs7QXVFN3dSUTtFQU9JLDRDQUErRDtBdkUwd1IzRTs7QXVFanhSUTtFQU9JLDRDQUErRDtBdkU4d1IzRTs7QXVFcnhSUTtFQU9JLDBDQUErRDtBdkVreFIzRTs7QXVFenhSUTtFQU9JLDRDQUErRDtBdkVzeFIzRTs7QXVFN3hSUTtFQU9JLDZCQUErRDtBdkUweFIzRTs7QXVFanlSUTtFQU9JLDBCQUErRDtBdkU4eFIzRTs7QXVFcnlSUTtFQU9JLDZCQUErRDtBdkVreVIzRTs7QXVFenlSUTtFQU9JLDZCQUErRDtBdkVzeVIzRTs7QXVFN3lSUTtFQU9JLCtCQUErRDtBdkUweVIzRTs7QXVFanpSUTtFQU9JLDJCQUErRDtBdkU4eVIzRTs7QXVFcnpSUTtFQU9JLDJCQUErRDtBdkVrelIzRTs7QXVFenpSUTtFQU9JLDJCQUErRDtBdkVzelIzRTs7QXVFN3pSUTtFQU9JLDJCQUErRDtBdkUwelIzRTs7QXVFajBSUTtFQU9JLDJCQUErRDtBdkU4elIzRTs7QXVFcjBSUTtFQU9JLDhCQUErRDtBdkVrMFIzRTs7QXVFejBSUTtFQU9JLHlCQUErRDtBdkVzMFIzRTs7QXVFNzBSUTtFQU9JLDRCQUErRDtBdkUwMFIzRTs7QXVFajFSUTtFQU9JLDJCQUErRDtBdkU4MFIzRTs7QXVFcjFSUTtFQU9JLHlCQUErRDtBdkVrMVIzRTs7QXVFejFSUTtFQU9JLDJCQUErRDtB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MmxUekU7RXVFbG1UTTtJQU9JLHlCQUErRDtFdkU4bFR6RTtFdUVybVRNO0lBT0ksNkJBQStEO0V2RWltVHpFO0V1RXhtVE07SUFPSSw4QkFBK0Q7RXZFb21UekU7RXVFM21UTTtJQU9JLHdCQUErRDtFdkV1bVR6RTtFdUU5bVRNO0lBT0ksK0JBQStEO0V2RTBtVHpFO0V1RWpuVE07SUFPSSx3QkFBK0Q7RXZFNm1UekU7RXVFcG5UTTtJQU9JLHlCQUErRDtFdkVnblR6RTtFdUV2blRNO0lBT0ksOEJBQStEO0V2RW1uVHpFO0V1RTFuVE07SUFPSSxpQ0FBK0Q7RXZFc25UekU7RXVFN25UTTtJQU9JLHNDQUErRDtFdkV5blR6RTtFdUVob1RNO0lBT0kseUNBQStEO0V2RTRuVHpFO0V1RW5vVE07SUFPSSx1QkFBK0Q7RXZFK25UekU7RXVFdG9UTTtJQU9JLHVCQUErRDtFdkVrb1R6RTtFdUV6b1RNO0lBT0kseUJBQStEO0V2RXFvVHpFO0V1RTVvVE07SUFPSSx5QkFBK0Q7RXZFd29UekU7RXVFL29UTTtJQU9JLDBCQUErRDtFdkUyb1R6RTtFdUVscFRNO0lBT0ksNEJBQStEO0V2RThvVHpFO0V1RXJwVE07SUFPSSxrQ0FBK0Q7RXZFaXBUekU7RXVFeHBUTTtJQU9JLHNDQUErRDtFdkVvcFR6RTtFdUUzcFRNO0lBT0ksb0NBQStEO0V2RXVwVHpFO0V1RTlwVE07SUFPSSxrQ0FBK0Q7RXZFMHBUekU7RXVFanFUTTtJQU9JLHlDQUErRDtFdkU2cFR6RTtFdUVwcVRNO0lBT0ksd0NBQStEO0V2RWdxVHpFO0V1RXZxVE07SUFPSSx3Q0FBK0Q7RXZFbXFUekU7RXVFMXFUTTtJQU9JLGtDQUErRDtFdkVzcVR6RTtFdUU3cVRNO0lBT0ksZ0NBQStEO0V2RXlxVHpFO0V1RWhyVE07SUFPSSw4QkFBK0Q7RXZFNHFUekU7RXVFbnJUTTtJQU9JLGdDQUErRDtFdkUrcVR6RTtFdUV0clRNO0lBT0ksK0JBQStEO0V2RWtyVHpFO0V1RXpyVE07SUFPSSxvQ0FBK0Q7RXZFcXJUekU7RXVFNXJUTTtJQU9JLGtDQUErRDtFdkV3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QU9JLG9CQUErRDtFdkVxaVV6RTtFdUU1aVVNO0lBT0ksc0JBQStEO0V2RXdpVXpFO0V1RS9pVU07SUFPSSxvQkFBK0Q7RXZFMmlVekU7RXVFbGpVTTtJQU9JLHFCQUErRDtFdkU4aVV6RTtFdUVyalVNO0lBT0ksMkJBQStEO0V2RWlqVXpFO0V1RXhqVU07SUFPSSwwQkFBK0Q7RXZFb2pVekU7RXVFM2pVTTtJQU9JLHdCQUErRDtFdkV1alV6RTtFdUU5alVNO0lBT0ksMEJBQStEO0V2RTBqVXpFO0V1RWprVU07SUFPSSx3QkFBK0Q7RXZFNmpVekU7RXVFcGtVTTtJQU9JLHdCQUErRDtFdkVna1V6RTtFdUV2a1VNO0lBT0ksOEJBQStEO0V2RW1rVXpFO0V1RTFrVU07SUFPSSw2QkFBK0Q7RXZFc2tVekU7RXVFN2tVTTtJQU9JLDJCQUErRDtFdkV5a1V6RTtFdUVobFVNO0lBT0ksNkJBQStEO0V2RTRrVXpFO0V1RW5sVU07SUFPSSwyQkFBK0Q7RXZFK2tVekU7RXVFdGxVTTtJQU9JLDJCQUErRDtFdkVrbFV6RTtFdUV6bFVNO0lBT0ksNEJBQStEO0V2RXFsVXpFO0V1RTVsVU07SUFPSSw2QkFBK0Q7RXZFd2xVekU7QUFDRjs7QVlubVVJO0UyREdJO0lBT0ksc0JBQStEO0V2RThsVXpFO0V1RXJtVU07SUFPSSx1QkFBK0Q7RXZFaW1VekU7RXVFeG1VTTtJQU9JLHNCQUErRDtFdkVvbVV6RTtFdUUzbVVNO0lBT0ksOEJBQStEO0V2RXVtVXpFO0V1RTltVU07SUFPSSw0QkFBK0Q7RXZFMG1VekU7RXVFam5VTTtJQU9JLDJCQUErRDtFdkU2bVV6RTtFdUVwblVNO0lBT0ksaUNBQStEO0V2RWduVXpFO0V1RXZuVU07SUFPSSwyQkFBK0Q7RXZFbW5VekU7RXVFMW5VTTtJQU9JLDBCQUErRDtFdkVzblV6RTtFdUU3blVNO0lBT0ksZ0NBQStEO0V2RXluVXpFO0V1RWhvVU07SUFPSSx5QkFBK0Q7RXZFNG5VekU7RXVFbm9VTTtJQU9JLHdCQUErRDtFdkUrblV6RTtFdUV0b1VNO0lBT0ksK0JBQStEO0V2RWtvVXpFO0V1RXpvVU07SUFPSSx5QkFBK0Q7RXZFcW9VekU7RXVFNW9VTTtJQU9JLDZCQUErRDtFdkV3b1V6RTtFdUUvb1VNO0lBT0ksOEJBQStEO0V2RTJvVXpFO0V1RWxwVU07SUFPSSx3QkFBK0Q7RXZFOG9VekU7RXVFcnBVTTtJQU9JLCtCQUErRDtFdkVpcFV6RTtFdUV4cFVNO0lBT0ksd0JBQStEO0V2RW9wVXpFO0V1RTNwVU07SUFPSSx5QkFBK0Q7RXZFdXBVekU7RXVFOXBVTTtJQU9JLDhCQUErRDtFdkUwcFV6RTtFdUVqcVVNO0lBT0ksaUNBQStEO0V2RTZwVXpFO0V1RXBxVU07SUFPSSxzQ0FBK0Q7RXZFZ3FVekU7RXVFdnFVTTtJQU9JLHlDQUErRDtFdkVtcVV6RTtFdUUxcVVNO0lBT0ksdUJBQStEO0V2RXNxVXpFO0V1RTdxVU07SUFPSSx1QkFBK0Q7RXZFeXFVekU7RXVFaHJVTTtJQU9JLHlCQUErRDtFdkU0cVV6RTtFdUVuclVNO0lBT0kseUJBQStEO0V2RStxVXpFO0V1RXRyVU07SUFPSSwwQkFBK0Q7RXZFa3JVekU7RXVFenJVTTtJQU9JLDRCQUErRDtFdkVxclV6RTtFdUU1clVNO0lBT0ksa0NBQStEO0V2RXdyVXpFO0V1RS9yVU07SUFPSSxzQ0FBK0Q7RXZFMnJVekU7RXVFbHNVTTtJQU9JLG9DQUErRDtFdkU4clV6RTtFdUVyc1VNO0lBT0ksa0NBQStEO0V2RWlzVXpFO0V1RXhzVU07SUFPSSx5Q0FBK0Q7RXZFb3NVekU7RXVFM3NVTTtJQU9JLHdDQUErRDtFdkV1c1V6RTtFdUU5c1VNO0lBT0ksd0NBQStEO0V2RTBzVXpFO0V1RWp0VU07SUFPSSxrQ0FBK0Q7RXZFNnNVekU7RXVFcHRVTTtJQU9JLGdDQUErRDtFdkVndFV6RTtFdUV2dFVNO0lBT0ksOEJBQStEO0V2RW10VXpFO0V1RTF0VU07SUFPSSxnQ0FBK0Q7RXZFc3RVekU7RXVFN3RVTTtJQU9JLCtCQUErRDtFdkV5dFV6RTtFdUVodVVNO0lBT0ksb0NBQStEO0V2RTR0VXpFO0V1RW51VU07SUFPSSxrQ0FBK0Q7RXZFK3RVekU7RXVFdHVVTTtJQU9JLGdDQUErRDtFdkVrdVV6RTtFdUV6dVVNO0lBT0ksdUNBQStEO0V2RXF1VXpFO0V1RTV1VU07SUFPSSxzQ0FBK0Q7RXZFd3VVekU7RXVFL3VVTTtJQU9JLGlDQUErRDtFdkUydVV6RTtFdUVsdlVNO0lBT0ksMkJBQStEO0V2RTh1VXpFO0V1RXJ2VU07SUFPSSxpQ0FBK0Q7RXZFaXZVekU7RXVFeHZVTTtJQU9JLCtCQUErRDtFdkVvdlV6RTtFdUUzdlVNO0lBT0ksNkJBQStEO0V2RXV2VXpFO0V1RTl2VU07SUFPSSwrQkFBK0Q7RXZFMHZVekU7RXVFandVTTtJQU9JLDhCQUErRDtFdkU2dlV6RTtFdUVwd1VNO0lBT0ksb0JBQStEO0V2RWd3VXpFO0V1RXZ3VU07SUFPSSxtQkFBK0Q7RXZFbXdVekU7RXVFMXdVTTtJQU9JLG1CQUErRDtFdkVzd1V6RTtFdUU3d1VNO0lBT0ksbUJBQStEO0V2RXl3VXpFO0V1RWh4VU07SUFPSSxtQkFBK0Q7RXZFNHdVekU7RXVFbnhVTTtJQU9JLG1CQUErRDtFdkUrd1V6RTtFdUV0eFVNO0lBT0ksbUJBQStEO0V2RWt4VXpFO0V1RXp4VU07SUFPSSxtQkFBK0Q7RXZFcXhVekU7RXVFNXhVTTtJQU9JLG9CQUErRDtFdkV3eFV6RTtFdUUveFVNO0lBT0ksMEJBQStEO0V2RTJ4VXpFO0V1RWx5VU07SUFPSSx5QkFBK0Q7RXZFOHhVekU7RXVFcnlVTTtJQU9JLHVCQUErRDtFdkVpeVV6RTtFdUV4eVVNO0lBT0kseUJBQStEO0V2RW95VXpFO0V1RTN5VU07SUFPSSx1QkFBK0Q7RXZFdXlVekU7RXVFOXlVTTtJQU9JLHVCQUErRDtFdkUweVV6RTtFdUVqelVNO0lBT0ksMEJBQStEO0lBQS9ELHlCQUErRDtFdkU4eVV6RTtFdUVyelVNO0lBT0ksZ0NBQStEO0lBQS9ELCtCQUErRDtFdkVrelV6RTtFdUV6elVNO0lBT0ksK0JBQStEO0lBQS9ELDhCQUErRDtFdkVzelV6RTtFdUU3elVNO0lBT0ksNkJBQStEO0lBQS9ELDRCQUErRDtFdkUwelV6RTtFdUVqMFVNO0lBT0ksK0JBQStEO0lBQS9ELDhCQUErRDtFdkU4elV6RTtFdUVyMFVNO0lBT0ksNkJBQStEO0lBQS9ELDRCQUErRDtFdkVrMFV6RTtFdUV6MFVNO0lBT0ksNkJBQStEO0lBQS9ELDRCQUErRDtFdkVzMFV6RTtFdUU3MFVNO0lBT0ksd0JBQStEO0lBQS9ELDJCQUErRDtFdkUwMFV6RTtFdUVqMVVNO0lBT0ksOEJBQStEO0lBQS9ELGlDQUErRDtFdkU4MFV6RTtFdUVyMVVNO0lBT0ksNkJBQStEO0lBQS9ELGdDQUErRDtFdkVrMVV6RTtFdUV6MVVNO0lBT0ksMkJBQStEO0lBQS9ELDhCQUErRDtFdkVzMVV6RTtFdUU3MVVNO0lBT0ksNkJBQStEO0lBQS9ELGdDQUErRDtFdkUwMVV6RTtFdUVqMlVNO0lBT0ksMkJBQStEO0lBQS9ELDhCQUErRDtFdkU4MVV6RTtFdUVyMlVNO0lBT0ksMkJBQStEO0lBQS9ELDhCQUErRDtFdkVrMlV6RTtFdUV6MlVNO0lBT0ksd0JBQStEO0V2RXEyVXpFO0V1RTUyVU07SUFPSSw4QkFBK0Q7RXZFdzJVekU7RXVFLzJVTTtJQU9JLDZCQUErRDtFdkUyMlV6RTtFdUVsM1VNO0lBT0ksMkJBQStEO0V2RTgyVXpFO0V1RXIzVU07SUFPSSw2QkFBK0Q7RXZFaTNVekU7RXVFeDNVTTtJQU9JLDJCQUErRDtFdkVvM1V6RTtFdUUzM1VNO0lBT0ksMkJBQStEO0V2RXUzVXpFO0V1RTkzVU07SUFPSSwwQkFBK0Q7RXZFMDNVekU7RXVFajRVTTtJQU9JLGdDQUErRDtFdkU2M1V6RTtFdUVwNFVNO0lBT0ksK0JBQStEO0V2RWc0VXpFO0V1RXY0VU07SUFPSSw2QkFBK0Q7RXZFbTRVekU7RXVFMTRVTTtJQU9JLCtCQUErRDtFdkVzNFV6RTtFdUU3NFVNO0lBT0ksNkJBQStEO0V2RXk0VXpFO0V1RWg1VU07SUFPSSw2QkFBK0Q7RXZFNDRVekU7RXVFbjVVTTtJQU9JLDJCQUErRDtFdkUrNFV6RTtFdUV0NVVNO0lBT0ksaUNBQStEO0V2RWs1VXpFO0V1RXo1VU07SUFPSSxnQ0FBK0Q7RXZFcTVVekU7RXVFNTVVTTtJQU9JLDhCQUErRDtFdkV3NVV6RTtFdUUvNVVNO0lBT0ksZ0NBQStEO0V2RTI1VXpFO0V1RWw2VU07SUFPSSw4QkFBK0Q7RXZFODVVekU7RXVFcjZVTTtJQU9JLDhCQUErRDtFdkVpNlV6RTtFdUV4NlVNO0lBT0kseUJBQStEO0V2RW82VXpFO0V1RTM2VU07SUFPSSwrQkFBK0Q7RXZFdTZVekU7RXVFOTZVTTtJQU9JLDhCQUErRDtFdkUwNlV6RTtFdUVqN1VNO0lBT0ksNEJBQStEO0V2RTY2VXpFO0V1RXA3VU07SUFPSSw4QkFBK0Q7RXZFZzdVekU7RXVFdjdVTTtJQU9JLDRCQUErRDtFdkVtN1V6RTtFdUUxN1VNO0lBT0ksNEJBQStEO0V2RXM3VXpFO0V1RTc3VU07SUFPSSxxQkFBK0Q7RXZFeTdVekU7RXVFaDhVTTtJQU9JLDJCQUErRDtFdkU0N1V6RTtFdUVuOFVNO0lBT0ksMEJBQStEO0V2RSs3VXpFO0V1RXQ4VU07SUFPSSx3QkFBK0Q7RXZFazhVekU7RXVFejhVTTtJQU9JLDBCQUErRDtFdkVxOFV6RTtFdUU1OFVNO0lBT0ksd0JBQStEO0V2RXc4VXpFO0V1RS84VU07SUFPSSwyQkFBK0Q7SUFBL0QsMEJBQStEO0V2RTQ4VXpFO0V1RW45VU07SUFPSSxpQ0FBK0Q7SUFBL0QsZ0NBQStEO0V2RWc5VXpFO0V1RXY5VU07SUFPSSxnQ0FBK0Q7SUFBL0QsK0JBQStEO0V2RW85VXpFO0V1RTM5VU07SUFPSSw4QkFBK0Q7SUFBL0QsNkJBQStEO0V2RXc5VXpFO0V1RS85VU07SUFPSSxnQ0FBK0Q7SUFBL0QsK0JBQStEO0V2RTQ5VXpFO0V1RW4rVU07SUFPSSw4QkFBK0Q7SUFBL0QsNkJBQStEO0V2RWcrVXpFO0V1RXYrVU07SUFPSSx5QkFBK0Q7SUFBL0QsNEJBQStEO0V2RW8rVXpFO0V1RTMrVU07SUFPSSwrQkFBK0Q7SUFBL0Qsa0NBQStEO0V2RXcrVXpFO0V1RS8rVU07SUFPSSw4QkFBK0Q7SUFBL0QsaUNBQStEO0V2RTQrVXpFO0V1RW4vVU07SUFPSSw0QkFBK0Q7SUFBL0QsK0JBQStEO0V2RWcvVXpFO0V1RXYvVU07SUFPSSw4QkFBK0Q7SUFBL0QsaUNBQStEO0V2RW8vVXpFO0V1RTMvVU07SUFPSSw0QkFBK0Q7SUFBL0QsK0JBQStEO0V2RXcvVXpFO0V1RS8vVU07SUFPSSx5QkFBK0Q7RXZFMi9VekU7RXVFbGdWTTtJQU9JLCtCQUErRDtFdkU4L1V6RTtFdUVyZ1ZNO0lBT0ksOEJBQStEO0V2RWlnVnpFO0V1RXhnVk07SUFPSSw0QkFBK0Q7RXZFb2dWekU7RXVFM2dWTTtJQU9JLDhCQUErRDtFdkV1Z1Z6RTtFdUU5Z1ZNO0lBT0ksNEJBQStEO0V2RTBnVnpFO0V1RWpoVk07SUFPSSwyQkFBK0Q7RXZFNmdWekU7RXVFcGhWTTtJQU9JLGlDQUErRDtFdkVnaFZ6RTtFdUV2aFZNO0lBT0ksZ0NBQStEO0V2RW1oVnpFO0V1RTFoVk07SUFPSSw4QkFBK0Q7RXZFc2hWekU7RXVFN2hWTTtJQU9JLGdDQUErRDtFdkV5aFZ6RTtFdUVoaVZNO0lBT0ksOEJBQStEO0V2RTRoVnpFO0V1RW5pVk07SUFPSSw0QkFBK0Q7RXZFK2hWekU7RXVFdGlWTTtJQU9JLGtDQUErRDtFdkVraVZ6RTtFdUV6aVZNO0lBT0ksaUNBQStEO0V2RXFpVnpFO0V1RTVpVk07SUFPSSwrQkFBK0Q7RXZFd2lWekU7RXVFL2lWTTtJQU9JLGlDQUErRDtFdkUyaVZ6RTtFdUVsalZNO0lBT0ksK0JBQStEO0V2RThpVnpFO0V1RXJqVk07SUFPSSwwQkFBK0Q7RXZFaWpWekU7RXVFeGpWTTtJQU9JLGdDQUErRDtFdkVvalZ6RTtFdUUzalZNO0lBT0ksK0JBQStEO0V2RXVqVnpFO0V1RTlqVk07SUFPSSw2QkFBK0Q7RXZFMGpWekU7RXVFamtWTTtJQU9JLCtCQUErRDtFdkU2alZ6RTtFdUVwa1ZNO0lBT0ksNkJBQStEO0V2RWdrVnpFO0V1RXZrVk07SUFPSSxpQkFBK0Q7RXZFbWtWekU7RXVFMWtWTTtJQU9JLHVCQUErRDtFdkVza1Z6RTtFdUU3a1ZNO0lBT0ksc0JBQStEO0V2RXlrVnpFO0V1RWhsVk07SUFPSSxvQkFBK0Q7RXZFNGtWekU7RXVFbmxWTTtJQU9JLHNCQUErRDtFdkUra1Z6RTtFdUV0bFZNO0lBT0ksb0JBQStEO0V2RWtsVnpFO0V1RXpsVk07SUFPSSxxQkFBK0Q7RXZFcWxWekU7RXVFNWxWTTtJQU9JLDJCQUErRDtFdkV3bFZ6RTtFdUUvbFZNO0lBT0ksMEJBQStEO0V2RTJsVnpFO0V1RWxtVk07SUFPSSx3QkFBK0Q7RXZFOGxWekU7RXVFcm1WTTtJQU9JLDBCQUErRDtFdkVpbVZ6RTtFdUV4bVZNO0lBT0ksd0JBQStEO0V2RW9tVnpFO0V1RTNtVk07SUFPSSx3QkFBK0Q7RXZFdW1WekU7RXVFOW1WTTtJQU9JLDhCQUErRDtFdkUwbVZ6RTtFdUVqblZNO0lBT0ksNkJBQStEO0V2RTZtVnpFO0V1RXBuVk07SUFPSSwyQkFBK0Q7RXZFZ25WekU7RXVFdm5WTTtJQU9JLDZCQUErRDtFdkVtblZ6RTtFdUUxblZNO0lBT0ksMkJBQStEO0V2RXNuVnpFO0V1RTduVk07SUFPSSwyQkFBK0Q7RXZFeW5WekU7RXVFaG9WTTtJQU9JLDRCQUErRDtFdkU0blZ6RTtFdUVub1ZNO0lBT0ksNkJBQStEO0V2RStuVnpFO0FBQ0Y7O0FZMW9WSTtFMkRHSTtJQU9JLHNCQUErRDtFdkVxb1Z6RTtFdUU1b1ZNO0lBT0ksdUJBQStEO0V2RXdvVnpFO0V1RS9vVk07SUFPSSxzQkFBK0Q7RXZFMm9WekU7RXVFbHBWTTtJQU9JLDhCQUErRDtFdkU4b1Z6RTtFdUVycFZNO0lBT0ksNEJBQStEO0V2RWlwVnpFO0V1RXhwVk07SUFPSSwyQkFBK0Q7RXZFb3BWekU7RXVFM3BWTTtJQU9JLGlDQUErRDtFdkV1cFZ6RTtFdUU5cFZNO0lBT0ksMkJBQStEO0V2RTBwVnpFO0V1RWpxVk07SUFPSSwwQkFBK0Q7RXZFNnBWekU7RXVFcHFWTTtJQU9JLGdDQUErRDtFdkVncVZ6RTtFdUV2cVZNO0lBT0kseUJBQStEO0V2RW1xVnpFO0V1RTFxVk07SUFPSSx3QkFBK0Q7RXZFc3FWekU7RXVFN3FWTTtJQU9JLCtCQUErRDtFdkV5cVZ6RTtFdUVoclZNO0lBT0kseUJBQStEO0V2RTRxVnpFO0V1RW5yVk07SUFPSSw2QkFBK0Q7RXZFK3FWekU7RXVFdHJWTTtJQU9JLDhCQUErRDtFdkVrclZ6RTtFdUV6clZNO0lBT0ksd0JBQStEO0V2RXFyVnpFO0V1RTVyVk07SUFPSSwrQkFBK0Q7RXZFd3JWekU7RXVFL3JWTTtJQU9JLHdCQUErRDtFdkUyclZ6RTtFdUVsc1ZNO0lBT0kseUJBQStEO0V2RThyVnpFO0V1RXJzVk07SUFPSSw4QkFBK0Q7RXZFaXNWekU7RXVFeHNWTTtJQU9JLGlDQUErRDtFdkVvc1Z6RTtFdUUzc1ZNO0lBT0ksc0NBQStEO0V2RXVzVnpFO0V1RTlzVk07SUFPSSx5Q0FBK0Q7RXZFMHNWekU7RXVFanRWTTtJQU9JLHVCQUErRDtFdkU2c1Z6RTtFdUVwdFZNO0lBT0ksdUJBQStEO0V2RWd0VnpFO0V1RXZ0Vk07SUFPSSx5QkFBK0Q7RXZFbXRWekU7RXVFMXRWTTtJQU9JLHlCQUErRDtFdkVzdFZ6RTtFdUU3dFZNO0lBT0ksMEJBQStEO0V2RXl0VnpFO0V1RWh1Vk07SUFPSSw0QkFBK0Q7RXZFNHRWekU7RXVFbnVWTTtJQU9JLGtDQUErRDtFdkUrdFZ6RTtFdUV0dVZNO0lBT0ksc0NBQStEO0V2RWt1VnpFO0V1RXp1Vk07SUFPSSxvQ0FBK0Q7RXZFcXVWekU7RXVFNXVWTTtJQU9JLGtDQUErRDtFdkV3dVZ6RTtFdUUvdVZNO0lBT0kseUNBQStEO0V2RTJ1VnpFO0V1RWx2Vk07SUFPSSx3Q0FBK0Q7RXZFOHVWekU7RXVFcnZWTTtJQU9JLHdDQUErRDtFdkVpdlZ6RTtFdUV4dlZNO0lBT0ksa0NBQStEO0V2RW92VnpFO0V1RTN2Vk07SUFPSSxnQ0FBK0Q7RXZFdXZWekU7RXVFOXZWTTtJQU9JLDhCQUErRDtFdkUwdlZ6RTtFdUVqd1ZNO0lBT0ksZ0NBQStEO0V2RTZ2VnpFO0V1RXB3Vk07SUFPSSwrQkFBK0Q7RXZFZ3dWekU7RXVFdndWTTtJQU9JLG9DQUErRDtFdkVtd1Z6RTtFdUUxd1ZNO0lBT0ksa0NBQStEO0V2RXN3VnpFO0V1RTd3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O0V2RW1uV3pFO0V1RTFuV007SUFPSSxzQkFBK0Q7RXZFc25XekU7RXVFN25XTTtJQU9JLG9CQUErRDtFdkV5bld6RTtFdUVob1dNO0lBT0kscUJBQStEO0V2RTRuV3pFO0V1RW5vV007SUFPSSwyQkFBK0Q7RXZFK25XekU7RXVFdG9XTTtJQU9JLDBCQUErRDtFdkVrb1d6RTtFdUV6b1dNO0lBT0ksd0JBQStEO0V2RXFvV3pFO0V1RTVvV007SUFPSSwwQkFBK0Q7RXZFd29XekU7RXVFL29XTTtJQU9JLHdCQUErRDtFdkUyb1d6RTtFdUVscFdNO0lBT0ksd0JBQStEO0V2RThvV3pFO0V1RXJwV007SUFPSSw4QkFBK0Q7RXZFaXBXekU7RXVFeHBXTTtJQU9JLDZCQUErRDtFdkVvcFd6RTtFdUUzcFdNO0lBT0ksMkJBQStEO0V2RXVwV3pFO0V1RTlwV007SUFPSSw2QkFBK0Q7RXZFMHBXekU7RXVFanFXTTtJQU9JLDJCQUErRDtFdkU2cFd6RTtFdUVwcVdNO0lBT0ksMkJBQStEO0V2RWdxV3pFO0V1RXZxV007SUFPSSw0QkFBK0Q7RXZFbXFXekU7RXVFMXFXTTtJQU9JLDZCQUErRDtFdkVzcVd6RTtBQUNGOztBWWpyV0k7RTJER0k7SUFPSSxzQkFBK0Q7RXZFNHFXekU7RXVFbnJXTTtJQU9JLHVCQUErRDtFdkUrcVd6RTtFdUV0cldNO0lBT0ksc0JBQStEO0V2RWtyV3pFO0V1RXpyV007SUFPSSw4QkFBK0Q7RXZFcXJXekU7RXVFNXJXTTtJQU9JLDRCQUErRDtFdkV3cld6RTtFdUUvcldNO0lBT0ksMkJBQStEO0V2RTJyV3pFO0V1RWxzV007SUFPSSxpQ0FBK0Q7RXZFOHJXekU7RXVFcnNXTTtJQU9JLDJCQUErRDtFdkVpc1d6RTtFdUV4c1dNO0lBT0ksMEJBQStEO0V2RW9zV3pFO0V1RTNzV007SUFPSSxnQ0FBK0Q7RXZFdXNXekU7RXVFOXNXTTtJQU9JLHlCQUErRDtFdkUwc1d6RTtFdUVqdFdNO0lBT0ksd0JBQStEO0V2RTZzV3pFO0V1RXB0V007SUFPSSwrQkFBK0Q7RXZFZ3RXekU7RXVFdnRXTTtJQU9JLHlCQUErRDtFdkVtdFd6RTtFdUUxdFdNO0lBT0ksNkJBQStEO0V2RXN0V3pFO0V1RTd0V007SUFPSSw4QkFBK0Q7RXZFeXRXekU7RXVFaHVXTTtJQU9JLHdCQUErRDtFdkU0dFd6RTtFdUVudVdNO0lBT0ksK0JBQStEO0V2RSt0V3pFO0V1RXR1V007SUFPSSx3QkFBK0Q7RXZFa3VXekU7RXVFenVXTTtJQU9JLHlCQUErRDtFdkVxdVd6RTtFdUU1dVdNO0lBT0ksOEJBQStEO0V2RXd1V3pFO0V1RS91V007SUFPSSxpQ0FBK0Q7RXZFMnVXekU7RXVFbHZXTTtJQU9JLHNDQUErRDtFdkU4dVd6RTtFdUVydldNO0lBT0kseUNBQStEO0V2RWl2V3pFO0V1RXh2V007SUFPSSx1QkFBK0Q7RXZFb3ZXekU7RXVFM3ZXTTtJQU9JLHVCQUErRDtFdkV1dld6RTtFdUU5dldNO0lBT0kseUJBQStEO0V2RTB2V3pFO0V1RWp3V007SUFPSSx5QkFBK0Q7RXZFNnZXekU7RXVFcHdXTTtJQU9JLDBCQUErRDtFdkVnd1d6RTtFdUV2d1dNO0lBT0ksNEJBQStEO0V2RW13V3pFO0V1RTF3V007SUFPSSxrQ0FBK0Q7RXZFc3dXekU7RXVFN3dXTTtJQU9JLHNDQUErRDtFdkV5d1d6RTtFdUVoeFdNO0lBT0ksb0NBQStEO0V2RTR3V3pFO0V1RW54V007SUFPSSxrQ0FBK0Q7RXZFK3dXekU7RXVFdHhXTTtJQU9JLHlDQUErRDtFdkVreFd6RTtFdUV6eFdNO0lBT0ksd0NBQStEO0V2RXF4V3pFO0V1RTV4V007SUFPSSx3Q0FBK0Q7RXZFd3hXekU7RXVFL3hXTTtJQU9JLGtDQUErRDtFdkUyeFd6RTtFdUVseVdNO0lBT0ksZ0NBQStEO0V2RTh4V3pFO0V1RXJ5V007SUFPSSw4QkFBK0Q7RXZFaXlXekU7RXVFeHlXTTtJQU9JLGdDQUErRDtFdkVveVd6RTtFdUUzeVdNO0lBT0ksK0JBQStEO0V2RXV5V3pFO0V1RTl5V007SUFPSSxvQ0FBK0Q7RXZFMHlXekU7RXVFanpXTTtJQU9JLGtDQUErRDtFdkU2eVd6RTtFdUVweldNO0lB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cFh6RTtFdUVqcVhNO0lBT0ksc0JBQStEO0V2RTZwWHpFO0V1RXBxWE07SUFPSSxvQkFBK0Q7RXZFZ3FYekU7RXVFdnFYTTtJQU9JLHFCQUErRDtFdkVtcVh6RTtFdUUxcVhNO0lBT0ksMkJBQStEO0V2RXNxWHpFO0V1RTdxWE07SUFPSSwwQkFBK0Q7RXZFeXFYekU7RXVFaHJYTTtJQU9JLHdCQUErRDtFdkU0cVh6RTtFdUVuclhNO0lBT0ksMEJBQStEO0V2RStxWHpFO0V1RXRyWE07SUFPSSx3QkFBK0Q7RXZFa3JYekU7RXVFenJYTTtJQU9JLHdCQUErRDtFdkVxclh6RTtFdUU1clhNO0lBT0ksOEJBQStEO0V2RXdyWHpFO0V1RS9yWE07SUFPSSw2QkFBK0Q7RXZFMnJYekU7RXVFbHNYTTtJQU9JLDJCQUErRDtFdkU4clh6RTtFdUVyc1hNO0lBT0ksNkJBQStEO0V2RWlzWHpFO0V1RXhzWE07SUFPSSwyQkFBK0Q7RXZFb3NYekU7RXVFM3NYTTtJQU9JLDJCQUErRDtFdkV1c1h6RTtFdUU5c1hNO0lBT0ksNEJBQStEO0V2RTBzWHpFO0V1RWp0WE07SUFPSSw2QkFBK0Q7RXZFNnNYekU7QUFDRjs7QVl4dFhJO0UyREdJO0lBT0ksc0JBQStEO0V2RW10WHpFO0V1RTF0WE07SUFPSSx1QkFBK0Q7RXZFc3RYekU7RXVFN3RYTTtJQU9JLHNCQUErRDtFdkV5dFh6RTtFdUVodVhNO0lBT0ksOEJBQStEO0V2RTR0WHpFO0V1RW51WE07SUFPSSw0QkFBK0Q7RXZFK3RYekU7RXVFdHVYTTtJQU9JLDJCQUErRDtFdkVrdVh6RTtFdUV6dVhNO0lBT0ksaUNBQStEO0V2RXF1WHpFO0V1RTV1WE07SUFPSSwyQkFBK0Q7RXZFd3VYekU7RXVFL3VYTTtJQU9JLDBCQUErRDtFdkUydVh6RTtFdUVsdlhNO0lBT0ksZ0NBQStEO0V2RTh1WHpFO0V1RXJ2WE07SUFPSSx5QkFBK0Q7RXZFaXZYekU7RXVFeHZYTTtJQU9JLHdCQUErRDtFdkVvdlh6RTtFdUUzdlhNO0lBT0ksK0JBQStEO0V2RXV2WHpFO0V1RTl2WE07SUFPSSx5QkFBK0Q7RXZFMHZYekU7RXVFandYTTtJQU9JLDZCQUErRDtFdkU2dlh6RTtFdUVwd1hNO0lBT0ksOEJBQStEO0V2RWd3WHpFO0V1RXZ3WE07SUFPSSx3QkFBK0Q7RXZFbXdYekU7RXVFMXdYTTtJQU9JLCtCQUErRDtFdkVzd1h6RTtFdUU3d1hNO0lBT0ksd0JBQStEO0V2RXl3WHpFO0V1RWh4WE07SUFPSSx5QkFBK0Q7RXZFNHdYekU7RXVFbnhYTTtJQU9JLDhCQUErRDtFdkUrd1h6RTtFdUV0eFhNO0lBT0ksaUNBQStEO0V2RWt4WHpFO0V1RXp4WE07SUFPSSxzQ0FBK0Q7RXZFcXhYekU7RXVFNXhYTTtJQU9JLHlDQUErRDtFdkV3eFh6RTtFdUUveFhNO0lBT0ksdUJBQStEO0V2RTJ4WHpFO0V1RWx5WE07SUFPSSx1QkFBK0Q7RXZFOHhYekU7RXVFcnlYTTtJQU9JLHlCQUErRDtFdkVpeVh6RTtFdUV4eVhNO0lBT0kseUJBQStEO0V2RW95WHpFO0V1RTN5WE07SUFPSSwwQkFBK0Q7RXZFdXlYekU7RXVFOXlYTTtJQU9JLDRCQUErRDtFdkUweVh6RTtFdUVqelhNO0lBT0ksa0NBQStEO0V2RTZ5WHpFO0V1RXB6WE07SUFPSSxzQ0FBK0Q7RXZFZ3pYekU7RXVFdnpYTTtJQU9JLG9DQUErRDtFdkVtelh6RTtFdUUxelhNO0lBT0ksa0NBQStEO0V2RXN6WHpFO0V1RTd6WE07SUFPSSx5Q0FBK0Q7RXZFeXpYekU7RXVFaDBYTTtJQU9JLHdDQUErRDtFdkU0elh6RTtFdUVuMFhNO0lBT0ksd0NBQStEO0V2RSt6WHpFO0V1RXQwWE07SUFPSSxrQ0FBK0Q7RXZFazBYekU7RXVFejBYTTtJQU9JLGdDQUErRDtFdkVxMFh6RTtFdUU1MFhNO0lBT0ksOEJBQStEO0V2RXcwWHpFO0V1RS8wWE07SUFPSSxnQ0FBK0Q7RXZFMjBYekU7RXVFbDFYTTtJQU9JLCtCQUErRDtFdkU4MFh6RTtFdUVyMVhNO0lBT0ksb0NBQStEO0V2RWkxWHpFO0V1RXgxWE07SUFPSSxrQ0FBK0Q7RXZFbzFYekU7RXVFMzFYTTtJQU9JLGdD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O0V2RWl5WXpFO0V1RXh5WU07SUFPSSw2QkFBK0Q7RXZFb3lZekU7RXVFM3lZTTtJQU9JLDhCQUErRDtFdkV1eVl6RTtFdUU5eVlNO0lBT0ksd0JBQStEO0V2RTB5WXpFO0V1RWp6WU07SUFPSSwrQkFBK0Q7RXZFNnlZekU7RXVFcHpZTTtJQU9JLHdCQUErRDtFdkVnell6RTtFdUV2ellNO0lBT0kseUJBQStEO0V2RW16WXpFO0V1RTF6WU07SUFPSSw4QkFBK0Q7RXZFc3pZekU7RXVFN3pZTTtJQU9JLGlDQUErRDtFdkV5ell6RTtFdUVoMFlNO0lBT0ksc0NBQStEO0V2RTR6WXpFO0V1RW4wWU07SUFPSSx5Q0FBK0Q7RXZFK3pZekU7RXVFdDBZTTtJQU9JLHVCQUErRDtFdkVrMFl6RTtFdUV6MFlNO0lBT0ksdUJBQStEO0V2RXEwWXpFO0V1RTUwWU07SUFPSSx5QkFBK0Q7RXZFdzBZekU7RXVFLzBZTTtJQU9JLHlCQUErRDtFdkUyMFl6RTtFdUVsMVlNO0lBT0ksMEJBQStEO0V2RTgwWXpFO0V1RXIxWU07SUFPSSw0QkFBK0Q7RXZFaTFZekU7RXVFeDFZTTtJQU9JLGtDQUErRDtFdkVvMVl6RTtFdUUzMVlNO0lBT0ksc0NBQStEO0V2RXUxWXpFO0V1RTkxWU07SUFPSSxvQ0FBK0Q7RXZFMDFZekU7RXVFajJZTTtJQU9JLGtDQUErRDtFdkU2MVl6RTtFdUVwMllNO0lBT0kseUNBQStEO0V2RWcyWXpFO0V1RXYyWU07SUFPSSx3Q0FBK0Q7RXZFbTJZekU7RXVFMTJZTTtJQU9JLHdDQUErRDtFdkVzMll6RTtFdUU3MllNO0lBT0ksa0NBQStEO0V2RXkyWXpFO0V1RWgzWU07SUFPSSxnQ0FBK0Q7RXZFNDJZekU7RXVFbjNZTTtJQU9JLDhCQUErRDtFdkUrMll6RTtFdUV0M1lNO0lBT0ksZ0NBQStEO0V2RWszWXpFO0V1RXozWU07SUFPSSwrQkFBK0Q7RXZFcTNZekU7RXVFNTNZTTtJQU9JLG9DQUErRDtFdkV3M1l6RTtFdUUvM1lNO0lBT0ksa0NBQStEO0V2RTIzWXpFO0V1RWw0WU07SUFPSSxnQ0FBK0Q7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Wk07SUFPSSxzQkFBK0Q7RXZFMnVaekU7RXVFbHZaTTtJQU9JLG9CQUErRDtFdkU4dVp6RTtFdUVydlpNO0lBT0kscUJBQStEO0V2RWl2WnpFO0V1RXh2Wk07SUFPSSwyQkFBK0Q7RXZFb3ZaekU7RXVFM3ZaTTtJQU9JLDBCQUErRDtFdkV1dlp6RTtFdUU5dlpNO0lBT0ksd0JBQStEO0V2RTB2WnpFO0V1RWp3Wk07SUFPSSwwQkFBK0Q7RXZFNnZaekU7RXVFcHdaTTtJQU9JLHdCQUErRDtFdkVnd1p6RTtFdUV2d1pNO0lBT0ksd0JBQStEO0V2RW13WnpFO0V1RTF3Wk07SUFPSSw4QkFBK0Q7RXZFc3daekU7RXVFN3daTTtJQU9JLDZCQUErRDtFdkV5d1p6RTtFdUVoeFpNO0lBT0ksMkJBQStEO0V2RTR3WnpFO0V1RW54Wk07SUFPSSw2QkFBK0Q7RXZFK3daekU7RXVFdHhaTTtJQU9JLDJCQUErRDtFdkVreFp6RTtFdUV6eFpNO0lBT0ksMkJBQStEO0V2RXF4WnpFO0V1RTV4Wk07SUFPSSw0QkFBK0Q7RXZFd3haekU7RXVFL3haTTtJQU9JLDZCQUErRDtFdkUyeFp6RTtBQUNGOztBd0VsMVpBO0VEK0NRO0lBT0ksNEJBQStEO0V2RWl5WnpFO0V1RXh5Wk07SUFPSSwwQkFBK0Q7RXZFb3laekU7RXVFM3laTTtJQU9JLDZCQUErRDtFdkV1eVp6RTtFdUU5eVpNO0lBT0ksNEJBQStEO0V2RTB5WnpFO0FBQ0Y7O0F3RTkwWkE7RUQ0QlE7SUFPSSwwQkFBK0Q7RXZFZ3paekU7RXVFdnpaTTtJQU9JLGdDQUErRDtFdkVtelp6RTtFdUUxelpNO0lBT0kseUJBQStEO0V2RXN6WnpFO0V1RTd6Wk07SUFPSSx3QkFBK0Q7RXZFeXpaekU7RXVFaDBaTTtJQU9JLCtCQUErRDtFdkU0elp6RTtFdUVuMFpNO0lBT0kseUJBQStEO0V2RSt6WnpFO0V1RXQwWk07SUFPSSw2QkFBK0Q7RXZFazBaekU7RXVFejBaTTtJQU9JLDhCQUErRDtFdkVxMFp6RTtFdUU1MFpNO0lBT0ksd0JBQStEO0V2RXcwWnpFO0V1RS8wWk07SUFP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MkNRLGtCQUFrQjtFM0ZrK2dCeEI7QUFDRjs7QTJGOWdoQkE7RUFpRFEsa0JBQWtCO0EzRmkrZ0IxQjs7QTJGbGhoQkE7RUF5RE0scUJBQXFCO0EzRjY5Z0IzQjs7QTJGdGhoQkE7RUE0RFEsaUJBQWlCO0EzRjg5Z0J6Qjs7QVloOWdCSTtFK0UxRUo7SUErRFksY0FBYztFM0ZnK2dCeEI7QUFDRjs7QVl0OWdCSTtFK0U5Q0Q7SUE4Q0ssd0NBQXdDO0lBQ3hDLHlDQUF5QztFM0YyOWdCL0M7QUFDRjs7QTJGaCtnQkc7RUFTRyxtQkFBbUI7RUFDbkIsaUJBQWlCO0EzRjI5Z0J2Qjs7QTJGNWloQkE7RUF1Rk0sZUFBZTtFQUNmLHFCQUFxQjtBM0Z5OWdCM0I7O0FZditnQkk7RStFMUVKO0lBMEZRLGVBQWU7SUFDZix5Q0FBeUM7RTNGNDlnQi9DO0FBQ0Y7O0EyRnhqaEJBO0VBZ0dNLG1CQUFtQjtBM0Y0OWdCekI7O0EyRjVqaEJBO0VBb0dNLHdCQUF3QjtFQUN4QixnQjdGaEZNO0U2RmlGTixjN0ZwRmM7RTZGcUZkLHlCN0Y5RXNCO0FFMGloQjVCOztBWXovZ0JJO0UrRTFFSjtJQXlHUSx1QkFBdUI7RTNGKzlnQjdCO0FBQ0Y7O0EyRnpraEJBO0VBNkdRLGM3RjNGWTtBRTJqaEJwQjs7QTJGN2toQkE7RUFnSFUsYzdGOUZVO0U2RitGVix1QjdGeENvQjtBRXlnaEI5Qjs7QTJGbGxoQkE7RUFzSFEsY0FBYztBM0ZnK2dCdEI7O0EyRjE5Z0JBO0VBQ0U7O0lBRUUsYUFBYTtFM0Y2OWdCZjtBQUNGOztBWW5oaEJJO0VnRnZFRjtJQUVJLGdCQUFnQjtFNUY2bGhCcEI7QUFDRjs7QTRGam1oQkE7RUFPSSxhQUFhO0E1RjhsaEJqQjs7QVk3aGhCSTtFZ0Z4RUo7SUFTTSxhQUFhO0U1RmltaEJqQjtBQUNGOztBNEYzbWhCQTtFQWFJLGdCQUFnQjtFQUNoQixtQkFBbUI7QTVGa21oQnZCOztBNEZobmhCQTtFQWdCTSx5QjlGTVk7RThGTFoseUI5RkdZO0U4RkZaLG1CQUFtQjtFQUNuQixrQkFBa0I7QTVGb21oQnhCOztBNEZ2bmhCQTtFQXFCUSxxQkFBcUI7RUFDckIsY0FBYztFQUNkLGFBQWE7RUFDYixZQUFZO0VBQ1osV0FBVztBNUZzbWhCbkI7O0E0Ri9uaEJBO0VBMkJVLGVBQWU7QTVGd21oQnpCOztBNEZub2hCQTtFQStCUSxhOUZkTztBRXNuaEJmOztBWWhqaEJJO0VnRnZGSjtJQW1DTSxxQkFBcUI7RTVGeW1oQnpCO0U0RjVvaEJGO0lBcUNRLDBCQUEwQjtJQUMxQiw2QkFBNkI7SUFDN0IsZ0JBQWdCO0U1RjBtaEJ0QjtFNEZqcGhCRjtJQXlDVSxhQUFhO0U1RjJtaEJyQjtFNEZwcGhCRjtJQTRDVSxrQkFBa0I7RTVGMm1oQjFCO0FBQ0Y7O0FZN2xoQkk7RWdGM0RKO0lBa0RRLGdCQUFnQjtFNUYybWhCdEI7RTRGN3BoQkY7SUFvRFUsYUFBYTtFNUY0bWhCckI7RTRGaHFoQkY7SUF1RFUsa0JBQWtCO0lBQ2xCLDBCQUEwQjtJQUMxQiw2QkFBNkI7RTVGNG1oQnJDO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L1ZhcmlhYmxlcy9fYnNfdmFycy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvVmFyaWFibGVzL25vcm1hbF90aGVtZV9jb2xvcnMvX25vcm1hbF9jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L3BhZ2VzL2V4Y2VwdGlvbi9leGNlcHRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZnVuY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY29udHJvbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mbG9hdGluZy1sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZHJvcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BsYWNlaG9sZGVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvci1iZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9faWNvbi1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0YWNrcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdGV4dC10cnVuY2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvX21haW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbXBvbmVudHMvYmFubmVycy9fYmFubmVycy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29udGFpbmVycy9oZWFkZXIvX3NraXBsaW5rcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29tcG9uZW50cy9iYW5uZXJzL19tYWluQmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9Vc2VyLW5ldy9jb250YWluZXJzL2hlYWRlci9faG9yaXpvbnRhbF9uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbnRhaW5lcnMvaGVhZGVyL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbnRhaW5lcnMvaGVhZGVyL19hY2Nlc3NpYmlsaXR5X3BhbmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9Vc2VyLW5ldy9jb250YWluZXJzL2hlYWRlci9fc3dpdGNoZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbnRhaW5lcnMvZm9vdGVyL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbnRhaW5lcnMvX2N1c3RvbUNvbnRhaW5lcnNCcmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29udGFpbmVycy9tYWluL19hc2lkZS5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29udGFpbmVycy9tYWluL19jb250ZW50X3NlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbXBvbmVudHMvX21pZGRsZV9uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL1VzZXItbmV3L2NvbXBvbmVudHMvX3RpdGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9Vc2VyLW5ldy9jb250YWluZXJzL2JyZWFkY3J1bWJzL19icmVhZGNydW1icy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29tcG9uZW50cy9fbWV0cmljcy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvY29udGFpbmVycy9tYWluL19jb250ZW50X2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvVXNlci1uZXcvcGFnZXMvZXhjZXB0aW9uL19leGNlcHRpb24uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIkZm9udC1mYW1pbHk6ICdTaWduaWthIE5lZ2F0aXZlJywgc2Fucy1zZXJpZjtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgICAgICAgeHM6IDAsXG4gICAgICAgIHNtOiA1NzZweCxcbiAgICAgICAgbWQ6IDc2OHB4LFxuICAgICAgICBsZzogOTkycHgsXG4gICAgICAgIHhsOiAxMjAwcHgsXG4gICAgICAgIHh4bDogMTUzNnB4LFxuICAgICAgICB4eHhsOiAxNjYwcHgsXG4pO1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gICAgICAgIHNtOiA1NDBweCxcbiAgICAgICAgbWQ6IDcyMHB4LFxuICAgICAgICBsZzogOTYwcHgsXG4gICAgICAgIHhsOiA5NSUsXG4gICAgICAgIHh4bDogMTQ3NnB4LFxuICAgICAgICB4eHhsOiAxNjIwcHhcbik7XG4kYm9yZGVyLXJhZGl1czogMDtcbiRib3JkZXItcmFkaXVzLXNtOiAwO1xuJGJvcmRlci1yYWRpdXMtbGc6IDA7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAwO1xuJGJvcmRlci1jb2xvcjogIzc3Nzc3NztcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwO1xuXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiBxdW90ZShcIlwiKTtcblxuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiBub25lO1xuJGJ0bi1mb2N1cy13aWR0aDogMDtcblxuLyphY2NvcmRpb24qL1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6IDA7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6IDE1cHg7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6IDMwcHg7XG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbiRhY2NvcmRpb24tYmc6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6IDA7XG4kZGF0ZS1jb2xvcjogZ3JheTtcblxuXG5cblxuXG4iLCIvLyBtcHMyXG4vLyRib2R5LWNvbG9yOiAjMDIwMjAyO1xuLy8kcHJpbWFyeTogI0ZGRTE2Njtcbi8vJHdhcm5pbmc6ICNGRkUxNjY7XG4vLyR3aGl0ZTogI2ZmZjtcbi8vJGdyYXktMTAwOiAjZjZmNmY2O1xuLy8kZ3JheS0yMDA6ICNlZWVkZWU7XG4vLyRncmF5LTMwMDogI2U0ZTRlNDtcbi8vJGlucHV0LWJvcmRlci1jb2xvcjogI2NlZDRkYTtcbi8vJHRleHQtY29sb3I6IGJsYWNrO1xuLy8kaG9tZS1jb2xvcjogYmxhY2s7XG4vLyRib3JkZXItaGVhZGVyOiAjRkZFMTY2O1xuLy8kYmx1ZS10ZXh0LWNvbG9yOiAjMDA1NUI4O1xuLy8kZm9vdGVyLWJnLWNvbG9yOiAjMTIxMzJBO1xuLy8kZm9vdGVyLWJnLWJvdHRvbTogIzAwMkM1QTtcbi8vJHBpbGwtYmc6cmdiYSgyNTMsIDE4NSwgMTksIDAuMTApO1xuLy8kcGlsbC10ZXh0OiBibGFjaztcbi8vJHBpbGwtYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuXG4vLyBtcHMxXG4kYm9keS1jb2xvcjogIzAyMDIwMjtcbiRwcmltYXJ5OiB3aGl0ZTtcbiR3YXJuaW5nOiAjZmZjNjM0O1xuJHdoaXRlOiAjZmZmO1xuJGdyYXktMTAwOiAjZjZmNmY2O1xuJGdyYXktMjAwOiAjZWVlZGVlO1xuJGdyYXktMzAwOiAjZTRlNGU0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiR0ZXh0LWNvbG9yOiBibGFjaztcbiRob21lLWNvbG9yOiBibGFjaztcbiRib3JkZXItaGVhZGVyOiByZWQ7XG4kYmx1ZS10ZXh0LWNvbG9yOiAjMDA1NUI4O1xuJGZvb3Rlci1iZy1jb2xvcjogIzEyMTMyQTtcbiRmb290ZXItYmctYm90dG9tOiAjMDAyQzVBO1xuJHBpbGwtYmc6I0ZGRjtcbiRwaWxsLXRleHQ6IGJsYWNrO1xuJHBpbGwtYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuXG5cbi8qYWNjb3JkaW9uKi9cbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAkZ3JheS0xMDA7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc6ICRwcmltYXJ5O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4kYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcjogJHByaW1hcnk7XG4kYWNjb3JkaW9uLWJ1dHRvbi1pY29uOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMDAyYzVhJz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIik7XG4kYWNjb3JkaW9uLWNvbG9yOiAjMDIwMjAyO1xuXG4vKmN1c3RvbSB2YXJpYWJsZXMqL1xuJGRlZXB5ZWxsb3c6ICNmZmZmMDA7XG4kZm9vdGVyLWljb25zOiAjNWY2OTdiO1xuJGZvb3Rlci10ZXh0LWNvbG9yOiAjZmZmO1xuJGhlYWRlcnMtY29sb3I6ICR0ZXh0LWNvbG9yO1xuJGZvb3Rlci1iZzogJGZvb3Rlci1iZy1jb2xvcjtcbiRtZW51LWN1cnJlbnQtYmc6ICRwcmltYXJ5O1xuJG1lbnUtY3VycmVudC1jb2xvcjogI2ZmZjtcbiRzdWJtZW51LWNvbG9yOiAkYm9keS1jb2xvcjtcbiRsZWZ0LW1lbnUtYmc6ICRncmF5LTEwMDtcbiRsZWZ0LW1lbnUtbGV2ZWwtYmc6ICNmMmZiZmY7XG4kbGVmdC1tZW51LWJvcmRlcjogJGdyYXktMzAwO1xuJGxlZnQtbWVudS1sZXZlbC1ib3JkZXI6ICNiYWM5ZDg7XG4kbWVudS1pdGVtLWJvcmRlcjogJGdyYXktMjAwO1xuJGNvbnRlbnRzLWJnOiAkZ3JheS0xMDA7XG4kbWV0cmljcy1iZzogI2YyZmJmZjtcbiRjb250ZW50LW1ldHJpY3MtYmc6ICNmZmYzZjM7XG4kb3JnYW5pemF0aW9uYWxfc3RydWN0dXJlX3RhYmxlX2JnOiAjZjJmYmZmO1xuJG9yZ2FuaXphdGlvbmFsX3N0cnVjdHVyZV90b2dnbGVfYmc6ICNlNWY3ZmU7XG4kb3JnYW5pemF0aW9uYWxfc3RydWN0dXJlX3RhYmxlX2JvcmRlcjogI2I1ZWFmZTtcbiRvcmdhbml6YXRpb25hbF9zdHJ1Y3R1cmVfaWNvbjogIzlhYzVkYTtcbiR0YWItYnRuLWNvbG9yOiAkYm9keS1jb2xvcjtcbiRzZWxlY3QtYXJyYXk6IFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXCI7XG4kY2xvc2UtaWNvbjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMDAwJyUzZSUzY3BhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xuJGJ0bi1vdXRsaW5lLXByaW1hcnktaG92ZXI6ICRwcmltYXJ5O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiRmb290ZXItbGluay1jb2xvcjogI2ZmZjtcbiRmb2N1cy1vdXRsaW5lLWNvbG9yOiBkZWVwcGluaztcbiRmb2N1cy1vdXRsaW5lLWNvbG9yLWxpZ2h0OiBwaW5rO1xuJGdyYWRpZW50LWxpZ2h0ZW46ICMwMDU2YmQ7XG4kZ3JhZGllbnQtZGFya2VuOiAjMDAyYzVhO1xuJGF1dGhvcml0aWVzLXRleHQtY29sb3I6ICNmZmY7XG4kYXV0aG9yaXRpZXMtYm9yZGVyLWltZy1jb2xvcjogI2ZmZjtcbiRkYXRlLWNvbG9yOiBncmF5O1xuJHdoaXRlLWZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMTAwJSkgc2VwaWEoMCUpIHNhdHVyYXRlKDc0MjMlKSBodWUtcm90YXRlKDI2ZGVnKSBicmlnaHRuZXNzKDEyNSUpIGNvbnRyYXN0KDk2JSk7XG4kZGFyay1maWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDAlKSBzZXBpYSgwJSkgc2F0dXJhdGUoOSUpIGh1ZS1yb3RhdGUoMjM5ZGVnKSBicmlnaHRuZXNzKDEwMCUpIGNvbnRyYXN0KDEwMCUpO1xuIiwiQG1peGluIGJzQmFubmVyKCRmaWxlKSB7XG4gIC8qIVxuICAgKiBCb290c3RyYXAgI3skZmlsZX0gdjUuMy4yIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICAgKiBDb3B5cmlnaHQgMjAxMS0yMDIzIFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICAgKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAgICovXG59XG4iLCJAaW1wb3J0ICcuLi8uLi9WYXJpYWJsZXMvX2JzX3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vVmFyaWFibGVzL25vcm1hbF90aGVtZV9jb2xvcnMvX25vcm1hbF9jb2xvcnMnO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9ib290c3RyYXBcIjtcbkBpbXBvcnQgJ19leGNlcHRpb24nOyIsIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcjogI3skbWFyay1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmctZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3I6ICN7JGJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudC1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvcjogI3skZm9ybS1pbnZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3ItZGFya307XG4gICAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWRhcmstbW9kZS12YXJzXG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZGltZW5zaW9uLW5vLW5vbi1udW1lcmljLXZhbHVlc1xuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFpbi9MSUNFTlNFKVxuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgdmFsdWVcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtdW5pdDogcmVtICFkZWZhdWx0O1xuXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcbiAgQGVycm9yIFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XG4gIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xufVxuXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gTW9kZS4gUG9zc2liaWxpdGllczogXCJtaW4tbWVkaWEtcXVlcnlcIiwgXCJtYXgtbWVkaWEtcXVlcnlcIlxuJHJmcy1tb2RlOiBtaW4tbWVkaWEtcXVlcnkgIWRlZmF1bHQ7XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSByZW0ge1xuICAkcmZzLWJhc2UtdmFsdWU6IGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUsIGRpdmlkZSgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSByZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCBkaXZpZGUoJHJmcy1icmVha3BvaW50ICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcbiRyZnMtbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuJHJmcy1tcS1wcm9wZXJ0eS13aWR0aDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LXdpZHRoLCBtaW4td2lkdGgpO1xuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xuXG4vLyBJbnRlcm5hbCBtaXhpbiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBtZWRpYSBxdWVyeSBuZWVkcyB0byBiZSB1c2VkXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQGlmICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIGFuZCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1ydWxlIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XG4gICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSwgd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBwcm9wZXJ0eVxuICAgICYsXG4gICAgLmRpc2FibGUtcmZzICYsXG4gICAgJi5kaXNhYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgIC5lbmFibGUtcmZzICYsXG4gICAgJi5lbmFibGUtcmZzIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGVuYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcblxuICBAaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgLmVuYWJsZS1yZnMgJixcbiAgICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICAuZGlzYWJsZS1yZnMgJixcbiAgICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSAoKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAkcmZzLXJlbS12YWx1ZSl9cmVtLCAkdmFsdWUpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcbiAgICAgICAgLy8gQ29udmVydCB0byBweCBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHB4LCAje2RpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyAxKSAqICRyZnMtcmVtLXZhbHVlfXB4LCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSByZXNwb25zaXZlIHZhbHVlIGNhbGN1bGF0ZWQgYnkgUkZTXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcbiAgLy8gQ29udmVydCB0byBsaXN0XG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XG5cbiAgJHZhbDogXCJcIjtcblxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHZhbHVlID09IDAge1xuICAgICAgJHZhbDogJHZhbCArIFwiIDBcIjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArICR2YWx1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICR2YWx1ZSBmb3IgY2FsY3VsYXRpb25zXG4gICAgICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIGlmKCR1bml0ID09IHB4LCAxLCBkaXZpZGUoMSwgJHJmcy1yZW0tdmFsdWUpKSk7XG5cbiAgICAgICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSB2YWx1ZSBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgQGlmIGFicygkdmFsdWUpIDw9ICRyZnMtYmFzZS12YWx1ZSBvciBub3QgJGVuYWJsZS1yZnMge1xuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7ZGl2aWRlKCR2YWx1ZSwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWV9cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyBkaXZpZGUoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICAgICR2YWx1ZS1kaWZmOiBhYnMoJHZhbHVlKSAtICR2YWx1ZS1taW47XG5cbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xuXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcblxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7ZGl2aWRlKCR2YWx1ZS1kaWZmICogMTAwLCAkcmZzLWJyZWFrcG9pbnQpfSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAgICAgLy8gUmV0dXJuIHRoZSBjYWxjdWxhdGVkIHZhbHVlXG4gICAgICAgICAgJHZhbDogJHZhbCArIFwiIGNhbGMoXCIgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgXCIgLSBcIiwgXCIgKyBcIikgKyAkdmFyaWFibGUtd2lkdGggKyBcIilcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gUkZTIG1peGluXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xuICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWVzKTtcbiAgICAkZmx1aWQtdmFsOiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcyk7XG5cbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgQGlmICR2YWwgPT0gJGZsdWlkLXZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSAoKSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkLXZhbCk7XG5cbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXG4gICAgICAgIG1pbi13aWR0aDogaWYoJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4LCAoMCAqIDF2dyksIG51bGwpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZC12YWwsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBTaG9ydGhhbmQgaGVscGVyIG1peGluc1xuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nKTtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcbn1cblxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWJvdHRvbSk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XG59XG5cbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tdG9wKTtcbn1cblxuQG1peGluIG1hcmdpbi1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcbn1cblxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xufVxuXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1sZWZ0KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cblxuLy8gUmVib290XG4vL1xuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxuLy8gc3R5bGVzIHRhcmdldGluZyBpcnJlbGV2YW50IGJyb3dzZXJzIHdoaWxlIGFwcGx5aW5nIG5ldyBzdHlsZXMuXG4vL1xuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xuXG5cbi8vIERvY3VtZW50XG4vL1xuLy8gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vLyBSb290XG4vL1xuLy8gQWJpbGl0eSB0byB0aGUgdmFsdWUgb2YgdGhlIHJvb3QgZm9udCBzaXplcywgYWZmZWN0aW5nIHRoZSB2YWx1ZSBvZiBgcmVtYC5cbi8vIG51bGwgYnkgZGVmYXVsdCwgdGh1cyBub3RoaW5nIGlzIGdlbmVyYXRlZC5cblxuOnJvb3Qge1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cm9vdC1mb250LXNpemUpKTtcbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXNtb290aC1zY3JvbGwge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm9keVxuLy9cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIEFzIGEgYmVzdCBwcmFjdGljZSwgYXBwbHkgYSBkZWZhdWx0IGBiYWNrZ3JvdW5kLWNvbG9yYC5cbi8vIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuLy8gNC4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZWJvb3QtYm9keS1ydWxlc1xuYm9keSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcik7XG4gIHRleHQtYWxpZ246IHZhcigtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ24pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZyk7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA0XG59XG4vLyBzY3NzLWRvY3MtZW5kIHJlYm9vdC1ib2R5LXJ1bGVzXG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIFJlc2V0IEZpcmVmb3gncyBncmF5IGNvbG9yXG5cbmhyIHtcbiAgbWFyZ2luOiAkaHItbWFyZ2luLXkgMDtcbiAgY29sb3I6ICRoci1jb2xvcjsgLy8gMVxuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG5cblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIDEuIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXG4vLyAgICBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gICAgbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuXG4laGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6ICRoZWFkaW5ncy1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWhlYWRpbmctY29sb3IpO1xufVxuXG5oMSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbn1cblxuaDIge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbn1cblxuaDUge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG59XG5cbmg2IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xufVxuXG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy8gMi4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxuLy8gMy4gUHJldmVudCB0aGUgdGV4dC1kZWNvcmF0aW9uIHRvIGJlIHNraXBwZWQuXG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAxXG4gIGN1cnNvcjogaGVscDsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDNcbn1cblxuXG4vLyBBZGRyZXNzXG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5cbi8vIExpc3RzXG5cbm9sLFxudWwge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG4vLyAxLiBVbmRvIGJyb3dzZXIgZGVmYXVsdFxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gMVxufVxuXG5cbi8vIEJsb2NrcXVvdGVcblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gU3Ryb25nXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7XG59XG5cblxuLy8gU21hbGxcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbn1cblxuXG4vLyBNYXJrXG5cbm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG5cbi8vIFN1YiBhbmQgU3VwXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuXG4vLyBGb3Jtc1xuLy9cbi8vIDEuIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5cbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcblxuICAvLyBVbmRvIHRoZSBvcGFjaXR5IGNoYW5nZSBmcm9tIENocm9tZVxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIFJlbW92ZSB0aGUgZHJvcGRvd24gYXJyb3cgb25seSBmcm9tIHRleHQgdHlwZSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMgaW4gQ2hyb21lLlxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxuXG5bbGlzdF06bm90KFt0eXBlPVwiZGF0ZVwiXSk6bm90KFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0pOm5vdChbdHlwZT1cIm1vbnRoXCJdKTpub3QoW3R5cGU9XCJ3ZWVrXCJdKTpub3QoW3R5cGU9XCJ0aW1lXCJdKTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vICAgIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gICAgYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbi8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIDEuIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBTdW1tYXJ5XG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIDFcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi8vIFByb2dyZXNzXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblxuLy8gSGlkZGVuIGF0dHJpYnV0ZVxuLy9cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9ycy1tYXBcbiRncmF5czogKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9ycy1tYXBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjb2xvcnM6IChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwiYmxhY2tcIjogICAgICAkYmxhY2ssXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuJHByaW1hcnktdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktdGV4dC1lbXBoYXNpczogc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby10ZXh0LWVtcGhhc2lzOiAgICAgIHNoYWRlLWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItdGV4dC1lbXBoYXNpczogICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC10ZXh0LWVtcGhhc2lzOiAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpczogICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZTogICAgIHRpbnQtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgODAlKSAhZGVmYXVsdDtcbiRpbmZvLWJnLXN1YnRsZTogICAgICAgICAgdGludC1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlOiAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA4MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJnLXN1YnRsZTogICAgICAgICBtaXgoJGdyYXktMTAwLCAkd2hpdGUpICFkZWZhdWx0O1xuJGRhcmstYmctc3VidGxlOiAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6IHRpbnQtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLWJvcmRlci1zdWJ0bGU6ICAgICAgdGludC1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZTogICAgdGludC1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJvcmRlci1zdWJ0bGU6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY29udGFpbmVyLWNsYXNzZXM6ICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtZGFyay1tb2RlOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kY29sb3ItbW9kZS10eXBlOiAgICAgICAgICAgICBkYXRhICFkZWZhdWx0OyAvLyBgZGF0YWAgb3IgYG1lZGlhLXF1ZXJ5YFxuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRib2R5LXNlY29uZGFyeS1jb2xvcjogICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGJvZHktdGVydGlhcnktY29sb3I6ICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWVtcGhhc2lzLWNvbG9yOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gSWNvbiBsaW5rc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGljb24tbGluay12YXJpYWJsZXNcbiRpY29uLWxpbmstZ2FwOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ6ICAuMjVlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi1zaXplOiAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uOiAgIC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGljb24tbGluay12YXJpYWJsZXNcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcbiRib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgIHNvbGlkICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogICAgcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteGw6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXh4bDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbi8vIGZ1c3YtZGlzYWJsZVxuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMteHhsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9jdXMtcmluZy12YXJpYWJsZXNcbiRmb2N1cy1yaW5nLXdpZHRoOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLW9wYWNpdHk6ICAgIC4yNSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiAgICAgIHJnYmEoJHByaW1hcnksICRmb2N1cy1yaW5nLW9wYWNpdHkpICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYmx1cjogICAgICAgMCAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJveC1zaGFkb3c6IDAgMCAkZm9jdXMtcmluZy1ibHVyICRmb2N1cy1yaW5nLXdpZHRoICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgICA2MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC1zdHlsZTogIG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gNS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGhyLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBBbGxvd3MgZm9yIGluaGVyaXRlZCBjb2xvcnNcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdnItdmFyaWFibGVzXG4kdnItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdnItdmFyaWFibGVzXG5cbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMTg3NWVtICFkZWZhdWx0O1xuJG1hcmstY29sb3I6ICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAkeWVsbG93LTEwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdHlwZS12YXJpYWJsZXNcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYWJsZXNcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXktc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduOiAgIHRvcCAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1jb2xvcjogICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZy1mYWN0b3I6ICAgICAuMDUgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1iZzogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogICAgICAgICAuMiAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWNvbHVtbnMtb3JkZXI6IGV2ZW4gIWRlZmF1bHQ7XG5cbiR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I6IGN1cnJlbnRjb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1zY2FsZTogICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtbG9vcFxuJHRhYmxlLXZhcmlhbnRzOiAoXG4gIFwicHJpbWFyeVwiOiAgICBzaGlmdC1jb2xvcigkcHJpbWFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzZWNvbmRhcnlcIjogIHNoaWZ0LWNvbG9yKCRzZWNvbmRhcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic3VjY2Vzc1wiOiAgICBzaGlmdC1jb2xvcigkc3VjY2VzcywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJpbmZvXCI6ICAgICAgIHNoaWZ0LWNvbG9yKCRpbmZvLCAkdGFibGUtYmctc2NhbGUpLFxuICBcIndhcm5pbmdcIjogICAgc2hpZnQtY29sb3IoJHdhcm5pbmcsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiZGFuZ2VyXCI6ICAgICBzaGlmdC1jb2xvcigkZGFuZ2VyLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmssXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS1sb29wXG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1idG4tdmFyaWFibGVzXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICRmb2N1cy1yaW5nLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAkZm9jdXMtcmluZy1vcGFjaXR5ICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgICAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYmx1cjogICAgICAgICAgJGZvY3VzLXJpbmctYmx1ciAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYWJsZXNcbiRidG4tY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdiOiAgIHRvLXJnYihtaXgoY29sb3ItY29udHJhc3QoJGxpbmstY29sb3IpLCAkbGluay1jb2xvciwgMTUlKSkgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogMikgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbSwgJGlucHV0LXBhZGRpbmcteSAqIC41KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tY29sb3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDNyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0taW5wdXQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0OiAgICAgICAgICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyOiAgICAgICAgICBicmlnaHRuZXNzKDkwJSkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nbTYgMTAgMyAzIDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tY2hlY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcbiRmb3JtLXN3aXRjaC1jb2xvcjogICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1czogICAgICAgJGZvcm0tc3dpdGNoLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXN3aXRjaC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXG4kZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjogICAgICAgICAgIHJpZ2h0ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nbTIgNSA2IDYgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDIuNSArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGc6ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtdHJhbnNpdGlvbjogICAgICAgICAgJGlucHV0LXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1yYW5nZS12YXJpYWJsZXNcbiRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXG4kZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNzAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb246ICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tcmFuZ2UtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZpbGUtdmFyaWFibGVzXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmlsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10OiAgICAgICAgIDEuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ6ICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKC44NSkgdHJhbnNsYXRlWSgtLjVyZW0pIHRyYW5zbGF0ZVgoLjE1cmVtKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmxvYXRpbmctdmFyaWFibGVzXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAkZGFuZ2VyICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdW5kZXJsaW5lLWdhcDogICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4xNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1pY29uLWNvbG9yOiAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH0gKiAtMSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb246ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tdmFyaWFibGVzXG5cbi8vIFRvb2x0aXBzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLXZhcmlhYmxlc1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC4yNSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFRPRE86IHJlbW92ZSB0aGlzIGluIHY2XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1mZWVkYmFjay12YXJpYWJsZXNcblxuXG4vLyBQb3BvdmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci12YXJpYWJsZXNcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICBjYWxjKCN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4vLyBEZXByZWNhdGVkIGluIEJvb3RzdHJhcCA1LjIuMCBmb3IgQ1NTIHZhcmlhYmxlc1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cblxuLy8gVG9hc3RzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC12YXJpYWJsZXNcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkdG9hc3QtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC12YXJpYWJsZXNcblxuXG4vLyBCYWRnZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLXZhcmlhYmxlc1xuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4zNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjY1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJhZGdlLXZhcmlhYmxlc1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtdmFyaWFibGVzXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLWZvb3Rlci1iZzogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLXZhcmlhYmxlc1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtdmFyaWFibGVzXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAkYWxlcnQtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gM3ggY292ZXJzIHdpZHRoIG9mIHggcGx1cyBkZWZhdWx0IHBhZGRpbmcgb24gZWl0aGVyIHNpZGVcbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGFsZXJ0LWJnLXNjYWxlOiAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAtNzAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy12YXJpYWJsZXNcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLXZhcmlhYmxlc1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtdmFyaWFibGVzXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtdmFyaWFibGVzXG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsLXZhcmlhYmxlc1xuXG5cbi8vIEZpZ3VyZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZpZ3VyZS12YXJpYWJsZXNcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlLXZhcmlhYmxlc1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLXZhcmlhYmxlc1xuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi12YXJpYWJsZXNcblxuLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLXZhcmlhYmxlc1xuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyOiAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFNwaW5uZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLXZhcmlhYmxlc1xuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6IC43NXMgIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItdmFyaWFibGVzXG5cblxuLy8gQ2xvc2VcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLXZhcmlhYmxlc1xuJGJ0bi1jbG9zZS13aWR0aDogICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXk6ICAgICAgICAkYnRuLWNsb3NlLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAgMSAxLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxIDEgMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwIDEgMC0xLjQxNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLW1peGluc1xuIiwiLy9cbi8vIEhlYWRpbmdzXG4vL1xuLmgxIHtcbiAgQGV4dGVuZCBoMTtcbn1cblxuLmgyIHtcbiAgQGV4dGVuZCBoMjtcbn1cblxuLmgzIHtcbiAgQGV4dGVuZCBoMztcbn1cblxuLmg0IHtcbiAgQGV4dGVuZCBoNDtcbn1cblxuLmg1IHtcbiAgQGV4dGVuZCBoNTtcbn1cblxuLmg2IHtcbiAgQGV4dGVuZCBoNjtcbn1cblxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBmb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGRpc3BsYXktZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cbi5zbWFsbCB7XG4gIEBleHRlbmQgc21hbGw7XG59XG5cbi5tYXJrIHtcbiAgQGV4dGVuZCBtYXJrO1xufVxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGFpbmVyIG1peGluc1xuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG46cm9vdCB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tI3skcHJlZml4fWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHZhbHVlfTtcbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlciBvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gID4gKiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRjb3VudCkpO1xuICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuZCBpbnZhbGlkIHZhbHVlLlxuICAgICAgICAvLyBFbmRzIHdpdGggYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlLlxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICAuZy1zdGFydCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3Igd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwgb3IgdW5pdCgkbnVtKSA9PSBcIiVcIiBvciB1bml0KCRwcmV2LW51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgQGlmIGxlbmd0aCgkbWFwKSA+IDAge1xuICAgICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gICAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sb3JzXG5AZnVuY3Rpb24gdG8tcmdiKCR2YWx1ZSkge1xuICBAcmV0dXJuIHJlZCgkdmFsdWUpLCBncmVlbigkdmFsdWUpLCBibHVlKCR2YWx1ZSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbkBmdW5jdGlvbiByZ2JhLWNzcy12YXIoJGlkZW50aWZpZXIsICR0YXJnZXQpIHtcbiAgQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwiYmdcIiB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1iZy1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH0gQGlmICRpZGVudGlmaWVyID09IFwiYm9keVwiIGFuZCAkdGFyZ2V0ID09IFwidGV4dFwiIHtcbiAgICBAcmV0dXJuIHJnYmEodmFyKC0tI3skcHJlZml4fSN7JGlkZW50aWZpZXJ9LWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH0jeyR0YXJnZXR9LW9wYWNpdHkpKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIG1hcC1sb29wKCRtYXAsICRmdW5jLCAkYXJncy4uLikge1xuICAkX21hcDogKCk7XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIC8vIGFsbG93IHRvIHBhc3MgdGhlICRrZXkgYW5kICR2YWx1ZSBvZiB0aGUgbWFwIGFzIGFuIGZ1bmN0aW9uIGFyZ3VtZW50XG4gICAgJF9hcmdzOiAoKTtcbiAgICBAZWFjaCAkYXJnIGluICRhcmdzIHtcbiAgICAgICRfYXJnczogYXBwZW5kKCRfYXJncywgaWYoJGFyZyA9PSBcIiRrZXlcIiwgJGtleSwgaWYoJGFyZyA9PSBcIiR2YWx1ZVwiLCAkdmFsdWUsICRhcmcpKSk7XG4gICAgfVxuXG4gICAgJF9tYXA6IG1hcC1tZXJnZSgkX21hcCwgKCRrZXk6IGNhbGwoZ2V0LWZ1bmN0aW9uKCRmdW5jKSwgJF9hcmdzLi4uKSkpO1xuICB9XG5cbiAgQHJldHVybiAkX21hcDtcbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVyblxuXG5AZnVuY3Rpb24gdmFyaWZ5KCRsaXN0KSB7XG4gICRyZXN1bHQ6IG51bGw7XG4gIEBlYWNoICRlbnRyeSBpbiAkbGlzdCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIHZhcigtLSN7JHByZWZpeH0jeyRlbnRyeX0pLCBzcGFjZSk7XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBJbnRlcm5hbCBCb290c3RyYXAgZnVuY3Rpb24gdG8gdHVybiBtYXBzIGludG8gaXRzIG5lZ2F0aXZlIHZhcmlhbnQuXG4vLyBJdCBwcmVmaXhlcyB0aGUga2V5cyB3aXRoIGBuYCBhbmQgbWFrZXMgdGhlIHZhbHVlIG5lZ2F0aXZlLlxuQGZ1bmN0aW9uIG5lZ2F0aXZpZnktbWFwKCRtYXApIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgJGtleSAhPSAwIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoXCJuXCIgKyAka2V5OiAoLSR2YWx1ZSkpKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyBHZXQgbXVsdGlwbGUga2V5cyBmcm9tIGEgc2FzcyBtYXBcbkBmdW5jdGlvbiBtYXAtZ2V0LW11bHRpcGxlKCRtYXAsICR2YWx1ZXMpIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICBAaWYgKGluZGV4KCR2YWx1ZXMsICRrZXkpICE9IG51bGwpIHtcbiAgICAgICRyZXN1bHQ6IG1hcC1tZXJnZSgkcmVzdWx0LCAoJGtleTogJHZhbHVlKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gTWVyZ2UgbXVsdGlwbGUgbWFwc1xuQGZ1bmN0aW9uIG1hcC1tZXJnZS1tdWx0aXBsZSgkbWFwcy4uLikge1xuICAkbWVyZ2VkLW1hcHM6ICgpO1xuXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgICRtZXJnZWQtbWFwczogbWFwLW1lcmdlKCRtZXJnZWQtbWFwcywgJG1hcCk7XG4gIH1cbiAgQHJldHVybiAkbWVyZ2VkLW1hcHM7XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gU2VlIGh0dHBzOi8vY29kZXBlbi5pby9rZXZpbndlYmVyL3Blbi9kWFdvUndcbi8vXG4vLyBSZXF1aXJlcyB0aGUgdXNlIG9mIHF1b3RlcyBhcm91bmQgZGF0YSBVUklzLlxuXG5AZnVuY3Rpb24gZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgIC8vIERvIG5vdCBlc2NhcGUgdGhlIHVybCBicmFja2V0c1xuICAgICAgQGlmIHN0ci1pbmRleCgkc3RyaW5nLCBcInVybChcIikgPT0gMSB7XG4gICAgICAgICRzdHJpbmc6IHVybChcIiN7c3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsIDYsIC0zKSwgJGNoYXIsICRlbmNvZGVkKX1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHN0cmluZzogc3RyLXJlcGxhY2UoJHN0cmluZywgJGNoYXIsICRlbmNvZGVkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzAxNjhcblxuLy8gQSBsaXN0IG9mIHByZS1jYWxjdWxhdGVkIG51bWJlcnMgb2YgcG93KGRpdmlkZSgoZGl2aWRlKCR2YWx1ZSwgMjU1KSArIC4wNTUpLCAxLjA1NSksIDIuNCkuIChmcm9tIDAgdG8gMjU1KVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHQsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cbiRfbHVtaW5hbmNlLWxpc3Q6IC4wMDA4IC4wMDEgLjAwMTEgLjAwMTMgLjAwMTUgLjAwMTcgLjAwMiAuMDAyMiAuMDAyNSAuMDAyNyAuMDAzIC4wMDMzIC4wMDM3IC4wMDQgLjAwNDQgLjAwNDggLjAwNTIgLjAwNTYgLjAwNiAuMDA2NSAuMDA3IC4wMDc1IC4wMDggLjAwODYgLjAwOTEgLjAwOTcgLjAxMDMgLjAxMSAuMDExNiAuMDEyMyAuMDEzIC4wMTM3IC4wMTQ0IC4wMTUyIC4wMTYgLjAxNjggLjAxNzYgLjAxODUgLjAxOTQgLjAyMDMgLjAyMTIgLjAyMjIgLjAyMzIgLjAyNDIgLjAyNTIgLjAyNjIgLjAyNzMgLjAyODQgLjAyOTYgLjAzMDcgLjAzMTkgLjAzMzEgLjAzNDMgLjAzNTYgLjAzNjkgLjAzODIgLjAzOTUgLjA0MDkgLjA0MjMgLjA0MzcgLjA0NTIgLjA0NjcgLjA0ODIgLjA0OTcgLjA1MTMgLjA1MjkgLjA1NDUgLjA1NjEgLjA1NzggLjA1OTUgLjA2MTIgLjA2MyAuMDY0OCAuMDY2NiAuMDY4NSAuMDcwNCAuMDcyMyAuMDc0MiAuMDc2MiAuMDc4MiAuMDgwMiAuMDgyMyAuMDg0NCAuMDg2NSAuMDg4NyAuMDkwOCAuMDkzMSAuMDk1MyAuMDk3NiAuMDk5OSAuMTAyMiAuMTA0NiAuMTA3IC4xMDk1IC4xMTE5IC4xMTQ0IC4xMTcgLjExOTUgLjEyMjEgLjEyNDggLjEyNzQgLjEzMDEgLjEzMjkgLjEzNTYgLjEzODQgLjE0MTMgLjE0NDEgLjE0NyAuMTUgLjE1MjkgLjE1NTkgLjE1OSAuMTYyIC4xNjUxIC4xNjgzIC4xNzE0IC4xNzQ2IC4xNzc5IC4xODEyIC4xODQ1IC4xODc4IC4xOTEyIC4xOTQ2IC4xOTgxIC4yMDE2IC4yMDUxIC4yMDg2IC4yMTIyIC4yMTU5IC4yMTk1IC4yMjMyIC4yMjcgLjIzMDcgLjIzNDYgLjIzODQgLjI0MjMgLjI0NjIgLjI1MDIgLjI1NDIgLjI1ODIgLjI2MjMgLjI2NjQgLjI3MDUgLjI3NDcgLjI3ODkgLjI4MzEgLjI4NzQgLjI5MTggLjI5NjEgLjMwMDUgLjMwNSAuMzA5NSAuMzE0IC4zMTg1IC4zMjMxIC4zMjc4IC4zMzI1IC4zMzcyIC4zNDE5IC4zNDY3IC4zNTE1IC4zNTY0IC4zNjEzIC4zNjYzIC4zNzEyIC4zNzYzIC4zODEzIC4zODY0IC4zOTE2IC4zOTY4IC40MDIgLjQwNzIgLjQxMjUgLjQxNzkgLjQyMzMgLjQyODcgLjQzNDIgLjQzOTcgLjQ0NTIgLjQ1MDggLjQ1NjQgLjQ2MjEgLjQ2NzggLjQ3MzUgLjQ3OTMgLjQ4NTEgLjQ5MSAuNDk2OSAuNTAyOSAuNTA4OSAuNTE0OSAuNTIxIC41MjcxIC41MzMzIC41Mzk1IC41NDU3IC41NTIgLjU1ODMgLjU2NDcgLjU3MTEgLjU3NzYgLjU4NDEgLjU5MDYgLjU5NzIgLjYwMzggLjYxMDUgLjYxNzIgLjYyNCAuNjMwOCAuNjM3NiAuNjQ0NSAuNjUxNCAuNjU4NCAuNjY1NCAuNjcyNCAuNjc5NSAuNjg2NyAuNjkzOSAuNzAxMSAuNzA4NCAuNzE1NyAuNzIzMSAuNzMwNSAuNzM3OSAuNzQ1NCAuNzUyOSAuNzYwNSAuNzY4MiAuNzc1OCAuNzgzNSAuNzkxMyAuNzk5MSAuODA3IC44MTQ4IC44MjI4IC44MzA4IC44Mzg4IC44NDY5IC44NTUgLjg2MzIgLjg3MTQgLjg3OTYgLjg4NzkgLjg5NjMgLjkwNDcgLjkxMzEgLjkyMTYgLjkzMDEgLjkzODcgLjk0NzMgLjk1NiAuOTY0NyAuOTczNCAuOTgyMyAuOTkxMSAxO1xuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQsICRjb2xvci1jb250cmFzdC1kYXJrOiAkY29sb3ItY29udHJhc3QtZGFyaywgJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRtaW4tY29udHJhc3QtcmF0aW86ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcbiAgJGZvcmVncm91bmRzOiAkY29sb3ItY29udHJhc3QtbGlnaHQsICRjb2xvci1jb250cmFzdC1kYXJrLCAkd2hpdGUsICRibGFjaztcbiAgJG1heC1yYXRpbzogMDtcbiAgJG1heC1yYXRpby1jb2xvcjogbnVsbDtcblxuICBAZWFjaCAkY29sb3IgaW4gJGZvcmVncm91bmRzIHtcbiAgICAkY29udHJhc3QtcmF0aW86IGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkY29sb3IpO1xuICAgIEBpZiAkY29udHJhc3QtcmF0aW8gPiAkbWluLWNvbnRyYXN0LXJhdGlvIHtcbiAgICAgIEByZXR1cm4gJGNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1heC1yYXRpbyB7XG4gICAgICAkbWF4LXJhdGlvOiAkY29udHJhc3QtcmF0aW87XG4gICAgICAkbWF4LXJhdGlvLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG5cbiAgQHdhcm4gXCJGb3VuZCBubyBjb2xvciBsZWFkaW5nIHRvICN7JG1pbi1jb250cmFzdC1yYXRpb306MSBjb250cmFzdCByYXRpbyBhZ2FpbnN0ICN7JGJhY2tncm91bmR9Li4uXCI7XG5cbiAgQHJldHVybiAkbWF4LXJhdGlvLWNvbG9yO1xufVxuXG5AZnVuY3Rpb24gY29udHJhc3QtcmF0aW8oJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOiAkY29sb3ItY29udHJhc3QtbGlnaHQpIHtcbiAgJGwxOiBsdW1pbmFuY2UoJGJhY2tncm91bmQpO1xuICAkbDI6IGx1bWluYW5jZShvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSk7XG5cbiAgQHJldHVybiBpZigkbDEgPiAkbDIsIGRpdmlkZSgkbDEgKyAuMDUsICRsMiArIC4wNSksIGRpdmlkZSgkbDIgKyAuMDUsICRsMSArIC4wNSkpO1xufVxuXG4vLyBSZXR1cm4gV0NBRzIuMSByZWxhdGl2ZSBsdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRy8jZGZuLXJlbGF0aXZlLWx1bWluYW5jZVxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNkZm4tY29udHJhc3QtcmF0aW9cbkBmdW5jdGlvbiBsdW1pbmFuY2UoJGNvbG9yKSB7XG4gICRyZ2I6IChcbiAgICBcInJcIjogcmVkKCRjb2xvciksXG4gICAgXCJnXCI6IGdyZWVuKCRjb2xvciksXG4gICAgXCJiXCI6IGJsdWUoJGNvbG9yKVxuICApO1xuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJHJnYiB7XG4gICAgJHZhbHVlOiBpZihkaXZpZGUoJHZhbHVlLCAyNTUpIDwgLjA0MDQ1LCBkaXZpZGUoZGl2aWRlKCR2YWx1ZSwgMjU1KSwgMTIuOTIpLCBudGgoJF9sdW1pbmFuY2UtbGlzdCwgJHZhbHVlICsgMSkpO1xuICAgICRyZ2I6IG1hcC1tZXJnZSgkcmdiLCAoJG5hbWU6ICR2YWx1ZSkpO1xuICB9XG5cbiAgQHJldHVybiAobWFwLWdldCgkcmdiLCBcInJcIikgKiAuMjEyNikgKyAobWFwLWdldCgkcmdiLCBcImdcIikgKiAuNzE1MikgKyAobWFwLWdldCgkcmdiLCBcImJcIikgKiAuMDcyMik7XG59XG5cbi8vIFJldHVybiBvcGFxdWUgY29sb3Jcbi8vIG9wYXF1ZSgjZmZmLCByZ2JhKDAsIDAsIDAsIC41KSkgPT4gIzgwODA4MFxuQGZ1bmN0aW9uIG9wYXF1ZSgkYmFja2dyb3VuZCwgJGZvcmVncm91bmQpIHtcbiAgQHJldHVybiBtaXgocmdiYSgkZm9yZWdyb3VuZCwgMSksICRiYWNrZ3JvdW5kLCBvcGFjaXR5KCRmb3JlZ3JvdW5kKSAqIDEwMCUpO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItZnVuY3Rpb25zXG4vLyBUaW50IGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggd2hpdGVcbkBmdW5jdGlvbiB0aW50LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgYSBjb2xvcjogbWl4IGEgY29sb3Igd2l0aCBibGFja1xuQGZ1bmN0aW9uIHNoYWRlLWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkd2VpZ2h0KTtcbn1cblxuLy8gU2hhZGUgdGhlIGNvbG9yIGlmIHRoZSB3ZWlnaHQgaXMgcG9zaXRpdmUsIGVsc2UgdGludCBpdFxuQGZ1bmN0aW9uIHNoaWZ0LWNvbG9yKCRjb2xvciwgJHdlaWdodCkge1xuICBAcmV0dXJuIGlmKCR3ZWlnaHQgPiAwLCBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpLCB0aW50LWNvbG9yKCRjb2xvciwgLSR3ZWlnaHQpKTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItZnVuY3Rpb25zXG5cbi8vIFJldHVybiB2YWxpZCBjYWxjXG5AZnVuY3Rpb24gYWRkKCR2YWx1ZTEsICR2YWx1ZTIsICRyZXR1cm4tY2FsYzogdHJ1ZSkge1xuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuICR2YWx1ZTE7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUxKSA9PSBudW1iZXIgYW5kIHR5cGUtb2YoJHZhbHVlMikgPT0gbnVtYmVyIGFuZCBjb21wYXJhYmxlKCR2YWx1ZTEsICR2YWx1ZTIpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTEgKyAkdmFsdWUyO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9ICsgI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiICsgXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBzdWJ0cmFjdCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCBhbmQgJHZhbHVlMiA9PSBudWxsIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICBAaWYgJHZhbHVlMSA9PSBudWxsIHtcbiAgICBAcmV0dXJuIC0kdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxIC0gJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTIpICE9IG51bWJlciB7XG4gICAgJHZhbHVlMjogdW5xdW90ZShcIihcIikgKyAkdmFsdWUyICsgdW5xdW90ZShcIilcIik7XG4gIH1cblxuICBAcmV0dXJuIGlmKCRyZXR1cm4tY2FsYyA9PSB0cnVlLCBjYWxjKCN7JHZhbHVlMX0gLSAjeyR2YWx1ZTJ9KSwgJHZhbHVlMSArIHVucXVvdGUoXCIgLSBcIikgKyAkdmFsdWUyKTtcbn1cblxuQGZ1bmN0aW9uIGRpdmlkZSgkZGl2aWRlbmQsICRkaXZpc29yLCAkcHJlY2lzaW9uOiAxMCkge1xuICAkc2lnbjogaWYoJGRpdmlkZW5kID4gMCBhbmQgJGRpdmlzb3IgPiAwIG9yICRkaXZpZGVuZCA8IDAgYW5kICRkaXZpc29yIDwgMCwgMSwgLTEpO1xuICAkZGl2aWRlbmQ6IGFicygkZGl2aWRlbmQpO1xuICAkZGl2aXNvcjogYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogdW5pdCgkZGl2aWRlbmQpO1xuICAkZGl2aXNvci11bml0OiB1bml0KCRkaXZpc29yKTtcbiAgJHVuaXQtbWFwOiAoXG4gICAgXCJweFwiOiAxcHgsXG4gICAgXCJyZW1cIjogMXJlbSxcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcIiVcIjogMSVcbiAgKTtcbiAgQGlmICgkZGl2aWRlbmQtdW5pdCAhPSAkZGl2aXNvci11bml0IGFuZCBtYXAtaGFzLWtleSgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KSkge1xuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiBtYXAtZ2V0KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cbiIsIi8vXG4vLyBGb3JtIHRleHRcbi8vXG5cbi5mb3JtLXRleHQge1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS10ZXh0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLXRleHQtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXRleHQtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xufVxuIiwiLy9cbi8vIEdlbmVyYWwgZm9ybSBjb250cm9scyAocGx1cyBhIGZldyBzcGVjaWZpYyBoaWdoLWxldmVsIGludGVydmVudGlvbnMpXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImZpbGVcIl0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIHByZXZlbnQgcHNldWRvIGVsZW1lbnQgYnV0dG9uIG92ZXJsYXBcblxuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcbiAgICAvLyBPbiBBbmRyb2lkIENocm9tZSwgZm9ybS1jb250cm9sJ3MgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgLy9cbiAgICAvLyBPbiBpT1MgU2FmYXJpLCBmb3JtLWNvbnRyb2wncyBcImFwcGVhcmFuY2U6IG5vbmVcIiArIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIGlPUyAxNi4yIC8gU2FmYXJpIDE2LjJcbiAgICBtaW4td2lkdGg6IDg1cHg7IC8vIFNlZW1zIHRvIGJlIGEgZ29vZCBtaW5pbXVtIHNhZmUgd2lkdGhcblxuICAgIC8vIEFkZCBzb21lIGhlaWdodCB0byBkYXRlIGlucHV0cyBvbiBpT1NcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzMzA3XG4gICAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuXG4gICAgLy8gQW5kcm9pZCBDaHJvbWUgdHlwZT1cImRhdGVcIiBpcyB0YWxsZXIgdGhhbiB0aGUgb3RoZXIgaW5wdXRzXG4gICAgLy8gYmVjYXVzZSBvZiBcIm1hcmdpbjogMXB4IDI0cHggMXB4IDRweFwiIGluc2lkZSB0aGUgc2hhZG93IERPTVxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBQcmV2ZW50IGV4Y2Vzc2l2ZSBkYXRlIGlucHV0IGhlaWdodCBpbiBXZWJraXRcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zNDQzM1xuICAmOjotd2Via2l0LWRhdGV0aW1lLWVkaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIEZpbGUgaW5wdXQgYnV0dG9ucyB0aGVtaW5nXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG4gIH1cblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgfVxufVxuXG4vLyBNYWtlIHN1cmUgdGV4dGFyZWFzIGRvbid0IHNocmluayB0b28gbXVjaCB3aGVuIHJlc2l6ZWRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI5MTI0XG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbnRleHRhcmVhIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgd2lkdGg6ICRmb3JtLWNvbG9yLXdpZHRoO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtY29sb3Itc3dhdGNoIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHsgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtOyB9XG4gICYuZm9ybS1jb250cm9sLWxnIHsgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnOyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtYmctbWl4aW5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3I6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1iZy1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtbWl4aW5zXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogbnVsbCwgJGVuZC1wZXJjZW50OiBudWxsKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LW1peGluc1xuIiwiLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cblxuLmZvcm0tc2VsZWN0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvcil9O1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZyksIHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uLCBub25lKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xuICBib3JkZXI6ICRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXNlbGVjdC10cmFuc2l0aW9uKTtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XG4gIH1cbn1cblxuLmZvcm0tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLXNlbGVjdC1sZyB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zZWxlY3Qge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nOiAje2VzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvci1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ2hlY2svcmFkaW9cbi8vXG5cbi5mb3JtLWNoZWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZzogI3skZm9ybS1jaGVjay1pbnB1dC1iZ307XG5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpICogLjU7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xuICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0OyAvLyBLZWVwIHRoZW1lZCBhcHBlYXJhbmNlIGZvciBwcmludFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGZpbHRlcjogJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cblxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XG5cbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX07XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XG4gIH1cblxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcbn1cblxuLy9cbi8vIFN3aXRjaFxuLy9cblxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpfTtcblxuICAgIHdpZHRoOiAkZm9ybS1zd2l0Y2gtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpfTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XG5cbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XG59XG5cbi5idG4tY2hlY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICArIC5idG4ge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0Om5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uZm9ybS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQsICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXG4gICAgLy8gTm8gYm94LXNoYWRvdygpIG1peGluIGZvciBmb2N1cyBhY2Nlc3NpYmlsaXR5LlxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICB9XG5cbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0IC0gJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFdoeT9cbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLWZsb2F0aW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIG1pbi1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmxvYXRpbmctbGluZS1oZWlnaHQ7XG4gIH1cblxuICA+IGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gICAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICgkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXggKiAuNSk7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxuICA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsLFxuICA+IC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgfiBsYWJlbCB7IC8vIFJlcXVpcmVkIGZvciBgLmZvcm0tY29udHJvbGBzIGJlY2F1c2Ugb2Ygc3BlY2lmaWNpdHlcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tc2VsZWN0LFxuICA+IC5mb3JtLWZsb2F0aW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICB9XG5cbiAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxuICA+IC5mb3JtLXNlbGVjdDpmb2N1cyxcbiAgPiAuZm9ybS1mbG9hdGluZzpmb2N1cy13aXRoaW4ge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiA1O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbi5pbnB1dC1ncm91cCB7XG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXZhbGlkYXRpb24ge1xuICAgID4gOm50aC1sYXN0LWNoaWxkKG4gKyAzKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiBcIlwiO1xuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcbiAgICAkdmFsaWRhdGlvbi1tZXNzYWdlczogJHZhbGlkYXRpb24tbWVzc2FnZXMgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItdG9vbHRpcClcIiArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi1mZWVkYmFjaylcIjtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXG4gICRzdGF0ZSxcbiAgJGNvbG9yLFxuICAkaWNvbixcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICR0b29sdGlwLWJnLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KSxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAkYm9yZGVyLWNvbG9yOiAkY29sb3Jcbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbiAgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICAmOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSxcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSlbc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb246ICN7ZXNjYXBlLXN2ZygkaWNvbil9O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbiwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoOiAjeyRidG4tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRidG4tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogI3skYnRuLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgI3skYnRuLWZvY3VzLXdpZHRofSByZ2JhKHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBidG4tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5idG4tY2hlY2sgKyAmOmhvdmVyIHtcbiAgICAvLyBvdmVycmlkZSBmb3IgdGhlIGNoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIDpub3QoLmJ0bi1jaGVjaykgKyAmOmFjdGl2ZSxcbiAgJjpmaXJzdC1jaGlsZDphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmLnNob3cge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmcpO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbG9vcHNcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGlmICRjb2xvciA9PSBcImxpZ2h0XCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2UgaWYgJGNvbG9yID09IFwiZGFya1wiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkdmFsdWUsICR2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhbnQtbG9vcHNcblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRmb250LXdlaWdodC1ub3JtYWx9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYnRuLWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skYnRuLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6IDAgMCAwICMwMDA7IC8vIENhbid0IHVzZSBgbm9uZWAgYXMga2V5d29yZCBuZWdhdGVzIGFsbCB2YWx1ZXMgd2hlbiB1c2VkIHdpdGggbXVsdGlwbGUgc2hhZG93c1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3skYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYn07XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93bigkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LWVuZCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoXG4gICRkaXJlY3Rpb246IGRvd24sXG4gICR3aWR0aDogJGNhcmV0LXdpZHRoLFxuICAkc3BhY2luZzogJGNhcmV0LXNwYWNpbmcsXG4gICR2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduXG4pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LW1peGluc1xuIiwiLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuICA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuICA+IC5idG46aG92ZXIsXG4gID4gLmJ0bjpmb2N1cyxcbiAgPiAuYnRuOmFjdGl2ZSxcbiAgPiAuYnRuLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IDpub3QoLmJ0bi1jaGVjazpmaXJzdC1jaGlsZCkgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDpmaXJzdC1jaGlsZCxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgfVxuXG4gIC8vIFRoZSBsZWZ0IHJhZGl1cyBzaG91bGQgYmUgMCBpZiB0aGUgYnV0dG9uIGlzOlxuICAvLyAtIHRoZSBcInRoaXJkIG9yIG1vcmVcIiBjaGlsZFxuICAvLyAtIHRoZSBzZWNvbmQgY2hpbGQgYW5kIHRoZSBwcmV2aW91cyBlbGVtZW50IGlzbid0IGAuYnRuLWNoZWNrYCAobWFraW5nIGl0IHRoZSBmaXJzdCBjaGlsZCB2aXN1YWxseSlcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcbiAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3BlbmQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BzdGFydCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdGFicy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGg6ICN7JG5hdi10YWJzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1czogI3skbmF2LXRhYnMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdGFicy1jc3MtdmFyc1xuXG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3IpO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtcGlsbHMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi1waWxscy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXBpbGxzLWNzcy12YXJzXG5cbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cykpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAjeyRuYXYtdW5kZXJsaW5lLWdhcH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcblxuICBnYXA6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcCk7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteDogI3tpZigkbmF2YmFyLXBhZGRpbmcteCA9PSBudWxsLCAwLCAkbmF2YmFyLXBhZGRpbmcteCl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15OiAjeyRuYXZiYXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICN7JG5hdmJhci1icmFuZC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogI3skbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmR9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplOiAjeyRuYXZiYXItYnJhbmQtZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAjeyRuYXZiYXItdG9nZ2xlci1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAjeyRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICN7JG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogI3skbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogMDtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdyB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcblxuICBhLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzICB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSkpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcik7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pKTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tI3skcHJlZml4fXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWV4cGFuZC1sb29wXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9zZWxlY3Rvci1uby11bmlvbi1jbGFzcy1uYW1lXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMge1xuICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obm9uZSk7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi5uYXZiYXItbGlnaHQge1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgLm5hdmJhci1saWdodGBcIiwgXCJ2NS4yLjBcIiwgXCJ2Ni4wLjBcIiwgdHJ1ZSk7XG59XG5cbi5uYXZiYXItZGFyayxcbi5uYXZiYXJbZGF0YS1icy10aGVtZT1cImRhcmtcIl0ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay1jc3MtdmFyc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXk6ICN7JGNhcmQtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14OiAjeyRjYXJkLXNwYWNlci14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteTogI3skY2FyZC10aXRsZS1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3I6ICN7JGNhcmQtdGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yOiAjeyRjYXJkLXN1YnRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGg6ICN7JGNhcmQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6ICN7JGNhcmQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3c6ICN7JGNhcmQtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogI3skY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXg6ICN7JGNhcmQtY2FwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiAjeyRjYXJkLWNhcC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yOiAjeyRjYXJkLWNhcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0OiAjeyRjYXJkLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWNhcmQtY29sb3I6ICN7JGNhcmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJnOiAjeyRjYXJkLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAjeyRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbjogI3skY2FyZC1ncm91cC1tYXJnaW59O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNhcmQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdykpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNvbG9yKTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3I6ICN7JGFjY29yZGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1iZzogI3skYWNjb3JkaW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcjogI3skYWNjb3JkaW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICN7JGFjY29yZGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoOiAjeyRhY2NvcmRpb24taWNvbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm06ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdzogI3skYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi1jc3MtdmFyc1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbikpO1xuXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkpIDAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3JkaW9uIGljb25cbiAgJjo6YWZ0ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uKSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLFxuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbi1kYXJrKX07XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24tZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteTogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICN7JGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbX07XG4gIEBpbmNsdWRlIHJmcygkYnJlYWRjcnVtYi1mb250LXNpemUsIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZzogI3skYnJlYWRjcnVtYi1iZ307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogI3skYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAjeyRicmVhZGNydW1iLWRpdmlkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAjeyRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogI3skYnJlYWRjcnVtYi1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcik7XG4gICAgICBjb250ZW50OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1wiLyogcnRsOlwifSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XCIqL1wifTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1taXhpblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG59XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tbWl4aW5cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93KSk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAjeyRidG4tY2xvc2Utd2hpdGUtZmlsdGVyfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS1jc3MtdmFyc1xuXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gU2hhcmVkIGJldHdlZW4gbW9kYWxzIGFuZCBvZmZjYW52YXNlc1xuQG1peGluIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleCwgJGJhY2tkcm9wLWJnLCAkYmFja2Ryb3Atb3BhY2l0eSkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b29sdGlwLXppbmRleDogI3skemluZGV4LXRvb2x0aXB9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aDogI3skdG9vbHRpcC1tYXgtd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteDogI3skdG9vbHRpcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteTogI3skdG9vbHRpcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbjogI3skdG9vbHRpcC1tYXJnaW59O1xuICBAaW5jbHVkZSByZnMoJHRvb2x0aXAtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3I6ICN7JHRvb2x0aXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJnOiAjeyR0b29sdGlwLWJnfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzOiAjeyR0b29sdGlwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHk6ICN7JHRvb2x0aXAtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGg6ICN7JHRvb2x0aXAtYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodDogI3skdG9vbHRpcC1hcnJvdy1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW4pO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgJHRvb2x0aXAtbWFyZ2luYFwiLCBcInY1XCIsIFwidjUueFwiLCB0cnVlKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHkpOyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3R0b206IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4OiAjeyR6aW5kZXgtcG9wb3Zlcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoOiAjeyRwb3BvdmVyLW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1iZzogI3skcG9wb3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoOiAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3c6ICN7JHBvcG92ZXItYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3I6ICN7JHBvcG92ZXItaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmc6ICN7JHBvcG92ZXItaGVhZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteDogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3I6ICN7JHBvcG92ZXItYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGg6ICN7JHBvcG92ZXItYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodDogI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93KSk7XG5cbiAgLnBvcG92ZXItYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLXN0YXJ0IHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItc3RhcnQ7XG4gIH1cbn1cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yKTtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLWVuZCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kXG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLyogcnRsOm9wdGlvbnM6IHtcbiAgXCJhdXRvUmVuYW1lXCI6IHRydWUsXG4gIFwic3RyaW5nTWFwXCI6WyB7XG4gICAgXCJuYW1lXCIgICAgOiBcInByZXYtbmV4dFwiLFxuICAgIFwic2VhcmNoXCIgIDogXCJwcmV2XCIsXG4gICAgXCJyZXBsYWNlXCIgOiBcIm5leHRcIlxuICB9IF1cbn0gKi9cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcbi8vXG4vLyBBZGQgYSBjb250YWluZXIgKHN1Y2ggYXMgYSBsaXN0KSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhbiBpdGVtIChpZGVhbGx5IGEgZm9jdXNhYmxlIGNvbnRyb2wsXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHBhZGRpbmctdG9wOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyBEYXJrIG1vZGUgY2Fyb3VzZWxcblxuQG1peGluIGNhcm91c2VsLWRhcmsoKSB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgICBmaWx0ZXI6ICRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI7XG4gIH1cblxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG5cbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG5cbi5jYXJvdXNlbC1kYXJrIHtcbiAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLmNhcm91c2VsLFxuICAgICAgJi5jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLnNwaW5uZXItZ3Jvdyxcbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSk7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuIiwiLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogd2FpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg7XG5cbiAgJi5idG46OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4ucGxhY2Vob2xkZXIteHMge1xuICBtaW4taGVpZ2h0OiAuNmVtO1xufVxuXG4ucGxhY2Vob2xkZXItc20ge1xuICBtaW4taGVpZ2h0OiAuOGVtO1xufVxuXG4ucGxhY2Vob2xkZXItbGcge1xuICBtaW4taGVpZ2h0OiAxLjJlbTtcbn1cblxuLy8gQW5pbWF0aW9uXG4ucGxhY2Vob2xkZXItZ2xvdyB7XG4gIC5wbGFjZWhvbGRlciB7XG4gICAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItZ2xvdyB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluO1xuICB9XG59XG5cbi5wbGFjZWhvbGRlci13YXZlIHtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgJGJsYWNrIDU1JSwgcmdiYSgwLCAwLCAwLCAoMSAtICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbikpIDc1JSwgJGJsYWNrIDk1JSk7XG4gIG1hc2stc2l6ZTogMjAwJSAxMDAlO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLXdhdmUge1xuICAxMDAlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiAtMjAwJSAwJTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC50ZXh0LWJnLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWJnLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB9XG59XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmxpbmstI3skY29sb3J9IHtcbiAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAgIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAkaG92ZXItY29sb3I6IGlmKGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpLCB0aW50LWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkpO1xuICAgICAgICBjb2xvcjogUkdCQSgje3RvLXJnYigkaG92ZXItY29sb3IpfSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh0by1yZ2IoJGhvdmVyLWNvbG9yKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPbmUtb2ZmIHNwZWNpYWwgbGluayBoZWxwZXIgYXMgYSBicmlkZ2UgdW50aWwgdjZcbi5saW5rLWJvZHktZW1waGFzaXMge1xuICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIEBpZiAkbGluay1zaGFkZS1wZXJjZW50YWdlICE9IDAge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgfVxuICB9XG59XG4iLCIuZm9jdXMtcmluZzpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIC8vIEJ5IGRlZmF1bHQsIHRoZXJlIGlzIG5vIGAtLWJzLWZvY3VzLXJpbmcteGAsIGAtLWJzLWZvY3VzLXJpbmcteWAsIG9yIGAtLWJzLWZvY3VzLXJpbmctYmx1cmAsIGJ1dCB3ZSBwcm92aWRlIENTUyB2YXJpYWJsZXMgd2l0aCBmYWxsYmFja3MgdG8gaW5pdGlhbCBgMGAgdmFsdWVzXG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXgsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXksIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWJsdXIsIDApIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcik7XG59XG4iLCIuaWNvbi1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogJGljb24tbGluay1nYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNSkpO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6ICRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gID4gLmJpIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogJGljb24tbGluay1pY29uLXNpemU7XG4gICAgaGVpZ2h0OiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbik7XG4gIH1cbn1cblxuLmljb24tbGluay1ob3ZlciB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgPiAuYmkge1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9aWNvbi1saW5rLXRyYW5zZm9ybSwgJGljb24tbGluay1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLnJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgPiAqIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBlYWNoICRrZXksICRyYXRpbyBpbiAkYXNwZWN0LXJhdGlvcyB7XG4gIC5yYXRpby0jeyRrZXl9IHtcbiAgICAtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW86ICN7JHJhdGlvfTtcbiAgfVxufVxuIiwiLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi8vIFJlc3BvbnNpdmUgc3RpY2t5IHRvcCBhbmQgYm90dG9tXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LXRvcCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuXG4gICAgLnN0aWNreSN7JGluZml4fS1ib3R0b20ge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHN0YWNrc1xuLmhzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi52c3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3RhY2tzXG4iLCIvL1xuLy8gVmlzdWFsbHkgaGlkZGVuXG4vL1xuXG4udmlzdWFsbHktaGlkZGVuLFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gSGlkZSBjb250ZW50IHZpc3VhbGx5IHdoaWxlIGtlZXBpbmcgaXQgYWNjZXNzaWJsZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzXG4vL1xuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2tpdHR5Z2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4oKSB7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuXG4gIC8vIEZpeCBmb3IgcG9zaXRpb25lZCB0YWJsZSBjYXB0aW9uIHRoYXQgY291bGQgYmVjb21lIGFub255bW91cyBjZWxsc1xuICAmOm5vdChjYXB0aW9uKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gVXNlIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLCBvciBvbmUgb2YgaXRzIGNoaWxkIGVsZW1lbnRzIGlzIGZvY3VzZWRcbi8vIChpLmUuIHdoZW4gZm9jdXMgaXMgd2l0aGluIHRoZSBlbGVtZW50L2NvbnRhaW5lciB0aGF0IHRoZSBjbGFzcyB3YXMgYXBwbGllZCB0bylcbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBUZXh0IHRydW5jYXRpb25cbi8vXG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIudnIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHdpZHRoOiAkdnItYm9yZGVyLXdpZHRoO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXg6IFwiXCIsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFVzZSBjdXN0b20gQ1NTIHZhcmlhYmxlIG5hbWUgaWYgcHJlc2VudCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gYGNsYXNzYFxuICAgICRjc3MtdmFyaWFibGUtbmFtZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcykpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZS5nLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLWNzcy12YXI6IG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXIpO1xuICAgICRpcy1sb2NhbC12YXJzOiBtYXAtZ2V0KCR1dGlsaXR5LCBsb2NhbC12YXJzKTtcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLWNzcy12YXIge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iLCIvL0BpbXBvcnQgXCIuLi9hc3NldHMvY3NzL1VzZXItbWF6b3dpZWNraWUvbWl4aW5zXCI7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1PcGVuK1NhbnM6d2dodEA0MDA7NjAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcbkBpbXBvcnQgXCJAZmFuY3lhcHBzL3VpL2Rpc3QvZmFuY3lib3guY3NzXCI7XG5cbmh0bWwsIGJvZHksIGJvZHkgKiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG59XG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvX3Rvb2x0aXAnLFxuJ2NvbXBvbmVudHMvYmFubmVycy9fYmFubmVycyc7XG5AaW1wb3J0ICdfbWl4aW5zJztcblxuQGltcG9ydCAnY29udGFpbmVycy9oZWFkZXIvX2hlYWRlcicsXG4nY29udGFpbmVycy9mb290ZXIvX2Zvb3RlcicsXG4nY29udGFpbmVycy9fY3VzdG9tQ29udGFpbmVyc0JyZWFrcG9pbnRzJyxcbidjb250YWluZXJzL21haW4vX2FzaWRlJyxcbidjb250YWluZXJzL21haW4vX2NvbnRlbnRfc2VjdGlvbicsXG4nY29udGFpbmVycy9icmVhZGNydW1icy9fYnJlYWRjcnVtYnMnO1xuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5ib2R5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuI21haW4tY29udGVudCB7XG4gICYuY29udGVudHMtbWFpbi1wYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICRidG4tb3V0bGluZS1wcmltYXJ5LWhvdmVyO1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICRmb2N1cy1vdXRsaW5lLWNvbG9yO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5hLCBidXR0b24sIC5idG4ge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC00cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cy1vdXRsaW5lLWNvbG9yLWxpZ2h0O1xuICAgIH1cbiAgfVxufVxuYTpob3ZlciArIC5jdXN0b20tdG9vbHRpcCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmJ0bi1jbG9zZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjbG9zZS1pY29uO1xufVxuXG4uaGVhZGVyLW1haW4tdG9wLCAuY29udGVudHMge1xuICBhOm5vdCguZHJvcGRvd24taXRlbSk6bm90KC5tb3JlLWJ0bik6bm90KC5iYW5uZXJzKSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lLW9mZnNldDogNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50c19jb250cm9scywgLmZvb3Rlci1tYWluLmZvb3Rlci1tYWluLWJveGVzIHtcbiAgYSwgYnV0dG9uIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAkZm9jdXMtb3V0bGluZS1jb2xvci1saWdodDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgIH1cbiAgfVxufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgYSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4gICAgICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICB9XG4gIH1cbn1cblxuYSB7XG4gICYubGluay1oaWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIyYjJiICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmMDAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5AaW5jbHVkZSBzY3JvbGxiYXIoJy50YWJsZS1yZXNwb25zaXZlJywgJGhlaWdodDogYXV0bywgJG1heC1oZWlnaHQ6IHVuc2V0KTtcblxuLmJhbm5lcnMgPiB1bHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDtcbiAgLmJhbm5lci1zbS1pbWd7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgLW1zLWZsZXg6IDAgMCAzMDBweDtcbiAgICAgIGZsZXg6IDAgMCAzMDBweDtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4uY29udGVudHMtbGlzdCB7XG4gIC50aXRsZS1tYWluLXBhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZjFlYSc7XG4gICAgICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRpdGxlLW1haW4tcGFnZSB7XG4gIGZvbnQ6IDcwMCAyOHB4L25vcm1hbCAnU2lnbmlrYSBOZWdhdGl2ZScsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiA3MCU7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1oZWFkZXI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLnRpdGxlLW1haW4tcGFnZS5hdXRob3JpdHkge1xuICAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpO1xuICB9XG59XG5cbiNhdHRhY2htZW50cy1tZXRyaWNzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDVhXCI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vICBzdHlsZSB6YWNpYWduaWV0ZSB6IGlubmVqIGdhbGV6aSAoaW5sbylcblxuQG1peGluIHNxdWFyZSgkcHgpIHt3aWR0aDogJHB4O2hlaWdodDogJHB4O31cbkBtaXhpbiBjaXJjbGUoJHB4KSB7QGluY2x1ZGUgc3F1YXJlKCRweCk7IGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG5AbWl4aW4gY2VudGVyKCRkaXJlY3Rpb24sICRzdGFydCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiAkc3RhcnQ7XG59XG5cbkBtaXhpbiBkaXNwbGF5RigkZGlyZWN0aW9uOiByb3csICRqYzpmbGV4LXN0YXJ0LCAkYWk6ZmxleC1zdGFydCwgJGdhcDowKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICRqYztcbiAgYWxpZ24taXRlbXM6ICRhaTtcbiAgZ2FwOiAkZ2FwO1xufVxuXG5AbWl4aW4gbG9va09mSW5wdXRFbGVtZW50cyAoJGVsZW1lbnRzLi4uKSB7XG4gIEBlYWNoICRlbGVtZW50IGluICRlbGVtZW50cyB7XG4gICAgI3skZWxlbWVudH0ge1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZGVmYXVsdEJ1dHRvbiAoJHBhZGRpbmc6MHB4KSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBAaW5jbHVkZSBiYXNpY0JvcmRlcjtcbiAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOjA7XG4gIHRyYW5zaXRpb246IDI1MG1zO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlciB7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMilcbiAgfVxufVxuXG5AbWl4aW4gd2FybmluZ0J1dHRvbiAoJHBhZGRpbmc6MHB4KSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBAaW5jbHVkZSBiYXNpY0JvcmRlcjtcbiAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrcmVkO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46MDtcbiAgdHJhbnNpdGlvbjogMjUwbXM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cbiAgc3BhbiwgaSB7IGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTsgfVxuXG4gICY6aG92ZXIge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjIpO1xuICAgIHNwYW4saSB7Y29sb3I6IHZhcigtLXRleHQtY29sb3IpfVxuICB9XG59XG5cbkBtaXhpbiBhZGRCdXR0b24gKCRwYWRkaW5nOjBweCkge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgQGluY2x1ZGUgYmFzaWNCb3JkZXI7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2dyZWVuO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46MDtcbiAgdHJhbnNpdGlvbjogMjUwbXM7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyIHtmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTt9XG59XG5cbkBtaXhpbiBiYXNpY0JvcmRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbn1cblxuQG1peGluIGJ1dHRvbkNvbnRyYXN0SG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLmFydGljbGVzIHtcbiAgLy9taW4taGVpZ2h0OiA5MDBweDtcbiAgbWluLWhlaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uLCBjZW50ZXIsIGNlbnRlciwgJGdhcDogMjBweCk7XG4gIG1hcmdpbjogMDtcbiAgJl9faW1wb3J0YW50cyxcbiAgJl9fbm9uaW1wb3J0YW50cyB7XG4gICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uLCBjZW50ZXIsIGNlbnRlciwgMTVweCk7XG4gICAgJi0tc2luZ2xlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlLWJnLWNvbG9yKTtcbiAgICAgIEBpbmNsdWRlIGRpc3BsYXlGKGNvbHVtbiwgJGdhcDogMTVweCk7XG4gICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAuY29udGVudC13cmFwcGVyIHt3aWR0aDogMTAwJTt9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlLWJnLWNvbG9yKTtcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4tdGV4dC1jb2xvcik7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIH1cblxuICAgICAgLml0ZW0taW1nLWFydGljbGUge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgICAgaGVpZ2h0OiAzNSU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEuNztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIHNxdWFyZSgxMDAlKTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYubm8taW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFkYWRhO1xuICAgICAgICAgIGNvbG9yOiAjMjEyMTIxO1xuICAgICAgICAgIEBpbmNsdWRlIGRpc3BsYXlGKGNvbHVtbiwgY2VudGVyLCBjZW50ZXIsIDVweCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmFydGljbGUtaGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZhdmVsYVwiLCBzYW5zLXNlcmlmO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgICAgICAmOmhvdmVyLCAmOnZpc2l0ZWQsICY6bGluayB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICAvL21hcmdpbjogMCAwIDEwcHggMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgQGluY2x1ZGUgZGlzcGxheUYoJGFpOmNlbnRlciwkZ2FwOjVweCk7XG5cbiAgICAgICAgICAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7IGZvbnQtc2l6ZTogLjhyZW19XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmFydGljbGUtY29udGVudCB7Zm9udC1zaXplOiAxcmVtfVxuXG4gICAgICAuYXJ0aWNsZS1yZWFkLW1vcmUge1xuICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXJnaW46IDEwcHggMCAyMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgJl9faW1wb3J0YW50cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAvL2JvcmRlcjogMXB4IHNvbGlkICMwMDAwMDAyYjtcbiAgfVxuXG4gIC5hcnRpY2xlLWNvbnRyb2xzIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjAwcHg7XG4gICAgbWF4LWhlaWdodDogdW5zZXQ7XG4gICAgQGluY2x1ZGUgZGlzcGxheUYocm93LCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0LCAyMHB4KTtcblxuICAgICZfX2ltcG9ydGFudHMsICZfX25vbmltcG9ydGFudHMge1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYocm93LCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0LCAyMHB4KTtcbiAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAmLS1zaW5nbGUgeyBtYXgtd2lkdGg6IHVuc2V0O31cbiAgICB9XG5cbiAgICAmX19pbXBvcnRhbnRzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uKTtcblxuICAgICAgLmFydGljbGUtY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtYmctY29sb3IpO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHg7XG5cbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgZGlzcGxheUYocm93LCBjZW50ZXIsIGNlbnRlciwgMjBweCk7XG5cbiAgICAgICAgJl9fZG90IHtcbiAgICAgICAgICBAaW5jbHVkZSBjaXJjbGUoMjBweCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1iZy1jb2xvcik7XG4gICAgICAgICAgdHJhbnNpdGlvbjogNTAwbXMgY3ViaWMtYmV6aWVyKDAuODgsIC0xLjk3LCAwLjMsIDEuNzUpO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyOCwgMTI4LCAxMjgsIDAuMzQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1zaW5nbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgJi5ub3QtdmlzaWJsZSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfX25vbmltcG9ydGFudHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdhcDogMzBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICYudGhyZWUtY29sdW1ucyB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcikgfTtcblxuICAgICAgJi0tc2luZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC5hcnRpY2xlLWhlYWRlciB7XG4gICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1iZy1jb2xvcik7XG4gICAgICAgICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uLCAkZ2FwOiA1cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5hcnRpY2xlLWNvbnRlbnQgeyBoZWlnaHQ6IDEwMHB4fVxuICAgICAgICBhLnNob3ctbW9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMjAwbXM7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8uYXJ0aWNsZS1oZWFkZXIgeyBoZWlnaHQ6IDc1cHg7IH1cbiAgICB9XG4gIH1cbn1cblxuLmNhbmNlbGF0aW9uX19mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJhc2ljQm9yZGVyO1xuICBwYWRkaW5nOiAyNXB4O1xuXG4gIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG5cbiAgdGV4dGFyZWEgeyBAaW5jbHVkZSBiYXNpY0JvcmRlcjsgfVxufVxuXG5cblxuXG4vLyAgICBHb3JueSBwYW5lbCBsb2dvd2FuaWFcblxuLnVzZXItZGV0YWlscyB7XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgJjpub3QoLmxvZ2dlZE9mKSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAgIGEucHJvZmlsZS1zZXR0aW5ncyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDEwMCUgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIC51c2VyLWRldGFpbHNfX3NlY29uZCB7IG1hcmdpbjogMCBhdXRvOyB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwMHB4KSB7ZmxleC1kaXJlY3Rpb246IHJvdzt9XG4gIH1cblxuICBAaW5jbHVkZSBkaXNwbGF5RigkamM6IGZsZXgtZW5kICFpbXBvcnRhbnQsICRhaTpjZW50ZXIsICRnYXA6IDE1cHggIWltcG9ydGFudCk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICAgJl9fZmlyc3QtLWluZm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcblxuICAgICAgLm1vYmlsZS1oaWRlIHsgZGlzcGxheTogbm9uZSB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkgeyBtYXgtd2lkdGg6IDk1JTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNTM2cHgpIHsgbWF4LXdpZHRoOiAxNDc2cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTY2MHB4KSB7IG1heC13aWR0aDogMTYyMHB4OyB9XG5cbiAgLnByb2ZpbGUtc2V0dGluZ3Mge1xuICAgIGNvbG9yOiAjNDc3MURBO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICAubG9nZ2VkT2Yge1xuICAgIC5wcm9maWxlLXNldHRpbmdzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9naW4tdXNlciwgLmFkbWluLWxvZ291dCB7XG4gICAgcGFkZGluZzogN3B4IDE1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwOWQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwYzU7XG4gICAgICBzY2FsZTogMS4wMztcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgfVxuICAgICY6YWN0aXZlIHtcbiAgICAgIHNjYWxlOiAuOTU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgNXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNDQpO1xuICAgIH1cbiAgfVxuXG4gIC5hZG1pbi1sb2dvdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzIzNzJBO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDMjM3MkE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmUwMDAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyAgT1JORVRBXG4ub3JuZXRhLXRpdGxlIHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTEuOXB4KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGVtcCksIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgfVxuXG4gICZfX3RvcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG4gICZfX2JvdHRvbSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cblxuXG4uYXJ0aWNsZXMge1xuICAqOm5vdCgubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCk6bm90KC5mYSk6bm90KC5mYXMpOm5vdCguZmFyKSB7IGZvbnQtZmFtaWx5OiBcIlNpZ25pa2EgTmVnYXRpdmVcIiwgc2Fucy1zZXJpZiAhaW1wb3J0YW50IH1cbiAgbWluLWhlaWdodDogODAwcHg7XG4gIEBpbmNsdWRlIGRpc3BsYXlGKGNvbHVtbiwgY2VudGVyLCBjZW50ZXIsICRnYXA6IDIwcHgpO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAmX19pbXBvcnRhbnRzLFxuICAmX19ub25pbXBvcnRhbnRzIHtcbiAgICBAaW5jbHVkZSBkaXNwbGF5Rihjb2x1bW4sIGNlbnRlciwgY2VudGVyLCAxNXB4KTtcbiAgICAmLS1zaW5nbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtYmctY29sb3IpO1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uLCAkZ2FwOiAxNXB4KTtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICBtaW4taGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgaDIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50IH1cbiAgICAgIC5jb250ZW50LXdyYXBwZXIge3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7fVxuICAgICAgLmNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZS1iZy1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1tYWluLXRleHQtY29sb3IpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICB9XG5cbiAgICAgIC5pdGVtLWltZyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICBoZWlnaHQ6IDU1JTtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxLjc7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMTAwJSk7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5vLWltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RhZGFkYTtcbiAgICAgICAgICBjb2xvcjogIzIxMjEyMTtcbiAgICAgICAgICBAaW5jbHVkZSBkaXNwbGF5Rihjb2x1bW4sIGNlbnRlciwgY2VudGVyLCA1cHgpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hcnRpY2xlLWhlYWRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41OTM3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAudGhpbm5lciB7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmFydGljbGUtY29udGVudCB7Zm9udC1zaXplOiAxLjZyZW07fVxuXG4gICAgICAuYXJ0aWNsZS1yZWFkLW1vcmUge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcnRpY2xlLWNvbnRyb2xzIHtkaXNwbGF5OiBub25lO31cbiAgJl9faW1wb3J0YW50cyB7XG4gICAgLmFydGljbGUtaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGRpc3BsYXlGKGNvbHVtbiwgJGdhcDogMjBweClcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL2hlaWdodDogMTAwcHg7XG4gICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgQGluY2x1ZGUgZGlzcGxheUYocm93LCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0LCAyMHB4KTtcblxuICAgICZfX2ltcG9ydGFudHMsICZfX25vbmltcG9ydGFudHMge1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYocm93LCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0LCAyMHB4KTtcbiAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAmLS1zaW5nbGUge21heC13aWR0aDogdW5zZXQ7fVxuICAgIH1cblxuICAgICZfX2ltcG9ydGFudHMge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjIpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uKTtcblxuICAgICAgJi0tc2luZ2xlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmFydGljbGUtY29udHJvbHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUtYmctY29sb3IpO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHg7XG5cblxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBAaW5jbHVkZSBkaXNwbGF5Rihyb3csIGNlbnRlciwgY2VudGVyLCAyMHB4KTtcbiAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjIpO1xuXG5cbiAgICAgICAgJl9fZG90IHtcbiAgICAgICAgICBAaW5jbHVkZSBjaXJjbGUoMjBweCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1iZy1jb2xvcik7XG4gICAgICAgICAgdHJhbnNpdGlvbjogNTAwbXMgY3ViaWMtYmV6aWVyKDAuODgsIC0xLjk3LCAwLjMsIDEuNzUpO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyOCwgMTI4LCAxMjgsIDAuMzQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1zaW5nbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTBweCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IDI1MG1zO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcblxuICAgICAgICAmLm5vdC12aXNpYmxlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ub25pbXBvcnRhbnRzIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG4gICAgICBnYXA6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiB1bnNldDtcblxuICAgICAgJi0tc2luZ2xlIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAuYXJ0aWNsZS1oZWFkZXIge2ZvbnQtc2l6ZTogMXJlbTt9XG4gICAgICAgIC5hcnRpY2xlLWNvbnRlbnQgeyBoZWlnaHQ6IDEwMHB4fVxuICAgICAgfVxuXG4gICAgICAuYXJ0aWNsZS1oZWFkZXIge1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubm8taW1wb3J0YW50cyB7XG4gICAgaGVpZ2h0OiB1bnNldDtcbiAgICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIC5hcnRpY2xlc19fbm9uaW1wb3J0YW50cyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByLWhhbGYge1xuICAuYXJ0aWNsZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vaGVpZ2h0OiAxMDBweDtcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgICBAaW5jbHVkZSBkaXNwbGF5Rihjb2x1bW4sIDIwcHgpO1xuXG4gICAgJl9faW1wb3J0YW50cywgJl9fbm9uaW1wb3J0YW50cyB7XG4gICAgICBAaW5jbHVkZSBkaXNwbGF5Rihyb3csIGZsZXgtc3RhcnQsIGZsZXgtc3RhcnQsIDIwcHgpO1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICYtLXNpbmdsZSB7bWF4LXdpZHRoOiB1bnNldDt9XG4gICAgfVxuXG4gICAgLmFydGljbGVzX19ub25pbXBvcnRhbnRzIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMjUwcHggMjUwcHg7XG4gICAgICBnYXA6IDIwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuXG4uc2VlLWFsbC1hcnRpY2xlcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTVweCAyNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1vbi1tYWluKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDEuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3Itb24tbWFpbik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgfVxuICAmOmFjdGl2ZSB7IHNjYWxlOiAuOTggfVxufVxuXG5cbi50aXRsZS1tYWluLXBhZ2UubmV3c2ZlZWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxZWEnO1xuICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbnNlY3Rpb24uc2luZ2xlLWFydC5vcm5ldGEge1xuICAuY29udGVudHNfY29udHJvbHMgeyBkaXNwbGF5OiBub25lIH1cbiAgLmNvbnRlbnRzLXRpdGxlIHsgZGlzcGxheTogbm9uZX1cbn1cblxuLnNob3J0Y3V0cy5vcm5ldGEucGlsbCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGNsZWFyOiBib3RoO1xuICAudGl0bGUtbWFpbi1wYWdlIHtkaXNwbGF5OiBub25lO31cblxuICB3aWR0aDogMTAwJTtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjMUE3QjQ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGlsbC1iZztcbiAgYm9yZGVyLXJhZGl1czogODBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBpbGwtYm9yZGVyLWNvbG9yO1xuXG4gIC5zaG9ydGN1dHMtZ3JvdXAge1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSBkaXNwbGF5Rihjb2x1bW4sIGZsZXgtc3RhcnQsIGNlbnRlciwgJGdhcDoxMHB4KTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdhcDogMTVweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgIEBpbmNsdWRlIGRpc3BsYXlGKHJvdywgc3BhY2UtYmV0d2Vlbiwgbm9ybWFsKTtcbiAgICB9XG4gICAgJi1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgICogeyBtYXJnaW46IDA7IGZvbnQtZmFtaWx5OiBcIlNpZ25pa2EgTmVnYXRpdmVcIiwgc2Fucy1zZXJpZjsgY29sb3I6ICR3aGl0ZSB9XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICBAaW5jbHVkZSBkaXNwbGF5RigkZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudCwgJGpjOmNlbnRlciwgJGFpOmNlbnRlciwgJGdhcDogMjBweCk7XG4gICAgICAmLWxpbmsge1xuICAgICAgICBjb2xvcjogJHBpbGwtdGV4dCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgZGlzcGxheUYoJGRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQsICRqYzpjZW50ZXIsICRhaTpjZW50ZXIsICRnYXA6IDIwcHgpO1xuXG4gICAgICAgIHNwYW4geyBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgICAgICBjb2xvcjogJHBpbGwtdGV4dCAhaW1wb3J0YW50O31cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwaWxsLWJnICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbm1haW4jbWFpbi1jb250ZW50ID4gZGl2LCBtYWluI21haW4tY29udGVudCA+IHNlY3Rpb24gIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm90aGVyQmlwcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdhcDogMTVweDtcbn1cblxuLm90aGVyQmlwcy13cmFwcGVyIHsgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG5cbi8vICAgIE1BWk9XSUVDS0lFIC0gZ29ybnkgcGFzZWsgZnJvbnQgdXNlclxuXG4udG9wLWZyb250IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdhcm5pbmc7XG4gIEBpbmNsdWRlIGZsZXgoY2VudGVyLCAkZGlyOmNvbHVtbiwgJGdhcDogMTBweCk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgIEBpbmNsdWRlIGZsZXgoJGRpcjogcm93LCAkamM6IHNwYWNlLWJldHdlZW4sICRhaTogY2VudGVyICk7XG4gIH1cblxuICAmX19saW5rcyB7XG4gICAgQGluY2x1ZGUgZmxleChjZW50ZXIsICRkaXI6Y29sdW1uLCAkZ2FwOiAxMHB4KTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NjBweCkge1xuICAgICAgQGluY2x1ZGUgZmxleCgkZGlyOnJvdywgJGpjOiBmbGV4LXN0YXJ0LCAkYWk6Y2VudGVyKTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAwIDE3cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvci1ob3Zlcik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NjBweCkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYmx1ZS10ZXh0LWNvbG9yO31cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19hY3Rpb25zIHtcbiAgICBAaW5jbHVkZSBmbGV4KCRhaTpjZW50ZXIsICRnYXA6IDIwcHgpO1xuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XG4gICAgICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tbGluay1jb2xvci1ob3Zlcik7XG4gICAgICAgIHNjYWxlOiAxLjE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbG9nb3V0LFxuICAgICYtLWxvZ2luIHtcbiAgICAgIEBpbmNsdWRlIGRpbWVuc2lvbnMoJHBhZGRpbmc6IDdweCAxNXB4LCAkcmFkaXVzOiA2cHgsICRoZWlnaHQ6IGZpdC1jb250ZW50KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIC8vYm9yZGVyOiAxcHggc29saWQgI0MyMzcyQTtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI0MyMzcyQTtcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRyYW5zaXRpb246IDI1MG1zO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2JlMDAwMDtcbiAgICAgICAgc2NhbGU6IDEuMDM7XG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICB9XG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHNjYWxlOiAuOTU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggMXB4IHJnYmEoMCwgMCwgMCwgMC40NCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbG9naW4ge1xuICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yLXNlY29uZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbG9nb3V0IHtcbiAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0MyMzcyQTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDMjM3MkE7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JlMDAwMDtcbiAgICAgICAgc2NhbGU6IDEuMDM7XG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLW1haW4tdG9wIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgLnNpdGUtdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGZsZXgoY2VudGVyLCBjb2x1bW4sICRnYXA6IDEwcHgpO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgICAgIC5oZWFkZXItbGVmdCwgLmxvZ28td3JhcHBlciB7d2lkdGg6IDI1JTt9XG4gICAgICBoMSB7d2lkdGg6IDUwJTsgfVxuICAgIH1cbiAgICAubG9nby13cmFwcGVyIHtcbiAgICAgIEBpbmNsdWRlIGZsZXggKCRqYzogZmxleC1zdGFydCk7XG4gICAgfVxuICAgIC8vaDEgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudH1cbiAgICAuaGVhZGVyLWxlZnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gICAgICAmLXRvb2xiYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O31cbiAgICAgIGZvcm0ge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBncmV5O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGlucHV0LCBidXR0b24geyBib3JkZXI6IG5vbmUgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5oMSNtYWluLXRpdGxlIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xufVxuXG4uY29udGVudHMtbGlzdC1uZXdzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGgyIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICMwMjAyMDI7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDI4LjhweDtcbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50cyAuY29udGVudHMtdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgLy9jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uY29udGVudHNfY29udHJvbHMsIC5ib2R5IC5jb250ZW50c19jb250cm9scyBhIHtcbiAgY29sb3I6IHZhcigtLW1haW4tY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gUkVKRVNUUkFDSkFcblxuLnJlZ2lzdGVyLXNpdGUge1xuICAub2ZmaWNlLXRpdGxlX190ZXh0IHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdTaWduaWthIE5lZ2F0aXZlJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG59XG4ub2ZmaWNlLXJlZ2lzdGVyIHtcblxuICAudGl0bGUtbWFpbi1wYWdlIHtcbiAgICAudGl0bGUtdGV4dCB7IG1pbi13aWR0aDogZml0LWNvbnRlbnQ7IH1cbiAgICAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7Zm9udC1zaXplOiAzNnB4O31cbiAgfVxuXG4gIGZvcm0ge1xuICAgIC5tYi0zLCAuaW5wdXQtbGFiZWwtZmllbGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIGxhYmVsOm5vdChbZm9yPVwic2Nob2xhcl9hZ3JlZVRlcm1zXCJdKSB7XG4gICAgICAgIHRyYW5zaXRpb246IDI1MG1zO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcblxuICAgICAgICAmLnRyYW5zbGF0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdG9wOiAtMTNweDtcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIGNvbG9yOiBncmV5O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKSwgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0VENERBO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjc2Nob2xhcl9mcm9udFVzZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDE1cHg7XG4gICAgfVxuICB9XG59XG5cbi5yZWdpc3Rlci1jb250YWluZXIge1xuICAudGl0bGUtbWFpbi1wYWdlX19yb2RvIHtcbiAgICBmb250LWZhbWlseTogJ1NpZ25pa2EgTmVnYXRpdmUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIC5yb2RvLWNvbnRlbnR7XG4gICAgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgZm9udC1mYW1pbHk6ICdTaWduaWthIE5lZ2F0aXZlJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ2FwOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgfVxufVxuXG4ucmVnaXN0ZXItZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTVweDtcbiAgJl9fcm93IHtcbiAgICAubWItMyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTVweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gIH1cblxuICAuaGVscC10ZXh0IHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gIH1cblxuICAuYnV0dG9uLXBvc2l0aW9uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwaWxsLWJnO1xuICAgICAgY29sb3I6ICRwaWxsLXRleHQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICAgIHRyYW5zaXRpb246IDI1MG1zO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAxcHggcmdiYSgwLCAwLCAwLCAwLjM4KTtcblxuICAgICAgJjpob3ZlciB7dHJhbnNmb3JtOiBzY2FsZSgxLjAzKTt9XG4gICAgICAmOmFjdGl2ZSB7dHJhbnNmb3JtOiBzY2FsZSguOTcpO31cbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWhlYWRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmJhbm5lci1pdGVtLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmJhbm5lci1pdGVtLWNvbnRhaW5lciB7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDYwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgcG9pbnRlci1ldmVudHM6IGluaXRpYWw7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlcm8ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmX19pbWcge1xuICAgICAgICB0b3A6IC0zMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCAzcHggNHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMjIpO1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJl9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjBweCAzMHB4IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czo4cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMi4xMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgcGFkZGluZzogN3B4IDE1cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuXG4gICAgICAgICAgJjpob3ZlciB7IHRyYW5zZm9ybTogc2NhbGUoMS4wMykgfVxuICAgICAgICAgICY6YWN0aXZlIHsgdHJhbnNmb3JtOiBzY2FsZSguOTcpIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaG9ydGN1dHMgLnNob3J0Y3V0cy1ncm91cC1pdGVtLWxpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGlsbC1iZztcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4uZWRpdC1mb3JtIHtcbiAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgaDEge2ZvbnQtc2l6ZTogMS44cmVtO31cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICBwIHsgZm9udC13ZWlnaHQ6IDMwMCB9XG5cbiAgJl9fZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG5cbiAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTBweCAwO1xuXG4gICAgICAvLyNlX2J1ZGdldF9wcm9qZWN0X2Zvcm1fdXNlcl9mcm9udFVzZXIge1xuICAgICAgICAubWItMzpub3QoZmllbGRzZXQpLCAuaW5wdXQtbGFiZWwtZmllbGQge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMjBweCAxZnI7XG4gICAgICAgICAgZ2FwOiAxNXB4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pLCBzZWxlY3Qge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW5wdXRbdHlwZT1cImRhdGVcIl0ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJiA+IHAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgLy99XG5cbiAgICAgICYuY29zdHMge1xuICAgICAgICAuanMtZXNzZW5zaWFsQ29zdHMtYWRkLFxuICAgICAgICAuanMtcHJvbW90aW9uYWxDb3N0cy1hZGQsXG4gICAgICAgIC5qcy1hZG1pbmlzdHJhdGl2ZUNvc3RzLWFkZCB7XG4gICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mb290ZXItYmFja2dyb3VuZCk7XG4gICAgICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMjUwbXM7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBzcGFuLmZhIHsgY29sb3I6IHZhcigtLWZvb3Rlci1iYWNrZ3JvdW5kKSB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWxhYmVsLWZpZWxkIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIwMHB4IDFmcjtcbiAgICAgICAgICBtYXJnaW46IDVweCAwO1xuXG4gICAgICAgICAgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEgeyBncmlkLWNvbHVtbjogc3BhbiAxOyB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGVsZXRlLWJ0biB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgY29sb3I6ICM5MzAwMDA7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTMwMDAwO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBtYXJnaW46IDVweCAwIDEwcHggMDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWZpbmFscyB7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44OCk7XG4gICAgICBmb250LXNpemU6IC44NXJlbTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1yZW1lbWJlciB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG5cbiAgLnBvc2l0aW9uZXItMCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG5cbiAgICAjZV9idWRnZXRfcHJvamVjdF9zdWJtaXQge1xuICAgICAgcGFkZGluZzogN3B4IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIHRyYW5zaXRpb246IDI1MG1zO1xuXG4gICAgICAmOmhvdmVyIHt0cmFuc2Zvcm06IHNjYWxlKDEuMDMpfVxuICAgICAgJjphY3RpdmUge3RyYW5zZm9ybTogc2NhbGUoLjk3KX1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyAgb3N0eWxvd2FuaWUgZm9ybXVsYXJ6YVxuXG4ucHJvamVjdC1saXN0LWJvZHlfX2J1dHRvbnMge3BhZGRpbmc6IDE1cHggMDt9IiwiLmN1c3RvbS10b29sdGlwIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSkgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDgwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiA1cHggN3B4O1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiAyNTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMTAwMDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTtcblxuICAmI3Rvb2x0aXAtZm9yLWxldHRlci1zcGFjaW5nLW5vcm1hbCwgJiN0b29sdGlwLWZvci1sZXR0ZXItc3BhY2luZy1iaWcge1xuICAgIGJvdHRvbTogdW5zZXQ7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAmIHtcbiAgICAgIGJvdHRvbTogLTUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgKiA+IGE6Zm9jdXMgKyAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuIGEsIGJ1dHRvbiB7XG4gICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgJiA+IC5jdXN0b20tdG9vbHRpcCB7XG4gICAgICAgb3BhY2l0eTogMTtcbiAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICB9XG4gICB9XG4gfSIsIkBpbXBvcnQgJy4uLy4uL19taXhpbnMnO1xuXG5uYXYuYmFubmVycyB7XG4gICAgdWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgICAgICAgICAgICAgJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiAuYmFubmVyLWltZ3tcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3Bhbjpub3QoLmN1c3RvbS10b29sdGlwKXtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2Mi41cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5iYW5uZXItc20taW1nLXRpdGxlKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5iYW5uZXItc20taW1ne1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYuYmFubmVyLXNtLWltZy10aXRsZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3NXB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYmFubmVyLXNtIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5ib2R5IC5iYW5uZXJzLCBmb290ZXIgLmJhbm5lcnMsIC5iYW5uZXIgLmJhbm5lcnMge1xuICAgIC5iYW5uZXItaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgc3BhbntcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGEsIGE6aG92ZXJ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgJi1pbWcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICA+IC5iYW5uZXItaW1ne1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYmFubmVyLWl0ZW0tbGlua3tcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgICYuYmFubmVyLXNte1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2Mi41cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5iYW5uZXItc20taW1nLXRpdGxle1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjIuNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgJi5iYW5uZXItd2lkZSBpbWd7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZvb3RlciAuYmFubmVyc3tcbiAgICAuYmFubmVyLWl0ZW17XG4gICAgICAgIC5iYW5uZXItaXRlbS1pbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiA2Mi41cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgPiAuYmFubmVyLWltZ3tcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKnBvcFVwKi9cbi5tb2RhbC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHByaW1hcnk7XG59XG5cbi8qYm9ubmVyIGhlYWRlciAqL1xuLmJhbm5lci1oZWFkZXJ7XG4gICAgLmJhbm5lci1pdGVtIHtcbiAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKmJhbm5lcnMqL1xuLmJhbm5lci1hbmltYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAub3dsLXBsYXktY29udHJvbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgJi1idG4ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYmFubmVyLWl0ZW0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLmJhbm5lci1pdGVtLWltZyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC8vbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG59XG4uYmFubmVyLW1pZGRsZS10b3B7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLmJhbm5lci1taWRkbGUtdG9wID4gKiB7XG4gICAgJjpub3QoLm1pZGRsZS1uYXYpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG59XG5mb290ZXIsICAuYmFubmVyLW1pZGRsZS1ib3R0b217XG4gICAgLmJhbm5lcnN7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxufVxuLmJhbm5lci1taWRkbGUtYm90dG9te1xuICAgIC5iYW5uZXItaXRlbTpvbmx5LWNoaWxke1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAuYmFubmVyLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDcuNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3LjVweDtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNy41cHgpO1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybil7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgICAgICAuYmFubmVyLWl0ZW0ge1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZvb3RlcntcbiAgICAuYmFubmVyLWl0ZW17XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3LjVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3LjVweDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KXtcbiAgICAgICAgLmJhbm5lci1pdGVtIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNy41cHgpO1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybil7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogODUycHgpIHtcbiAgICAgICAgLmJhbm5lci1pdGVtIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAxMHB4KTtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzEpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24pe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4NTJweCkge1xuICAgICAgICAuYmFubmVyLWl0ZW0ge1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxMS41cHgpO1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4rMSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bil7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFubmVycy1mb290ZXI6ZW1wdHkgeyBkaXNwbGF5OiBub25lIH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBuYXYuYmFubmVycyB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NTBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgICAgICAgICAgICBsaSB7IG1hcmdpbjogMCAhaW1wb3J0YW50fVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NTBweCkge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnNraXAtbGlua3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC00cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIHotaW5kZXg6IDEwMDAwO1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBjbGlwOiBhdXRvO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufSIsIi5iYW5uZXItaGVhZGVyIHtcbiAgbWF4LXdpZHRoOiAxOTIwcHg7XG4gIC8vYm9yZGVyLXRvcDogMnB4IHNvbGlkICRwcmltYXJ5O1xuICBib3JkZXItdG9wOiBub25lO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAuYmFubmVyLWl0ZW0ge1xuICAgIC5iYW5uZXItaXRlbS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICYtaW1nIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgLy96LWluZGV4OiAtMTtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIC5iYW5uZXItaXRlbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi1pbWcge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5iYW5uZXItYW5pbWF0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAub3dsLXBsYXktY29udHJvbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMzBweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgei1pbmRleDogMTAwMDtcblxuICAgICAgJi1idG4ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIC5iYW5uZXItaXRlbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi1pbWcge1xuICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIudG9wLW1lbnUge1xuICAubmF2YmFyLW5hdiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cy1vdXRsaW5lLWNvbG9yLWxpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAvL2ZsZXg6IDEgMSBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRncmF5LTIwMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS0yMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG5cbiAgICAgICAgICAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5tYWluLXBhZ2UtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgI2Ryb3Bkb3duTWVudUJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTIwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMnB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cy1vdXRsaW5lLWNvbG9yLWxpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubWVudXRvcG1vcmUge1xuICAgICAgICAjbWVudXRvcG1vcmUtZWxlbWVudHMge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcHJpbWFyeTtcblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAubmF2LWl0ZW0ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWU5ZTk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG5cbiAgICAubWVudS1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gIFNVQk1ORU5VXG5AbWl4aW4gZGlzcGxheUYoJGRpcmVjdGlvbjpyb3csICRqYzogZmxleC1zdGFydCwgJGFpOiBmbGV4LXN0YXJ0LCAkZ2FwOiAwKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICRqYztcbiAgYWxpZ24taXRlbXM6ICRhaTtcbiAgZ2FwOiAkZ2FwO1xufVxuXG4uc3ViTWVudS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xuXG4gICYuc2hvd24ge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MXB4KSB7ZGlzcGxheTogaW5pdGlhbDt9XG4gIH1cbn1cblxuLnN1Yk1lbnUge1xuICAmLmNvbnRhaW5lci14bCB7XG4gICAgbWFyZ2luOiAwIC43NXJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDk1JSAtIDEuNXJlbSk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAqIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC10ZW1wKSwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZVxuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjI3KTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIC8vQGluY2x1ZGUgZGlzcGxheUYoJGdhcDogMjBweCk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzUwcHggMzAwcHggMWZyO1xuICBnYXA6IDMwcHg7XG5cbiAgJl9fZmlyc3Qge1xuICAgIEBpbmNsdWRlIGRpc3BsYXlGKCRnYXA6IDIwcHgsICRhaTogY2VudGVyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogLTIwcHg7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWYzYmY7XG4gICAgfVxuXG4gICAgJi0taWNvbiB7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYoJGpjOiBjZW50ZXIsICRhaTogY2VudGVyKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLXRleHQge1xuICAgICAgQGluY2x1ZGUgZGlzcGxheUYoY29sdW1uLCBjZW50ZXIpO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAuc3ViTWVudS1uYW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGVtcCksIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM4LjRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgLnN1Yk1lbnUtc3VibmFtZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRlbXApLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNC41NnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xpbmtzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgbGkgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRlbXApLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7IC8qIDE1MCUgKi9cbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgICB0cmFuc2l0aW9uOiAxNTBtcztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyY6OmJlZm9yZSB7XG4gICAgLy8gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vICBjb250ZW50OiAnJztcbiAgICAvLyAgdG9wOiAwO1xuICAgIC8vICBsZWZ0OiAtMjBweDtcbiAgICAvLyAgd2lkdGg6IDE4cHg7XG4gICAgLy8gIGJhY2tncm91bmQtY29sb3I6ICNmZWYzYmY7XG4gICAgLy99XG4gIH1cblxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIHAge1xuICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC10ZW1wKSwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMjFweDsgLyogMTUwJSAqL1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgIH1cbiAgfVxuXG59IiwiQGltcG9ydCAnc2tpcGxpbmtzJztcbkBpbXBvcnQgJy4uLy4uL2NvbXBvbmVudHMvYmFubmVycy9tYWluQmFubmVyJyxcbidfaG9yaXpvbnRhbF9uYXYnO1xuXG4uaGVhZGVyIHtcbiAgJi1tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzM2cHgpIHtcbiAgICAgICYtdG9wIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubG9nby13cmFwcGVyIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbiAgLmltZyB7XG4gICAgLmxvZ28tYmlwLWxpbmsge1xuICAgICAgLy9AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLy8gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAvLyAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgLy99XG5cbiAgICAgICYubGV0dGVyLXNwYWNpbmctb24ge21hcmdpbi1yaWdodDogMTVweDt9XG5cbiAgICAgIC5sb2dvLWJpcCB7XG4gICAgICAgIG1pbi13aWR0aDogODBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nby1pY29uIHtcbiAgICAgIG1heC1oZWlnaHQ6IDgzcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAmOm5vdCgubG9nby1iaXApIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICAgICYubGV0dGVyLXNwYWNpbmctb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3LjlweCkge1xuICAgICAgLmxvZ28taWNvbiB7XG4gICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWFpbi10aXRsZSB7XG4gICAgY29sb3I6ICRoZWFkZXJzLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIG1heC13aWR0aDogNzAlO1xuICAgIH1cblxuICAgIC53aGF0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLndoZXJlIHtcbiAgICAgIC8vY29sb3I6IHZhcigtLWZvbnQtdGl0bGUtd2hlcmUtY29sb3IsIHZhcigtLW1haW4tY29sb3IpKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC10aXRsZS13aGVyZS1zaXplLCAycmVtKTtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRpdGxlLXdoZXJlKSwgdmFyKC0tZm9udCksIFNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuc3ViIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1mb250LXRpdGxlLXN1Yi1jb2xvciwgdmFyKC0tbWFpbi1jb2xvcikpO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXRpdGxlLXN1Yi1zaXplLCAxLjhyZW0pO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGUtc3ViKSwgdmFyKC0tZm9udCksIFNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgLmhlYWRlci1sZWZ0LXRvb2xiYXIge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktMjAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC41dnc7XG4gICAgICAgIHRvcDogNjVweDtcbiAgICAgIH1cblxuICAgICAgQGltcG9ydCBcIl9hY2Nlc3NpYmlsaXR5X3BhbmVsXCI7XG4gICAgICBAaW1wb3J0ICdfc3dpdGNoZXInO1xuICAgIH1cblxuICAgIC5oZWFkZXItc2VhcmNoIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgJi1idG4ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgY29sb3I6ICRoZWFkZXJzLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgICBvdXRsaW5lLW9mZnNldDogLTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAuY3VzdG9tLXRvb2x0aXAge1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIG1pbi13aWR0aDogNzBweDtcbiAgICAgICAgICB0b3A6IDk1JTtcbiAgICAgICAgICByaWdodDogMXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtaW5wdXQge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNjb29raWVzLWluZm8ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xuICBjb2xvcjogI2ZmZjtcbiAgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAmID4gcCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTE1cHgpO1xuICAgIH1cbiAgfVxufVxuXG5pbWcuYWRtaW4tbG9nbyB7bWF4LXdpZHRoOiAxMjBweCB9XG5cbmJvZHkge1xuICAmLm1iaXAge1xuICAgIGhlYWRlciB7XG4gICAgICAuaGVhZGVyLWxvZ28ge1xuICAgICAgICAubWFpbi10aXRsZSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICAgICAgZmxleDogMCAwIGNhbGMoNjAlIC0gMzBweCk7XG4gICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAubG9nby1pY29uLCAubG9nby1iaXAgeyBtYXgtaGVpZ2h0OiA4NXB4IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgICAgIC5pbWcsIC5tYWluLXRpdGxlIHsgZmxleDogMCAwIGF1dG8gfVxuICAgICAgICAgIC5tYWluLXRpdGxlIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50c19jb250cm9scyB7XG4gICAgICBidXR0b246YmVmb3JlLCBidXR0b24jbWV0cmljcy1idG46YmVmb3JlIHsgbWFyZ2luLXJpZ2h0OiAwIH1cbiAgICB9XG5cbiAgICBoZWFkZXIgLmhlYWRlci1sb2dvIC5tYWluLXRpdGxlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgfVxuICAgIGhlYWRlciAuaGVhZGVyLWxvZ28gLmltZyAubG9nby1pY29uLCBoZWFkZXIgLmhlYWRlci1sb2dvIC5pbWcgLmxvZ28tYmlwIHsgIG1heC1oZWlnaHQ6IDEyMHB4IH1cblxuICAgIGhlYWRlciAuaGVhZGVyLWxvZ28gLm1haW4tdGl0bGUgeyBmbGV4OiAwIDAgY2FsYyg2MCUgLSAzMHB4KSB9XG4gICAgaGVhZGVyIC5oZWFkZXItbG9nbyAuaW1nIHsgZmxleDogMCAwIDIwJSAgfVxuXG4gICAgLmNvbnRlbnRzX2NvbnRyb2xzIGJ1dHRvbjpiZWZvcmUsIC5jb250ZW50c19jb250cm9scyBidXR0b24jbWV0cmljcy1idG46YmVmb3JlIHsgbWFyZ2luLXJpZ2h0OiAwIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICBoZWFkZXIgLmhlYWRlci1sb2dvIC5pbWcgeyBmbGV4OiAwIDAgYXV0byB9XG4gICAgICBoZWFkZXIgLmhlYWRlci1sb2dvIC5tYWluLXRpdGxlIHsgd2lkdGg6IDEwMCU7IGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgfVxuXG4gICAgaGVhZGVyIC5oZWFkZXItbG9nbyAuaW1nIC5sb2dvLWljb24sIGhlYWRlciAuaGVhZGVyLWxvZ28gLmltZyAubG9nby1iaXAge1xuICAgICAgbWF4LWhlaWdodDogODVweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgYm9keS5tYmlwIGhlYWRlciAuaGVhZGVyLWxvZ28gLmltZyAubG9nby1iaXAsIGJvZHkubWJpcCBoZWFkZXIgLmhlYWRlci1sb2dvIC5pbWcgLmxvZ28taWNvbiB7XG4gICAgbWF4LWhlaWdodDogNjBweDtcbiAgfVxufSIsIi5hY2Nlc3NpYmlsaXR5LXBhbmVsIHtcbiAgJi1kcm9wZG93bi1idG4ge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBjb2xvcjogJGhlYWRlcnMtY29sb3IgIWltcG9ydGFudDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmFjY2Vzc2liaWxpdHktbWVudSB7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIH1cblxuICAubWVudS1yZXNldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcZjBlMic7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAmLWRyb3Bkb3duLW1lbnUge1xuICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtY29udHJhc3Qge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgY29sb3I6ICRkZWVweWVsbG93O1xuICAgIH1cblxuICAgICYtc2VwYXJhdGUtdGl0bGUge1xuICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cblxuICAgICYtaXRlbXMtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgfVxuXG4gICAgLmpzLXJlc2l6ZS1iaWcge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgIH1cblxuICAgIC5qcy1yZXNpemUtbWlkZGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cblxuICAgIC5qcy1yZXNpemUtc21hbGwge1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgfVxuXG4gICAgLm1lbnUtbGlua3MtaGlsaWdodCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgLm1lbnUtbGV0dGVyLXNwYWNpbmctbWlkbGUge1xuICAgICAgcGFkZGluZzogOXB4O1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1sZXR0ZXItc3BhY2luZy1iaWcge1xuICAgICAgcGFkZGluZzogNXB4O1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkZHJvcGRvd24tbGluay1jb2xvcjtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnN3aXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTVweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gIGlucHV0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcblxuICAgICYgKyAuc2xpZGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xuICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLjRzO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxODUnO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICByaWdodDogNnB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45MzhyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgICYgKyAuc2xpZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMXB4KTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMxcHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJ1xcZjE4Nic7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGxlZnQ6IDZweDtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjkzOHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgJiArIC5zbGlkZXIge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyLW1haW4ge1xuICBjb2xvcjogJGZvb3Rlci10ZXh0LWNvbG9yO1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICYtYm94ZXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItYmc7XG4gICAgcGFkZGluZzogNDVweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1ib3gge1xuICAgICAgJi5jb2x1bW5zLTIge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jb2x1bW5zLTMge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIGxnKSB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jb2x1bW5zLTQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIHhsKSB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcGFkZGluZzogMCAzMHB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgKiB7XG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZm9vdGVyLWljb25zO1xuICAgICAgfVxuXG4gICAgICAmLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4bCkge1xuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMyksICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1tYWluLWJveGVzLWxpbmstaWNvbiB7XG4gICAgICBjb2xvcjogJGZvb3Rlci1pY29ucztcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICYuZmEtc2l0ZW1hcCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICRmb290ZXItaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWNvbG9yKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWxpbmstY29sb3ItaG92ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgJi1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC5ib3R0b20tbGVmdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgJi12ZXJzaW9uIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9keS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLW1haW4tYm90dG9tIHsgY29sb3I6ICRibHVlLXRleHQtY29sb3IgIWltcG9ydGFudCB9XG5cbi5mb290ZXItYWxsIHtcbiAgY29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZztcblxuICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgLy9AaW5jbHVkZSBkaXNwbGF5RigkYWk6Y2VudGVyLCAkZ2FwOiAxMHB4KTtcbiAgICBAaW5jbHVkZSBmbGV4ICgkZGlyOiBjb2x1bW4sICRnYXA6IDIwcHgsICRqYzogY2VudGVyKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IC41ZnIgMWZyIC41ZnI7XG4gICAgfVxuICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAmX19hZGRyZXNzIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGRpcjogY29sdW1uLCAkYWk6Y2VudGVyKTtcbiAgICAgIGgyLCBoMywgLmFkZHJlc3NfX3RleHQgeyB0ZXh0LWFsaWduOiBjZW50ZXIgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NTBweCkge1xuICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgICAgfVxuICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAyMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgLm1lbnUtdGl0bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250OiA0MDAgMTZweC8yNHB4ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgICAgLm1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udDogNzAwIDE2cHgvMjRweCAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb290ZXItYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJnLWJvdHRvbTtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogMzBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiA1cHg7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuXG4gICAgICBzdmcgeyBmaWxsOiB3aGl0ZSB9XG4gICAgfVxuXG4gIH1cbn0iLCJAbWl4aW4gdW5pdC10YWJsZSgpIHtcbiAgLnNob3ctaW4tdHJlZSB7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTRweDtcbiAgfVxuICAudW5pdC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JnYW5pemF0aW9uYWxfc3RydWN0dXJlX3RvZ2dsZV9iZztcbiAgfVxuICAudW5pdC10YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yZ2FuaXphdGlvbmFsX3N0cnVjdHVyZV90YWJsZV9iZztcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRvcmdhbml6YXRpb25hbF9zdHJ1Y3R1cmVfdGFibGVfYm9yZGVyO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG5cbiAgICA+IDpub3QoY2FwdGlvbikgPiAqIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJG9yZ2FuaXphdGlvbmFsX3N0cnVjdHVyZV90YWJsZV9ib3JkZXI7XG4gICAgfVxuXG4gICAgdGJvZHkge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgICB3aWR0aDogMjMwcHg7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gc2VhcmNoLWNvbnRlbnQoKSB7XG4gICNtYWluLWNvbnRlbnQge1xuICAgIC5zZWFyY2gtY29udGVudHMtbGlzdC1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgLmNvdW50IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRlbnRzLXRpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtZm9ybSB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICBmb3JtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuXG4gICAgICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHNlbGVjdC1hcnJheSk7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAkZm9jdXMtb3V0bGluZS1jb2xvcjtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgICAgICAgICAgICAgIC5zZWFyY2gge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgLmZvcm0tbGFiZWwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuZm9ybS1jb250cm9sLCAuZm9ybS1zZWxlY3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgJlt0eXBlPSdkYXRlJ10ge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm11bHRpZGF0ZXtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDMlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjb250ZW50TWFpblBhZ2VJdGVtKCkge1xuICBhcnRpY2xlIHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpIHtcbiAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJG1lbnUtaXRlbS1ib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hZGRvbi10YWJsZSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG4gIGFydGljbGUsIC5hZGRvbi10YWJsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHh4bCkge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuICAuY29udGVudHMtbW9yZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRwcmltYXJ5O1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbn1cblxuQG1peGluIGNvbnRlbnQoKSB7XG4gIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDMwcHggMzBweCAzMHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgcGFkZGluZzogMCAxNXB4IDE1cHggMTVweDtcbiAgICB9XG4gICAgLmNvbnRlbnQtYXV0aG9yaXR5e1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDg0cHgpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMlIC0gMTBweCk7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ4M3B4KSB7XG4gICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIH1cbiAgICAgIC5hdXRob3JpdGllcy1ncm91cC1pdGVtLWxpbmstaW1ne1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmF1dGhvcml0aWVzLWdyb3VwIHtcbiAgICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcbiAgICAgIC0tYnMtZ3V0dGVyLXk6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ4M3B4KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmNvbnRlbnQtYXV0aG9yaXR5e1xuICAgICAgICBtYXJnaW46IDEwcHg7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE0ODRweCkge1xuICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzEpe1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKDNuKXtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0ODNweCkge1xuICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSl7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoMm4pe1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICY6bnRoLWNoaWxkKG4rMSl7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQobil7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3JvbGxiYXIoJGNoaWxkLCAkaGVpZ2h0LCAkbWF4LWhlaWdodCkge1xuICAjeyRjaGlsZH0ge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICBzY3JvbGxiYXItY29sb3I6ICRwcmltYXJ5ICRncmF5LTIwMDtcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gIH1cblxuICAjeyRjaGlsZH06Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogNXB4O1xuICB9XG5cbiAgI3skY2hpbGR9Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjAwO1xuICB9XG5cbiAgI3skY2hpbGR9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHByaW1hcnksICRwcmltYXJ5KTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1ib3R0b20oJGNoaWxkLCAkdG9wLXdpZHRoLCAkYm90dG9tLXdpZHRoLCAkY29sb3IpIHtcbiAgI3skY2hpbGR9IHtcbiAgICBib3JkZXItdG9wOiAkdG9wLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAkYm90dG9tLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gbWFpblBhZ2VNb2R1bGVHcm91cCgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBtYXJnaW4tbGVmdDogLTdweDtcbiAgbWFyZ2luLXJpZ2h0OiAtN3B4O1xufVxuXG5AbWl4aW4gbWFpblBhZ2VNb2R1bGVJdGVtcygkbWluLXdpZHRoLWRvd24tc20sICRtaW4td2lkdGgtdXAtc20pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA2IHtcbiAgICAmLWl0ZW0ge1xuICAgICAgJltkYXRhLXNpemU9XCIjeyRpfVwiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogNy41cHggN3B4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAmOm5vdCguYXV0aG9yaXRpZXMtcm93KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygjeyRtaW4td2lkdGgtZG93bi1zbX0gLSAxNXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi53LXNtLTEwMCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgICAgICAgICY6bm90KC5hdXRob3JpdGllcy1yb3cpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skaX0pIC0gMTVweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIG1pbi13aWR0aDogY2FsYygjeyRtaW4td2lkdGgtdXAtc219IC0gMTVweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skaX0pIC0gMTVweCk7XG4gICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmbGV4ICgkY2VudGVyOmZhbHNlLCAkZGlyOm51bGwsICRqYzpmbGV4LXN0YXJ0LCAkYWk6IHN0cmV0Y2gsICRnYXA6bnVsbCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaWYgKCRkaXIgIT0gbnVsbCkgeyBmbGV4LWRpcmVjdGlvbjogJGRpcjsgfVxuICBAaWYgKCRnYXAgIT0gbnVsbCkgeyBnYXA6ICRnYXA7IH1cblxuICBAaWYgJGNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfSBAZWxzZSB7XG4gICAganVzdGlmeS1jb250ZW50OiAkamM7XG4gICAgYWxpZ24taXRlbXM6ICRhaTtcbiAgfVxufVxuXG5AbWl4aW4gZm9udCAoJGZzaXplOiAxcmVtLCAkZnc6IDQwMCkge1xuICBmb250LXNpemU6ICRmc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmdztcbn1cblxuQG1peGluIGRpbWVuc2lvbnMgKCRoZWlnaHQ6bnVsbCwgJHdpZHRoOiBudWxsLCAkcGFkZGluZzogbnVsbCwgJHJhZGl1czogbnVsbCwgJG1hcmdpbjogbnVsbCkge1xuICBAaWYgKCRoZWlnaHQgIT0gbnVsbCkgeyBoZWlnaHQ6ICRoZWlnaHQ7IH1cbiAgQGlmICgkd2lkdGggIT0gbnVsbCkgeyB3aWR0aDogJHdpZHRoOyB9XG4gIEBpZiAoJHBhZGRpbmcgIT0gbnVsbCkgeyBwYWRkaW5nOiAkcGFkZGluZzsgfVxuICBAaWYgKCRyYWRpdXMgIT0gbnVsbCkgeyBib3JkZXItcmFkaXVzOiAkcmFkaXVzOyB9XG4gIEBpZiAoJG1hcmdpbiAhPSBudWxsKSB7IG1hcmdpbjogJG1hcmdpbjsgfVxufVxuXG5AbWl4aW4gcHNldWRvRnVsbERpbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuQG1peGluIHBzZXVkb0RpbSAoJHRvcDogbnVsbCwgJGJvdHRvbTogbnVsbCwgJHJpZ2h0OiBudWxsLCAkbGVmdDogbnVsbCwgJGNvbnRlbnQ6ICcnLCAkaGVpZ2h0OiAxMDAlLCAkd2lkdGg6IDEwMCUpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAkY29udGVudDtcbiAgQGlmICgkdG9wICE9IG51bGwpIHsgdG9wOiAkdG9wOyB9XG4gIEBpZiAoJGJvdHRvbSAhPSBudWxsKSB7IGJvdHRvbTogJGJvdHRvbTsgfVxuICBAaWYgKCRyaWdodCAhPSBudWxsKSB7IHJpZ2h0OiAkcmlnaHQ7IH1cbiAgQGlmICgkbGVmdCAhPSBudWxsKSB7IGxlZnQ6ICRsZWZ0OyB9XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHBvc2l0aW9uICgkcG9zaXRpb246IGFic29sdXRlLCAkdG9wOiBudWxsLCAkYm90dG9tOiBudWxsLCAkcmlnaHQ6IG51bGwsICRsZWZ0OiBudWxsLCAkd2lkdGg6IG51bGwsICRoZWlnaHQ6IG51bGwpIHtcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcbiAgQGlmICgkdG9wICE9IG51bGwpIHsgdG9wOiAkdG9wOyB9XG4gIEBpZiAoJGJvdHRvbSAhPSBudWxsKSB7IGJvdHRvbTogJGJvdHRvbTsgfVxuICBAaWYgKCRyaWdodCAhPSBudWxsKSB7IHJpZ2h0OiAkcmlnaHQ7IH1cbiAgQGlmICgkbGVmdCAhPSBudWxsKSB7IGxlZnQ6ICRsZWZ0OyB9XG4gIEBpZiAoJHdpZHRoICE9IG51bGwpIHsgd2lkdGg6ICR3aWR0aDsgfVxuICBAaWYgKCRoZWlnaHQgIT0gbnVsbCkgeyBoZWlnaHQ6ICRoZWlnaHQ7IH1cbn1cblxuQG1peGluIGRpc3BsYXlHcmlkICgkZGlyOmNvbHVtbnMsICR2YWx1ZToxZnIsICRnYXA6MCwgJGFpOiBudWxsKSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtI3skZGlyfTogJHZhbHVlO1xuICBnYXA6ICRnYXA7XG4gIEBpZiAoJGFpICE9IG51bGwpIHsgYWxpZ24taXRlbXM6ICRhaSB9O1xufSIsIkBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuXG4gICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuXG4gICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBlYWNoICRzcmJyZWFrcG9pbnQsICRzaXplIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgLnNyLW9ubHktI3skc3JicmVha3BvaW50fS1kb3duIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAjeyRzaXplfSkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgY2xpcDogaW5pdGlhbDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbn0iLCIuYXNpZGUsIC5uYXZzLWNvbHVtbiB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDA7XG4gIC5tYWluLXBhZ2UtbmF2LXRpdGxlIHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCAzMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtZW51LWN1cnJlbnQtYmc7XG4gICAgY29sb3I6ICRtZW51LWN1cnJlbnQtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAmLmFzaWRlLW1haW4tcGFnZSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAtbXMtZmxleDogMCAwIDMwMHB4O1xuICAgIGZsZXg6IDAgMCAzMDBweDtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cblxuICAubGVmdC1tZW51LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxlZnQtbWVudS1iZztcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgLmxlZnQtbWVudS10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMjFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtY3VycmVudC1iZztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAjbWFpbi1wYWdlLWxpbmsge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1lbnUtYnRuLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sZWZ0LW1lbnUge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwcmltYXJ5O1xuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHggMTVweCAzMHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgMjUwbXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtsZWZ0OiAwO31cbiAgICAgICAgICB9XG5cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZXZlbC0wIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lbnUtaXRlbS1ib3JkZXI7XG5cbiAgICAgICAgICA+IGEuaGFzRWxlbWVudHMge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJpZ2h0RXJyb3cge1xuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1jdXJyZW50LWJnO1xuICAgICAgICAgICAgICBjb2xvcjogJG1lbnUtY3VycmVudC1jb2xvcjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgJi5oYXNFbGVtZW50cyB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzdcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5yaWdodEVycm93IHtcbiAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWVudS1pdGVtLWFycm93IHtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGV2ZWwtMSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxlZnQtbWVudS1sZXZlbC1iZztcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxlZnQtbWVudS1sZXZlbC1ib3JkZXI7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkc3VibWVudS1jb2xvcjtcblxuICAgICAgICAgICAgJi5oYXNFbGVtZW50cyB7XG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45MHJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmLnJpZ2h0RXJyb3cge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jb250ZW50cyB7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgJjpub3QoLmlubG8tY29udGFpbmVyKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICB9XG4gIH1cblxuICAmLmlubG8tY29udGFpbmVyIHsgd2lkdGg6IDEwMCU7IH1cblxuXG4gICYuZnVsbC13aWR0aCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlXG4gIH1cblxuICAuY2F0ZWdvcnktbGVhZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwcmltYXJ5O1xuICAgIHBhZGRpbmc6IDAgMzBweCAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gIH1cblxuICAuZ2FsbGVyaWVzLWxpc3Qge1xuICAgICYtY291bnQge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAmLWl0ZW0tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi1pdGVtLWltZyB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG5cbiAgLypnYWxsZXJ5IGNhcm91c2VsKi9cbiAgLmdhbGxlcnktY2Fyb3VzZWwge1xuICAgIG1heC13aWR0aDogNzYwcHg7XG4gICAgbWFyZ2luOiAxNXB4IGF1dG87XG5cbiAgICAub3dsLXN0YWdlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICYtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgJi1saW5rIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgJi1pbWcge1xuICAgICAgICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5vd2wtbmF2IHtcbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDMuMnJlbTtcbiAgICAgIGhlaWdodDogMy4ycmVtO1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgIG9wYWNpdHk6IDAuOTU7XG4gICAgICB9XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICRmb2N1cy1vdXRsaW5lLWNvbG9yLWxpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qZ2FsbGVyeSBsaXN0Ki9cbiAgLmdhbGxlcnkge1xuICAgICYtbGlzdCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogNy41cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIG1heC13aWR0aDogMzMlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbGluayB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICYtaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL19taWRkbGVfbmF2XCI7XG4gIEBpbXBvcnQgXCIuLi8uLi9jb21wb25lbnRzL190aXRsZVwiO1xufVxuLnRhZ3Mge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NlZDRkYTtcbiAgcGFkZGluZzogMTVweCAzMHB4O1xufVxuXG4uaGlnaGxpZ2h0IHtcbiAgcGFkZGluZzogMTVweCAzMHB4O1xuICBiYWNrZ3JvdW5kOiBkYXJrZW4oJG1ldHJpY3MtYmcsIDMpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA2YVwiO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgfVxufVxuXG4jY29udGVudC10aXRsZSwgI21haW4tdGl0bGUge1xuICBjb2xvcjogJHRleHQtY29sb3IgIWltcG9ydGFudDtcbn0iLCIubWlkZGxlLW5hdiB7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgJGdyYXktMzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG5cbiAgLmNhdGVnb3J5LWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZW51LWl0ZW0tYm9yZGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIH1cblxuICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDIwLjVweCAxNXB4IDIwLjVweCA1MHB4O1xuXG4gICAgICAgICYuaGFzRWxlbWVudHM6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjkwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC00cHghaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmNvbnRlbnRzIHtcbiAgJi10aXRsZSB7XG4gICAgcGFkZGluZzogMTkuNXB4IDMwcHg7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBwYWRkaW5nOiAxOS41cHggMTVweDtcbiAgICB9XG4gIH1cbn0iLCIuYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYiB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MS44cHgpIHtcbiAgICAgICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtaXRlbSB7XG4gICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTNweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIubWV0cmljcy1ibG9jayB7XG4gIC50YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1ldHJpY3MtYmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgdHI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIHhsKSB7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIHhsKSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICB0aGVhZCxcbiAgICB0Ym9keSxcbiAgICB0Zm9vdCxcbiAgICB0cixcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG4jY29udGVudF9tZXRyaWNzX2Jsb2NrIHtcbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udGVudC1tZXRyaWNzLWJnO1xuICAgIG1hcmdpbjogMTVweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgbWFyZ2luOiAxNXB4IDMwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gICAgfVxuICB9XG59IiwiQGltcG9ydCAnLi4vLi4vY29tcG9uZW50cy9fbWV0cmljcyc7XG5cbi5jb250ZW50c19jb250cm9scyB7XG4gIGJhY2tncm91bmQ6ICRmb290ZXItYmc7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgY29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBidXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgYSwgYnV0dG9uIHtcbiAgICBjb2xvcjogJGZvb3Rlci10ZXh0LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRmb290ZXItdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmX2xpbWl0IHtcbiAgICAjcGFnZS1saW1pdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHNlbGVjdC1hcnJheSk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzLW91dGxpbmUtY29sb3I7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sZWZ0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAucmlnaHQge1xuICAgIGEsIGJ1dHRvbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdW5zZXQ7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAmX2xpbWl0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICNwYWdlLWxpbWl0IHtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMS41cmVtIDAuMzc1cmVtIDAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC4yNXJlbSBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2UtbGltaXQtbGFiZWwge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIH1cbiAgfVxuXG4gIC5wYWdpbmF0aW9uIHtcbiAgICAucGFnZS1udW1iZXItaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgICAgIG1heC13aWR0aDogNzBweDtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC4ycmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2UtbnVtYmVyLWluZm8ge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAucGFnZS1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDEuMnJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gLjhyZW07XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cy1vdXRsaW5lLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pY29uIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5jb250ZW50c19jb250cm9scyAubGVmdCBzcGFuLFxuICAuY29udGVudHNfY29udHJvbHMgLnJpZ2h0IGJ1dHRvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbn1cbiIsIkBpbXBvcnQgXCIuLi8uLi9fbWFpblwiLFxuXCIuLi8uLi9jb21wb25lbnRzL190aXRsZVwiLFxuXCIuLi8uLi9jb250YWluZXJzL21haW4vX2NvbnRlbnRfZm9vdGVyXCI7XG5cbi5leGNlcHRpb24ge1xuICAmLWltZyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIH1cbiAgfVxuICAuY29udGVudCB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuICB9XG4gIC5leGNlcHRpb24tbGlua3Mge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAmLWl0ZW0ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBzdmcge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnN2Zy1jb2xvciB7XG4gICAgICAgIHN0cm9rZTogJHByaW1hcnk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihzbSwgbWQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEyLjVweDtcbiAgICAgICYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDE1cHgpO1xuICAgICAgICBmbGV4OiAwIDAgY2FsYygzMy4zMyUgLSAxNXB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgfVxuICAgICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSAyNXB4KTtcbiAgICAgICAgICBmbGV4OiAwIDAgY2FsYygzMy4zMyUgLSAyNXB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/