/*!
   * Bootstrap  v5.3.3 (https://getbootstrap.com/)
   * Copyright 2011-2024 The Bootstrap Authors
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
   */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");
:root,
[data-bs-theme="light"] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: blue;
  --bs-dark: #000000;
  --bs-primary-rgb: 0, 0, 255;
  --bs-dark-rgb: 0, 0, 0;
  --bs-primary-text-emphasis: #052c65;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cfe2ff;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #9ec5fe;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --bs-danger-border-subtle: #f1aeb5;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #0a58ca;
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545; }

[data-bs-theme="dark"] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;
  --bs-tertiary-bg: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #6ea8fe;
  --bs-secondary-text-emphasis: #a7acb1;
  --bs-success-text-emphasis: #75b798;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #ffda6a;
  --bs-danger-text-emphasis: #ea868f;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #031633;
  --bs-secondary-bg-subtle: #161719;
  --bs-success-bg-subtle: #051b11;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #332701;
  --bs-danger-bg-subtle: #2c0b0e;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #084298;
  --bs-secondary-border-subtle: #41464b;
  --bs-success-border-subtle: #0f5132;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #997404;
  --bs-danger-border-subtle: #842029;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #6ea8fe;
  --bs-link-hover-color: #8bb9fe;
  --bs-link-color-rgb: 110, 168, 254;
  --bs-link-hover-color-rgb: 139, 185, 254;
  --bs-code-color: #e685b5;
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: #664d03;
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #75b798;
  --bs-form-valid-border-color: #75b798;
  --bs-form-invalid-color: #ea868f;
  --bs-form-invalid-border-color: #ea868f; }

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

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

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

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

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.25rem; }
  kbd kbd {
    padding: 0;
    font-size: 1em; }

figure {
  margin: 0 0 1rem; }

img,
svg {
  vertical-align: middle; }

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

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

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

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

label {
  display: inline-block; }

button {
  border-radius: 0; }

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

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

button,
select {
  text-transform: none; }

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

select {
  word-wrap: normal; }
  select:disabled {
    opacity: 1; }

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

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

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

textarea {
  resize: vertical; }

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

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit; }
  @media (min-width: 1200px) {
    legend {
      font-size: 1.5rem; } }
  legend + * {
    clear: left; }

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

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

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

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

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

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

output {
  display: inline-block; }

iframe {
  border: 0; }

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

progress {
  vertical-align: baseline; }

[hidden] {
  display: none !important; }

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

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

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

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

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

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

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

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

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

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

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

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

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d; }
  .blockquote-footer::before {
    content: "\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 {
  --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: 1140px; } }

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

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

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-.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: 1400px) {
  .col-xxl {
    flex: 1 0 0%; }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto; }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%; }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%; }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.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; } }

.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: #cfe2ff;
  --bs-table-border-color: #a6b5cc;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfd1ec;
  --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: #fff3cd;
  --bs-table-border-color: #ccc2a4;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ece1be;
  --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: #f8f9fa;
  --bs-table-border-color: #c6c7c8;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5e6e7;
  --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: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  appearance: none;
  background-color: transparent; }
  .form-range:focus {
    outline: 0; }
    .form-range:focus::-webkit-slider-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); }
    .form-range:focus::-moz-range-thumb {
      box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); }
  .form-range::-moz-focus-outer {
    border: 0; }
  .form-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    appearance: none;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .form-range::-webkit-slider-thumb {
        transition: none; } }
    .form-range::-webkit-slider-thumb:active {
      background-color: #b6d4fe; }
  .form-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: var(--bs-secondary-bg);
    border-color: transparent;
    border-radius: 1rem; }
  .form-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    appearance: none;
    background-color: #0d6efd;
    border: 0;
    border-radius: 1rem;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .form-range::-moz-range-thumb {
        transition: none; } }
    .form-range::-moz-range-thumb:active {
      background-color: #b6d4fe; }
  .form-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: var(--bs-secondary-bg);
    border-color: transparent;
    border-radius: 1rem; }
  .form-range:disabled {
    pointer-events: none; }
    .form-range:disabled::-webkit-slider-thumb {
      background-color: var(--bs-secondary-color); }
    .form-range:disabled::-moz-range-thumb {
      background-color: var(--bs-secondary-color); }

.form-floating {
  position: relative; }
  .form-floating > .form-control,
  .form-floating > .form-control-plaintext,
  .form-floating > .form-select {
    height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    line-height: 1.25; }
  .form-floating > label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    padding: 1rem 0.75rem;
    overflow: hidden;
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    border: var(--bs-border-width) solid transparent;
    transform-origin: 0 0;
    transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
      .form-floating > label {
        transition: none; } }
  .form-floating > .form-control,
  .form-floating > .form-control-plaintext {
    padding: 1rem 0.75rem; }
    .form-floating > .form-control::placeholder,
    .form-floating > .form-control-plaintext::placeholder {
      color: transparent; }
    .form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
    .form-floating > .form-control-plaintext:focus,
    .form-floating > .form-control-plaintext:not(:placeholder-shown) {
      padding-top: 1.625rem;
      padding-bottom: 0.625rem; }
    .form-floating > .form-control:-webkit-autofill,
    .form-floating > .form-control-plaintext:-webkit-autofill {
      padding-top: 1.625rem;
      padding-bottom: 0.625rem; }
  .form-floating > .form-select {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem; }
  .form-floating > .form-control:focus ~ label,
  .form-floating > .form-control:not(:placeholder-shown) ~ label,
  .form-floating > .form-control-plaintext ~ label,
  .form-floating > .form-select ~ label {
    color: rgba(var(--bs-body-color-rgb), 0.65);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
    .form-floating > .form-control:focus ~ label::after,
    .form-floating > .form-control:not(:placeholder-shown) ~ label::after,
    .form-floating > .form-control-plaintext ~ label::after,
    .form-floating > .form-select ~ label::after {
      position: absolute;
      inset: 1rem 0.375rem;
      z-index: -1;
      height: 1.5em;
      content: "";
      background-color: var(--bs-body-bg);
      border-radius: var(--bs-border-radius); }
  .form-floating > .form-control:-webkit-autofill ~ label {
    color: rgba(var(--bs-body-color-rgb), 0.65);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }
  .form-floating > .form-control-plaintext ~ label {
    border-width: var(--bs-border-width) 0; }
  .form-floating > :disabled ~ label,
  .form-floating > .form-control:disabled ~ label {
    color: #6c757d; }
    .form-floating > :disabled ~ label::after,
    .form-floating > .form-control:disabled ~ label::after {
      background-color: var(--bs-secondary-bg); }

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%; }
  .input-group > .form-control,
  .input-group > .form-select,
  .input-group > .form-floating {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0; }
  .input-group > .form-control:focus,
  .input-group > .form-select:focus,
  .input-group > .form-floating:focus-within {
    z-index: 5; }
  .input-group .btn {
    position: relative;
    z-index: 2; }
    .input-group .btn:focus {
      z-index: 5; }

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

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

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

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

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n + 3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group.has-validation > :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n + 4),
.input-group.has-validation > .form-floating:nth-last-child(n + 3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n + 3) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: calc(var(--bs-border-width) * -1);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group > .form-floating:not(:first-child) > .form-control,
.input-group > .form-floating:not(:first-child) > .form-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

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

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

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

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

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

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

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

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

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: .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='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
    border-color: var(--bs-form-invalid-border-color);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25); }

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

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

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

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

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

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

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .btn {
      transition: none; } }
  .btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color); }
  .btn-check + .btn:hover {
    color: var(--bs-btn-color);
    background-color: var(--bs-btn-bg);
    border-color: var(--bs-btn-border-color); }
  .btn:focus-visible {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow); }
  .btn-check:focus-visible + .btn {
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow); }
  .btn-check:checked + .btn,
  :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
    color: var(--bs-btn-active-color);
    background-color: var(--bs-btn-active-bg);
    border-color: var(--bs-btn-active-border-color); }
    .btn-check:checked + .btn:focus-visible,
    :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
      box-shadow: var(--bs-btn-focus-box-shadow); }
  .btn-check:checked:focus-visible + .btn {
    box-shadow: var(--bs-btn-focus-box-shadow); }
  .btn:disabled, .btn.disabled,
  fieldset:disabled .btn {
    color: var(--bs-btn-disabled-color);
    pointer-events: none;
    background-color: var(--bs-btn-disabled-bg);
    border-color: var(--bs-btn-disabled-border-color);
    opacity: var(--bs-btn-disabled-opacity); }

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: blue;
  --bs-btn-border-color: blue;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0000d9;
  --bs-btn-hover-border-color: #0000cc;
  --bs-btn-focus-shadow-rgb: 38, 38, 255;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0000cc;
  --bs-btn-active-border-color: #0000bf;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: blue;
  --bs-btn-disabled-border-color: blue; }

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #000000;
  --bs-btn-border-color: #000000;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #262626;
  --bs-btn-hover-border-color: #1a1a1a;
  --bs-btn-focus-shadow-rgb: 38, 38, 38;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #333333;
  --bs-btn-active-border-color: #1a1a1a;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #000000;
  --bs-btn-disabled-border-color: #000000; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.dropend .dropdown-toggle::after {
  vertical-align: 0; }

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

.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.dropstart .dropdown-toggle::after {
  display: none; }

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

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

.dropstart .dropdown-toggle::before {
  vertical-align: 0; }

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

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

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

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

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

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap; }
  .navbar-brand:hover, .navbar-brand:focus {
    color: var(--bs-navbar-brand-hover-color); }

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

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

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

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

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

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

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

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

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

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

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

.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start; }
  .navbar-expand .navbar-nav {
    flex-direction: row; }
    .navbar-expand .navbar-nav .dropdown-menu {
      position: absolute; }
    .navbar-expand .navbar-nav .nav-link {
      padding-right: var(--bs-navbar-nav-link-padding-x);
      padding-left: var(--bs-navbar-nav-link-padding-x); }
  .navbar-expand .navbar-nav-scroll {
    overflow: visible; }
  .navbar-expand .navbar-collapse {
    display: flex !important;
    flex-basis: auto; }
  .navbar-expand .navbar-toggler {
    display: none; }
  .navbar-expand .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none; }
    .navbar-expand .offcanvas .offcanvas-header {
      display: none; }
    .navbar-expand .offcanvas .offcanvas-body {
      display: flex;
      flex-grow: 0;
      padding: 0;
      overflow-y: visible; }

.navbar-dark,
.navbar[data-bs-theme="dark"] {
  --bs-navbar-color: 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='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

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

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

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

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

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

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

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

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

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

.accordion-flush > .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }
  .accordion-flush > .accordion-item:first-child {
    border-top: 0; }
  .accordion-flush > .accordion-item:last-child {
    border-bottom: 0; }
  .accordion-flush > .accordion-item > .accordion-header .accordion-button, .accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
    border-radius: 0; }
  .accordion-flush > .accordion-item > .accordion-collapse {
    border-radius: 0; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.list-group-flush {
  border-radius: 0; }
  .list-group-flush > .list-group-item {
    border-width: 0 0 var(--bs-list-group-border-width); }
    .list-group-flush > .list-group-item:last-child {
      border-bottom-width: 0; }

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

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

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

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

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

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

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

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

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: ;
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none; }
  .modal.fade .modal-dialog {
    transition: transform 0.3s ease-out;
    transform: translate(0, -50px); }
    @media (prefers-reduced-motion: reduce) {
      .modal.fade .modal-dialog {
        transition: none; } }
  .modal.show .modal-dialog {
    transform: none; }
  .modal.modal-static .modal-dialog {
    transform: scale(1.02); }

.modal-dialog-scrollable {
  height: calc(100% - var(--bs-modal-margin) * 2); }
  .modal-dialog-scrollable .modal-content {
    max-height: 100%;
    overflow: hidden; }
  .modal-dialog-scrollable .modal-body {
    overflow-y: auto; }

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - var(--bs-modal-margin) * 2); }

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0; }

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg); }
  .modal-backdrop.fade {
    opacity: 0; }
  .modal-backdrop.show {
    opacity: var(--bs-backdrop-opacity); }

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

.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0; }
  .tooltip.show {
    opacity: var(--bs-tooltip-opacity); }
  .tooltip .tooltip-arrow {
    display: block;
    width: var(--bs-tooltip-arrow-width);
    height: var(--bs-tooltip-arrow-height); }
    .tooltip .tooltip-arrow::before {
      position: absolute;
      content: "";
      border-color: transparent;
      border-style: solid; }

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height)); }
  .bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
    top: -1px;
    border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .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%; }

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

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

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

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

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
  filter: invert(1) grayscale(100); }

.carousel-dark .carousel-indicators [data-bs-target] {
  background-color: #000; }

.carousel-dark .carousel-caption {
  color: #000; }

[data-bs-theme="dark"] .carousel .carousel-control-prev-icon,
[data-bs-theme="dark"] .carousel .carousel-control-next-icon, [data-bs-theme="dark"].carousel .carousel-control-prev-icon,
[data-bs-theme="dark"].carousel .carousel-control-next-icon {
  filter: invert(1) grayscale(100); }

[data-bs-theme="dark"] .carousel .carousel-indicators [data-bs-target], [data-bs-theme="dark"].carousel .carousel-indicators [data-bs-target] {
  background-color: #000; }

[data-bs-theme="dark"] .carousel .carousel-caption, [data-bs-theme="dark"].carousel .carousel-caption {
  color: #000; }

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

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */; } }

.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent; }

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

@keyframes spinner-grow {
  0% {
    transform: scale(0); }
  50% {
    opacity: 1;
    transform: none; } }

.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0; }

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

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s; } }

.offcanvas-sm, .offcanvas-md, .offcanvas-lg, .offcanvas-xl, .offcanvas-xxl, .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: 1399.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition); } }
  @media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-xxl {
      transition: none; } }

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-start {
      top: 0;
      left: 0;
      width: var(--bs-offcanvas-width);
      border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
      transform: translateX(-100%); }
    .offcanvas-xxl.offcanvas-end {
      top: 0;
      right: 0;
      width: var(--bs-offcanvas-width);
      border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
      transform: translateX(100%); }
    .offcanvas-xxl.offcanvas-top {
      top: 0;
      right: 0;
      left: 0;
      height: var(--bs-offcanvas-height);
      max-height: 100%;
      border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
      transform: translateY(-100%); }
    .offcanvas-xxl.offcanvas-bottom {
      right: 0;
      left: 0;
      height: var(--bs-offcanvas-height);
      max-height: 100%;
      border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
      transform: translateY(100%); }
    .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
      transform: none; }
    .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
      visibility: visible; } }

@media (min-width: 1400px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important; }
    .offcanvas-xxl .offcanvas-header {
      display: none; }
    .offcanvas-xxl .offcanvas-body {
      display: flex;
      flex-grow: 0;
      padding: 0;
      overflow-y: visible;
      background-color: transparent !important; } }

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

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

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

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

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

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

.placeholder-xs {
  min-height: .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: #fff !important;
  background-color: RGBA(var(--bs-primary-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(0, 0, 204, var(--bs-link-opacity, 1)) !important;
    text-decoration-color: RGBA(0, 0, 204, 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(0, 0, 0, var(--bs-link-opacity, 1)) !important;
    text-decoration-color: RGBA(0, 0, 0, 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: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020; }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.focus-ring-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-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-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-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-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

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

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

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

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

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

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

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

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

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

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

@media (min-width: 1200px) {
  .fs-1 {
    font-size: 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; } }

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

.col {
  flex: 0 0 auto; }

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }

.poppins-light {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal; }

.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal; }

.poppins-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal; }

.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal; }

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal; }

.poppins-extrabold {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: normal; }

.poppins-black {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: normal; }

.poppins-thin-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: italic; }

.poppins-extralight-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: italic; }

.poppins-light-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: italic; }

.poppins-regular-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: italic; }

.poppins-medium-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: italic; }

.poppins-semibold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: italic; }

.poppins-bold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic; }

.poppins-extrabold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic; }

.poppins-black-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: italic; }

html, body {
  color: #000000;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 18px;
  line-height: 150%; }

h1, .h1 {
  font-size: 2.5rem;
  font-weight: 700; }
  h1.larger, .larger.h1 {
    font-size: 2.7rem; }

h2, .h2 {
  font-size: 2.5rem;
  font-weight: 700; }

h3, .h3 {
  font-size: 1.8rem;
  font-weight: 700; }

h4, .h4 {
  font-size: 1.4rem;
  font-weight: 700; }

#navbarNav a, #navbarNav a:visited, #navbarNav a:active, #navbarNav a:visited {
  color: #000000; }

a, a:visited, a:active, a:visited {
  color: #4AA4DC; }

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

.gradient_circle {
  background: transparent linear-gradient(270deg, #F58320 0%, #E91D2D 100%) 0% 0% no-repeat padding-box;
  width: 5rem;
  height: 5rem;
  border-radius: 2.5rem;
  float: left;
  margin-right: 2rem;
  margin-bottom: 2rem;
  text-align: center;
  font-size: 3rem;
  line-height: 5rem;
  font-weight: 700;
  color: white; }

button {
  padding: 15px 30px;
  background: transparent linear-gradient(270deg, #F58320 0%, #E91D2D 100%) 0% 0% no-repeat padding-box;
  border-radius: 60px;
  opacity: 1;
  border: none;
  font-weight: 500;
  color: #ffffff;
  transition: background 0.5s ease-in-out; }
  button:hover {
    background: transparent linear-gradient(90deg, #F58320 0%, #E91D2D 100%) 0% 0% no-repeat padding-box; }

button.cky-btn:hover {
  background: inherit; }

.border-top {
  border-top: solid 4px #CECECE; }

button.black {
  padding: 15px 30px;
  background: white;
  border-radius: 60px;
  opacity: 1;
  border: solid 1px #000000;
  font-weight: 500;
  color: #000000;
  font-size: 1rem;
  text-transform: uppercase; }

.glo_image {
  width: 22rem;
  top: 12rem;
  left: 8rem;
  position: absolute; }

.hero_text {
  font-size: 4rem;
  color: white;
  top: 18.5rem;
  left: 10rem;
  position: absolute; }

.hero_text2 {
  font-size: 4rem;
  color: white;
  top: 25rem;
  left: 25.5rem;
  position: absolute; }

.pr-10p {
  padding-right: 3%; }

ol {
  list-style-type: decimal;
  padding-left: 1em; }

ul {
  padding-left: 1em; }
  ul li {
    padding-bottom: 5px; }
    ul li::marker {
      color: #F58320; }

ol li::marker {
  font-weight: bold; }

.text_red {
  color: #E91D2D !important; }

.text_green {
  color: #4BB543 !important; }

.text_white {
  color: #ffffff !important; }

.text_orange {
  color: #F58320 !important; }

.text_blue {
  color: #00205C !important; }

.text_bold {
  font-weight: 700; }

.text_08 {
  font-size: 0.8rem; }

.text_indent {
  text-indent: -0.5rem; }

.padding-top-4 {
  padding-top: 4rem; }

.padding-bottom-4 {
  padding-bottom: 4rem; }

.full_height {
  height: 100%; }

.section_end {
  padding-bottom: 6rem; }

.gray-fill {
  background-color: #F5F0EC; }

.static-a {
  background-image: url(../img/aicon.png);
  background-attachment: fixed;
  background-size: 110%;
  background-repeat: no-repeat;
  background-position: center 170px; }

.gc_bg_home {
  background-image: url(../img/gc_background.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }

.treatingpi_gc_bg_home {
  background-image: url(../img/treating_pi_gb_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }

.intro_text {
  font-size: 1.1rem;
  line-height: 170%; }

.gray_box {
  background-color: rgba(245, 240, 236, 0.7);
  padding: 2.5rem 3.5rem 2.5rem 2rem;
  border-radius: 1rem; }
  .gray_box p.larger {
    font-size: 1.1rem;
    line-height: 150%; }
  .gray_box .eyebrow {
    font-size: 1.6rem !important;
    font-weight: 400;
    font-style: italic;
    margin-bottom: 0.3rem; }
  .gray_box.large_padding {
    padding: 3rem 5rem; }

.orange_box {
  background-color: #F58320;
  padding: 2.5rem 3.5rem 2.5rem 2rem;
  border-radius: 1rem; }
  .orange_box.padding_even {
    padding: 2.5rem; }

.white_box {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 2.5rem 2.1rem;
  border-radius: 1rem; }
  .white_box.large_padding {
    padding: 3rem 5rem; }
  .white_box.bg09 {
    background-color: rgba(255, 255, 255, 0.9); }

.puri_steps {
  margin-left: 2rem; }

.footer {
  margin-top: 1rem;
  font-size: 0.85rem;
  line-height: 130%;
  text-align: left; }
  .footer .footnote.smaller {
    font-size: 0.65xrem; }
  .footer .text-left {
    text-align: left; }
  .footer .footer_logo {
    max-height: 32px; }
  .footer .pl-53 {
    padding-left: 2rem; }
  .footer a {
    font-size: 0.85rem;
    font-weight: 700;
    color: #4AA4DC;
    margin-bottom: 1rem; }
  .footer .footer_link {
    font-size: 0.85rem;
    font-weight: 700;
    color: #4AA4DC;
    display: block;
    margin-bottom: 1rem; }
  .footer .follow_us {
    text-align: right; }
    .footer .follow_us .linked_in_icon {
      width: 3rem; }

.navbar {
  border-bottom: none;
  padding-top: 1rem;
  padding-bottom: 1rem; }

.home_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/home_hero.jpg);
  background-position: top center;
  background-size: cover; }

.treating_pi_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/treating_pi_bg.jpg);
  background-position: top center;
  background-size: cover; }
  .treating_pi_hero h1, .treating_pi_hero .h1 {
    text-shadow: 0 0 1em black, 0 0 0.2em black; }

.why_alyglo_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/why_alyglo_bg.jpg);
  background-position: center center;
  background-size: cover; }
  .why_alyglo_hero h1, .why_alyglo_hero .h1 {
    text-shadow: 0 0 1em black, 0 0 0.2em black; }

.starting_alyglo_hero {
  height: 80vh;
  min-height: 575px;
  background-image: url(../img/starting_alyglo_bg.jpg);
  background-position: top center;
  background-size: cover; }

.signup_hero {
  height: 10vh;
  min-height: 120px; }

nav #navbarNav {
  flex-direction: row-reverse; }

nav ul {
  list-style: none;
  margin: 0;
  padding: 0.8rem 0;
  display: flex;
  justify-content: flex-end;
  background-color: white;
  border-radius: 1rem;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.5); }

nav ul li {
  margin-right: 1.2rem;
  font-size: 0.75rem;
  line-height: 130%;
  text-align: center;
  color: #00205C;
  font-weight: 500;
  cursor: pointer;
  padding-bottom: 0px; }
  nav ul li:first-child {
    margin-left: 1.2rem; }

nav ul li a {
  color: #00205C;
  text-decoration: none; }
  nav ul li a.active {
    font-weight: 700;
    color: #F58320 !important; }

#header.transparent {
  background-image: url(../img/gradient_bg.png);
  background-repeat: repeat-x;
  background-size: contain; }

#header.scrolled {
  background-color: white;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.5); }
  #header.scrolled ul {
    background-color: none;
    box-shadow: none; }
  #header.scrolled .site_logo {
    width: 140px; }

.statistics-container {
  display: flex;
  background-color: #F58320;
  padding: 1rem;
  border-radius: 0.5rem; }

.statistic {
  text-align: center;
  flex: 1;
  border-left: 1px solid #00205C;
  padding: 0 1rem; }

.statistic:first-child {
  border-left: none; }

.value {
  display: block;
  font-size: 2.5rem;
  line-height: 100%;
  font-weight: 700;
  color: #ffffff; }

.label {
  display: block;
  font-size: 1rem;
  color: #00205C; }

.hamburger, .hamburger:hover {
  background: none !important;
  border: none !important;
  outline: none !important; }
  .hamburger:focus, .hamburger:hover:focus {
    outline: 0px none #fff !important; }

#isi {
  background-color: white; }
  #isi .expand_isi {
    display: none; }
  #isi.fixed {
    position: fixed;
    top: 80vh;
    left: 0; }
    #isi.fixed .expand_isi {
      display: block; }
  #isi ul li::marker {
    color: black; }

@media (max-width: 1199px) {
  #navbarNav button {
    padding: 10px 10px; }
  nav ul li {
    margin-right: 0.5rem; }
    nav ul li:first-child {
      margin-left: 0.5rem; } }

@media (max-width: 991px) {
  .glo_image {
    top: 16rem;
    left: 2rem; }
  .hero_text {
    top: 21rem;
    left: 6rem; }
  .hero_text2 {
    top: 29.5rem;
    left: 18.5rem; }
  #navbarNav {
    z-index: 999; }
    #navbarNav button {
      padding: 15px 30px; }
    #navbarNav ul {
      background-color: rgba(255, 255, 255, 0.95);
      padding-top: 8rem;
      display: block;
      width: 100vw;
      height: 100vh;
      position: absolute;
      top: 0;
      left: 0;
      border-radius: 0px; }
      #navbarNav ul li {
        margin: 0;
        font-size: 1rem;
        margin-bottom: 1rem; } }

@media (max-width: 768px) {
  .hero_text {
    top: 26.5rem;
    left: 5rem; }
  .glo_image {
    top: 20rem;
    left: 3rem; }
  .hero_text2 {
    top: 33rem;
    left: 20.5rem; }
  #navbarNav {
    z-index: 999; }
    #navbarNav button {
      padding: 15px 30px; }
  #navbarNav {
    z-index: 999; }
    #navbarNav button {
      padding: 15px 30px; }
    #navbarNav ul {
      background-color: rgba(255, 255, 255, 0.95);
      padding-top: 8rem;
      display: block;
      width: 100vw;
      height: 100vh;
      position: absolute;
      top: 0;
      left: 0;
      border-radius: 0px; }
      #navbarNav ul li {
        margin: 0;
        font-size: 1rem;
        margin-bottom: 1rem; } }

@media (max-width: 575px) {
  body {
    font-size: 16px; }
  #submitButton {
    width: 100% !important; }
  #header.scrolled {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem; }
    #header.scrolled .site_logo {
      width: 115px; }
  .treating_pi_hero .full_height .align-items-center, .why_alyglo_hero .full_height .align-items-center {
    align-items: flex-end !important; }
    .treating_pi_hero .full_height .align-items-center h1, .treating_pi_hero .full_height .align-items-center .h1, .why_alyglo_hero .full_height .align-items-center h1, .why_alyglo_hero .full_height .align-items-center .h1 {
      margin-bottom: 2rem;
      text-shadow: 0 0 1em black, 0 0 0.2em black; }
  .starting_alyglo_hero .full_height .align-items-center {
    align-items: flex-end !important; }
    .starting_alyglo_hero .full_height .align-items-center h1, .starting_alyglo_hero .full_height .align-items-center .h1 {
      margin-bottom: 2rem;
      text-shadow: 0 0 1em white; }
  .gradient_circle {
    font-size: 1.4rem;
    width: 3rem;
    height: 3rem;
    line-height: 3rem;
    margin-right: 1rem;
    margin-bottom: 1rem; }
  .number_box:first-child {
    margin-top: 1rem; }
  .number_box > p {
    margin-left: 4rem; }
  .site_logo {
    width: 150px; }
  h1, .h1, .h1 {
    font-size: 1.4rem; }
    h1.larger, .larger.h1, .h1.larger {
      font-size: 1.7rem; }
  h2, .h2, .h2 {
    font-size: 1.4rem; }
  h3, .h3, .h3 {
    font-size: 1.3rem; }
  p.reset_ml {
    margin-left: 0 !important; }
  .intro_text {
    font-size: 1rem;
    margin-bottom: 0px; }
    .intro_text br {
      content: " ";
      display: inline-block; }
  .padding-top-4 {
    padding-top: 2rem; }
  .padding-bottom-4 {
    padding-bottom: 2rem; }
  .gray_box {
    padding: 1rem; }
    .gray_box > img {
      width: 4rem !important; }
    .gray_box .eyebrow {
      font-size: 1rem !important;
      margin-bottom: 5px; }
    .gray_box > div {
      padding-left: 0px !important; }
    .gray_box p.larger {
      font-size: 1rem; }
    .gray_box button {
      width: 100%; }
    .gray_box.large_padding {
      padding: 1rem; }
  .white_box {
    padding: 1rem; }
    .white_box > div {
      padding-left: 0px !important; }
    .white_box button {
      font-size: 0.9rem;
      line-height: 110%; }
    .white_box.large_padding {
      padding: 1rem; }
  .orange_box {
    padding: 1rem; }
    .orange_box > div {
      padding-left: 0 !important; }
  .did_you_know > img {
    width: 4rem !important; }
  .ps-5 {
    padding-left: calc(var(--bs-gutter-x) * .5) !important; }
  .circle_icon {
    width: 5rem !important;
    display: block !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 auto; }
  .end_arrow {
    font-size: 1.2rem; }
    .end_arrow br {
      display: inline-block;
      content: " "; }
  .footer {
    font-size: 0.8rem !important; }
    .footer a {
      font-size: 0.8rem !important; }
    .footer .footer_link {
      font-size: 0.8rem !important; }
    .footer .pl-53 {
      padding-left: 0; }
    .footer .follow_us {
      text-align: left; }
      .footer .follow_us .linked_in_icon {
        width: 3rem; }
  .home_hero {
    background-position: calc(50% + 50px) bottom; }
    .home_hero .hero_text {
      font-size: 3rem;
      top: 14.5rem;
      left: 0rem; }
    .home_hero .glo_image {
      width: 14rem;
      top: 12rem;
      left: -1rem; }
    .home_hero .hero_text2 {
      font-size: 3rem;
      top: 20.5rem;
      left: 10.5rem; }
  #navbarNav {
    z-index: 999; }
    #navbarNav button {
      padding: 15px 30px; }
    #navbarNav ul {
      background-color: rgba(255, 255, 255, 0.95);
      padding-top: 8rem;
      display: block;
      width: 100vw;
      height: 100vh;
      position: absolute;
      top: 0;
      left: 0;
      border-radius: 0px; }
      #navbarNav ul li {
        margin: 0;
        font-size: 1rem;
        margin-bottom: 1rem; }
  .statistics-container {
    display: block; }
    .statistics-container .statistic {
      border-left: none;
      border-bottom: 1px solid #00205C;
      padding: 0.5rem 0; }
      .statistics-container .statistic:last-child {
        border-bottom: none; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFubmVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLWRhcmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWFwcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZGVwcmVjYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3ItbW9kZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3Itc2NoZW1lLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2Ryb3Auc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL192YWxpZGF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHJhbnNpdGlvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGxhY2Vob2xkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2hlbHBlcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2NvbG9yLWJnLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19pY29uLWxpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19yYXRpby5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RhY2tzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiJHRoZW1lLWNvbG9yczogKFxuICAgIFwicHJpbWFyeVwiOiBibHVlLFxuICAgIFwiZGFya1wiOiAjMDAwMDAwXG4pO1xuXG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UG9wcGluczppdGFsLHdnaHRAMCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MCw5MDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDA7MSw5MDAmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NYXRlcmlhbCtTeW1ib2xzK091dGxpbmVkOm9wc3osd2dodCxGSUxMLEdSQURAMjAuLjQ4LDEwMC4uNzAwLDAuLjEsLTUwLi4yMDAnKTtcblxuLy9vdmVycmlkZXNcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAuY29udGFpbmVyLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLXh4bCB7XG4gICAgICAgIG1heC13aWR0aDogMTE0MHB4O1xuICAgIH1cbn1cblxuLmNvbCB7XG4gICAgZmxleDogMCAwIGF1dG87XG59XG5cbi8vZm9udHMgXG4ubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOlxuICAnRklMTCcgMCxcbiAgJ3dnaHQnIDQwMCxcbiAgJ0dSQUQnIDAsXG4gICdvcHN6JyAyNFxufVxuXG4ucG9wcGlucy1saWdodCB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy1yZWd1bGFyIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLW1lZGl1bSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy1zZW1pYm9sZCB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5wb3BwaW5zLWV4dHJhYm9sZCB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy1ibGFjayB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucG9wcGlucy10aGluLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1leHRyYWxpZ2h0LWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1saWdodC1pdGFsaWMge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnBvcHBpbnMtcmVndWxhci1pdGFsaWMge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnBvcHBpbnMtbWVkaXVtLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1zZW1pYm9sZC1pdGFsaWMge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnBvcHBpbnMtYm9sZC1pdGFsaWMge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnBvcHBpbnMtZXh0cmFib2xkLWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucG9wcGlucy1ibGFjay1pdGFsaWMge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuaHRtbCwgYm9keSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICBcbn1cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgXG4gICAgJi5sYXJnZXIge1xuICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICB9XG59IFxuXG5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn0gIFxuXG5oMyB7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn0gXG5cbmg0IHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xufSBcblxuI25hdmJhck5hdiBhLCAjbmF2YmFyTmF2IGE6dmlzaXRlZCwgI25hdmJhck5hdiBhOmFjdGl2ZSwgI25hdmJhck5hdiBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xufVxuXG5hLCBhOnZpc2l0ZWQsIGE6YWN0aXZlLCBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjNEFBNERDO1xufVxuXG4udXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5ncmFkaWVudF9jaXJjbGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsICNGNTgzMjAgMCUsICNFOTFEMkQgMTAwJSkgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIHdpZHRoOiA1cmVtO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjVyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI0Y1ODMyMCAwJSwgI0U5MUQyRCAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyLXJhZGl1czogNjBweDtcbiAgICBvcGFjaXR5OiAxOyBcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI0Y1ODMyMCAwJSwgI0U5MUQyRCAxMDAlKSAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7ICAgICAgICBcbiAgICB9XG59XG5cbmJ1dHRvbi5ja3ktYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgNHB4ICNDRUNFQ0U7XG4gICAgXG59XG5cbmJ1dHRvbi5ibGFjayB7XG4gICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDYwcHg7XG4gICAgb3BhY2l0eTogMTsgXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggIzAwMDAwMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZ2xvX2ltYWdlIHtcbiAgICB3aWR0aDogMjJyZW07XG4gICAgdG9wOiAxMnJlbTtcbiAgICBsZWZ0OiA4cmVtOyAgICBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5oZXJvX3RleHQge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdG9wOiAxOC41cmVtO1xuICAgIGxlZnQ6IDEwcmVtOyAgICBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7ICAgIFxufVxuXG4uaGVyb190ZXh0MiB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0b3A6IDI1cmVtO1xuICAgIGxlZnQ6IDI1LjVyZW07ICAgIFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgICAgXG59XG5cbi5wci0xMHAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMlO1xufVxuXG5vbCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG51bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgXG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBcbiAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICBjb2xvcjogI0Y1ODMyMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxub2wgbGk6Om1hcmtlciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50ZXh0X3JlZCB7XG4gICAgY29sb3I6ICNFOTFEMkQgIWltcG9ydGFudDtcbn1cblxuLnRleHRfZ3JlZW4ge1xuICAgIGNvbG9yOiAjNEJCNTQzICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0X3doaXRlIHtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4udGV4dF9vcmFuZ2Uge1xuICAgIGNvbG9yOiAjRjU4MzIwICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0X2JsdWUge1xuICAgIGNvbG9yOiAjMDAyMDVDICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0X2JvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi50ZXh0XzA4IHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLnRleHRfaW5kZW50IHtcbiAgICB0ZXh0LWluZGVudDogLTAuNXJlbTtcbn1cblxuLnBhZGRpbmctdG9wLTQge1xuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xufVxuXG4ucGFkZGluZy1ib3R0b20tNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5mdWxsX2hlaWdodCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2VjdGlvbl9lbmQge1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xufVxuXG4uZ3JheS1maWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGMEVDO1xufVxuXG4uc3RhdGljLWEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYWljb24ucG5nKTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTEwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAxNzBweDtcbn1cblxuLmdjX2JnX2hvbWUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZ2NfYmFja2dyb3VuZC5qcGcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuXG4udHJlYXRpbmdwaV9nY19iZ19ob21lIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3RyZWF0aW5nX3BpX2diX2JnLmpwZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbi5pbnRyb190ZXh0IHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTcwJTtcbn1cblxuLmdyYXlfYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMjQwLCAyMzYsIDAuNyk7XG4gICAgcGFkZGluZzogMi41cmVtIDMuNXJlbSAyLjVyZW0gMnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgIFxuICAgIHAubGFyZ2VyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIH1cbiAgICBcbiAgICAuZXllYnJvdyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIH0gXG4gICAgXG4gICAgJi5sYXJnZV9wYWRkaW5nIHtcbiAgICAgICAgcGFkZGluZzogM3JlbSA1cmVtO1xuICAgIH1cbn1cblxuLm9yYW5nZV9ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNTgzMjA7XG4gICAgcGFkZGluZzogMi41cmVtIDMuNXJlbSAyLjVyZW0gMnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgIFxuICAgICYucGFkZGluZ19ldmVuIHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtO1xuICAgIH1cbn1cblxuLndoaXRlX2JveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIHBhZGRpbmc6IDIuNXJlbSAyLjFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBcbiAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDVyZW07XG4gICAgfSAgICBcbiAgICBcbiAgICAmLmJnMDkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgfVxufVxuXG4ucHVyaV9zdGVwcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG5cbi5mb290ZXIge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBcbiAgICAuZm9vdG5vdGUuc21hbGxlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NXhyZW07XG4gICAgfVxuICAgIFxuICAgIC50ZXh0LWxlZnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICBcbiAgICAuZm9vdGVyX2xvZ28ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMnB4O1xuICAgIH1cbiAgICBcbiAgICAucGwtNTMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICM0QUE0REM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfSAgICBcbiAgICBcbiAgICAuZm9vdGVyX2xpbmsge1xuICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjNEFBNERDO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgXG4gICAgLmZvbGxvd191cyB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBcbiAgICAgICAgLmxpbmtlZF9pbl9pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2YmFyIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4uaG9tZV9oZXJvIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogNTc1cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9ob21lX2hlcm8uanBnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi50cmVhdGluZ19waV9oZXJvIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogNTc1cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy90cmVhdGluZ19waV9iZy5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBcbiAgICBoMSB7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMWVtIGJsYWNrLCAwIDAgMC4yZW0gYmxhY2s7ICAgICAgICBcbiAgICB9XG59XG5cbi53aHlfYWx5Z2xvX2hlcm8ge1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3doeV9hbHlnbG9fYmcuanBnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgXG4gICAgaDEge1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDFlbSBibGFjaywgMCAwIDAuMmVtIGJsYWNrOyAgICAgICAgXG4gICAgfSAgICBcbn1cblxuLnN0YXJ0aW5nX2FseWdsb19oZXJvIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgbWluLWhlaWdodDogNTc1cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9zdGFydGluZ19hbHlnbG9fYmcuanBnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5zaWdudXBfaGVybyB7XG4gICAgaGVpZ2h0OiAxMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xufVxuXG5uYXYge1xuICAgICNuYXZiYXJOYXYge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxufVxuXG5uYXYgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuOHJlbSAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgIGJveC1zaGFkb3c6IDBweCAxMHB4IDE1cHggLTNweCByZ2JhKDAsMCwwLDAuNSk7XG5cbiAgICBcbn1cblxubmF2IHVsIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMnJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDAyMDVDO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjJyZW07XG4gICAgfVxufVxuXG5uYXYgdWwgbGkgYSB7XG4gICAgY29sb3I6ICMwMDIwNUM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIFxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICNGNTgzMjAgIWltcG9ydGFudDtcbiAgICB9ICAgIFxufVxuXG5cbiNoZWFkZXIudHJhbnNwYXJlbnQge1xuLy8gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9ncmFkaWVudF9iZy5wbmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG5cbiNoZWFkZXIuc2Nyb2xsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDEwcHggMTVweCAtM3B4IHJnYmEoMCwwLDAsMC41KTtcbiAgICBcbiAgICB1bCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5zaXRlX2xvZ28ge1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgfVxufVxuXG5cblxuLy9zdGF0cyBjb250YWluZXJcbi5zdGF0aXN0aWNzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjU4MzIwO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuXG4uc3RhdGlzdGljIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleDogMTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMDIwNUM7XG4gICAgcGFkZGluZzogMCAxcmVtO1xufVxuXG4uc3RhdGlzdGljOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ubGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogIzAwMjA1Qztcbn1cblxuLmhhbWJ1cmdlciwgLmhhbWJ1cmdlcjpob3ZlcntcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIFxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwcHggbm9uZSAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jaXNpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBcbiAgICAuZXhwYW5kX2lzaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgICYuZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogODB2aDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgXG4gICAgICAgIC5leHBhbmRfaXNpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9ICAgICAgICBcbiAgICB9XG4gICAgXG4gICAgdWwgbGk6Om1hcmtlciB7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICB9XG5cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICNuYXZiYXJOYXYge1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIG5hdiB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICBcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBcbiAgICAuZ2xvX2ltYWdlIHtcbiAgICAgICAgdG9wOiAxNnJlbTtcbiAgICAgICAgbGVmdDogMnJlbTsgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAuaGVyb190ZXh0IHtcbiAgICAgICAgdG9wOiAyMXJlbTtcbiAgICAgICAgbGVmdDogNnJlbTsgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAuaGVyb190ZXh0MiB7XG4gICAgICAgIHRvcDogMjkuNXJlbTtcbiAgICAgICAgbGVmdDogMTguNXJlbTsgICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAjbmF2YmFyTmF2IHtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjk1KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgICBcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlcm9fdGV4dCB7XG4gICAgICAgIHRvcDogMjYuNXJlbTtcbiAgICAgICAgbGVmdDogNXJlbTtcbiAgICB9XG5cbiAgICAuZ2xvX2ltYWdlIHtcbiAgICAgICAgdG9wOiAyMHJlbTtcbiAgICAgICAgbGVmdDogM3JlbTtcbiAgICB9ICAgXG4gICAgXG4gICAgLmhlcm9fdGV4dDIge1xuICAgICAgICB0b3A6IDMzcmVtO1xuICAgICAgICBsZWZ0OiAyMC41cmVtO1xuICAgIH0gIFxuICAgIFxuICAgICNuYXZiYXJOYXYge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICNuYXZiYXJOYXYge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gICAgXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGJvZHkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICAgIFxuICAgICNzdWJtaXRCdXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAjaGVhZGVyLnNjcm9sbGVkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgXG4gICAgICAgIC5zaXRlX2xvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IDExNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC50cmVhdGluZ19waV9oZXJvLCAud2h5X2FseWdsb19oZXJvIHtcbiAgICAgICAgLmZ1bGxfaGVpZ2h0IHtcbiAgICAgICAgICAgIC5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxZW0gYmxhY2ssIDAgMCAwLjJlbSBibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnN0YXJ0aW5nX2FseWdsb19oZXJvIHtcbiAgICAgICAgLmZ1bGxfaGVpZ2h0IHtcbiAgICAgICAgICAgIC5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxZW0gd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9ICAgICAgICBcbiAgICB9XG4gICAgXG4gICAgLmdyYWRpZW50X2NpcmNsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyAgICAgICAgXG4gICAgfVxuICAgIFxuICAgIC5udW1iZXJfYm94IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICA+cCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbi8vICAgIC5maXhlZC10b3Age1xuLy8gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vICAgIH1cbi8vICAgIFxuICAgIC5zaXRlX2xvZ28ge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgfVxuICAgIFxuICAgIGgxLCAuaDEge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgXG4gICAgICAgICYubGFyZ2VyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIGgyLCAuaDIge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG4gICAgXG4gICAgaDMsIC5oMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cbiAgICBcbiAgICBwIHtcbiAgICAgICAgJi5yZXNldF9tbCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnRyb190ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgIFxuICAgICAgICBiciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6ICBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBhZGRpbmctdG9wLTQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICB9XG4gICAgXG4gICAgLnBhZGRpbmctYm90dG9tLTQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB9ICAgIFxuICAgIFxuICAgIC5ncmF5X2JveCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIFxuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZXllYnJvdyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICAmLmxhcmdlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IFxuICAgICAgICBcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAud2hpdGVfYm94IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmxhcmdlX3BhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAub3JhbmdlX2JveCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIFxuICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5kaWRfeW91X2tub3cge1xuICAgICAgICA+aW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnBzLTUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogLjUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5jaXJjbGVfaWNvbiB7XG4gICAgICAgIHdpZHRoOiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5lbmRfYXJyb3cge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZvb3RlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5mb290ZXJfbGluayB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucGwtNTMge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9ICBcbiAgICAgICAgICAgIFxuICAgICAgICAuZm9sbG93X3VzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgIC5saW5rZWRfaW5faWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICBcbiAgICAuaG9tZV9oZXJvIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYyg1MCUgKyA1MHB4KSBib3R0b207XG4gICAgICAgIFxuICAgICAgICAuaGVyb190ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIHRvcDogMTQuNXJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDByZW07ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5nbG9faW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDE0cmVtO1xuICAgICAgICAgICAgdG9wOiAxMnJlbTtcbiAgICAgICAgICAgIGxlZnQ6IC0xcmVtOyAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuaGVyb190ZXh0MiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICB0b3A6IDIwLjVyZW07XG4gICAgICAgICAgICBsZWZ0OiAxMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICNuYXZiYXJOYXYge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwOyBcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc3RhdGlzdGljcy1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgXG4gICAgICAgIC5zdGF0aXN0aWMge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMjA1QztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGltcG9ydCBcIm1peGlucy9iYW5uZXJcIjtcbkBpbmNsdWRlIGJzQmFubmVyKFwiXCIpO1xuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbXBvcnQtc3RhY2tcbi8vIENvbmZpZ3VyYXRpb25cbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMtZGFya1wiO1xuQGltcG9ydCBcIm1hcHNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcblxuLy8gTGF5b3V0ICYgY29tcG9uZW50c1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcbkBpbXBvcnQgXCJ0eXBlXCI7XG5AaW1wb3J0IFwiaW1hZ2VzXCI7XG5AaW1wb3J0IFwiY29udGFpbmVyc1wiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ0YWJsZXNcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwibmF2XCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImFjY29yZGlvblwiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJwYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYmFkZ2VcIjtcbkBpbXBvcnQgXCJhbGVydFwiO1xuQGltcG9ydCBcInByb2dyZXNzXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJvZmZjYW52YXNcIjtcbkBpbXBvcnQgXCJwbGFjZWhvbGRlcnNcIjtcblxuLy8gSGVscGVyc1xuQGltcG9ydCBcImhlbHBlcnNcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwidXRpbGl0aWVzL2FwaVwiO1xuLy8gc2Nzcy1kb2NzLWVuZCBpbXBvcnQtc3RhY2tcbiIsIkBtaXhpbiBic0Jhbm5lcigkZmlsZSkge1xuICAvKiFcbiAgICogQm9vdHN0cmFwICN7JGZpbGV9IHY1LjMuMyAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAgICogQ29weXJpZ2h0IDIwMTEtMjAyNCBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAgICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXG4gICAqL1xufVxuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIgb3IgdW5pdCgkcHJldi1udW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gIEBpZiBsZW5ndGgoJG1hcCkgPiAwIHtcbiAgICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICAgIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gI3skbWFwLW5hbWV9IG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbG9yc1xuQGZ1bmN0aW9uIHRvLXJnYigkdmFsdWUpIHtcbiAgQHJldHVybiByZWQoJHZhbHVlKSwgZ3JlZW4oJHZhbHVlKSwgYmx1ZSgkdmFsdWUpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG5AZnVuY3Rpb24gcmdiYS1jc3MtdmFyKCRpZGVudGlmaWVyLCAkdGFyZ2V0KSB7XG4gIEBpZiAkaWRlbnRpZmllciA9PSBcImJvZHlcIiBhbmQgJHRhcmdldCA9PSBcImJnXCIge1xuICAgIEByZXR1cm4gcmdiYSh2YXIoLS0jeyRwcmVmaXh9I3skaWRlbnRpZmllcn0tYmctcmdiKSwgdmFyKC0tI3skcHJlZml4fSN7JHRhcmdldH0tb3BhY2l0eSkpO1xuICB9IEBpZiAkaWRlbnRpZmllciA9PSBcImJvZHlcIiBhbmQgJHRhcmdldCA9PSBcInRleHRcIiB7XG4gICAgQHJldHVybiByZ2JhKHZhcigtLSN7JHByZWZpeH0jeyRpZGVudGlmaWVyfS1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9I3skdGFyZ2V0fS1vcGFjaXR5KSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gcmdiYSh2YXIoLS0jeyRwcmVmaXh9I3skaWRlbnRpZmllcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fSN7JHRhcmdldH0tb3BhY2l0eSkpO1xuICB9XG59XG5cbkBmdW5jdGlvbiBtYXAtbG9vcCgkbWFwLCAkZnVuYywgJGFyZ3MuLi4pIHtcbiAgJF9tYXA6ICgpO1xuXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAvLyBhbGxvdyB0byBwYXNzIHRoZSAka2V5IGFuZCAkdmFsdWUgb2YgdGhlIG1hcCBhcyBhbiBmdW5jdGlvbiBhcmd1bWVudFxuICAgICRfYXJnczogKCk7XG4gICAgQGVhY2ggJGFyZyBpbiAkYXJncyB7XG4gICAgICAkX2FyZ3M6IGFwcGVuZCgkX2FyZ3MsIGlmKCRhcmcgPT0gXCIka2V5XCIsICRrZXksIGlmKCRhcmcgPT0gXCIkdmFsdWVcIiwgJHZhbHVlLCAkYXJnKSkpO1xuICAgIH1cblxuICAgICRfbWFwOiBtYXAtbWVyZ2UoJF9tYXAsICgka2V5OiBjYWxsKGdldC1mdW5jdGlvbigkZnVuYyksICRfYXJncy4uLikpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9tYXA7XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNjc3MvZG9sbGFyLXZhcmlhYmxlLXBhdHRlcm5cblxuQGZ1bmN0aW9uIHZhcmlmeSgkbGlzdCkge1xuICAkcmVzdWx0OiBudWxsO1xuICBAZWFjaCAkZW50cnkgaW4gJGxpc3Qge1xuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCB2YXIoLS0jeyRwcmVmaXh9I3skZW50cnl9KSwgc3BhY2UpO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gSW50ZXJuYWwgQm9vdHN0cmFwIGZ1bmN0aW9uIHRvIHR1cm4gbWFwcyBpbnRvIGl0cyBuZWdhdGl2ZSB2YXJpYW50LlxuLy8gSXQgcHJlZml4ZXMgdGhlIGtleXMgd2l0aCBgbmAgYW5kIG1ha2VzIHRoZSB2YWx1ZSBuZWdhdGl2ZS5cbkBmdW5jdGlvbiBuZWdhdGl2aWZ5LW1hcCgkbWFwKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmICRrZXkgIT0gMCB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKFwiblwiICsgJGtleTogKC0kdmFsdWUpKSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gR2V0IG11bHRpcGxlIGtleXMgZnJvbSBhIHNhc3MgbWFwXG5AZnVuY3Rpb24gbWFwLWdldC1tdWx0aXBsZSgkbWFwLCAkdmFsdWVzKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgQGlmIChpbmRleCgkdmFsdWVzLCAka2V5KSAhPSBudWxsKSB7XG4gICAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKCRrZXk6ICR2YWx1ZSkpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIE1lcmdlIG11bHRpcGxlIG1hcHNcbkBmdW5jdGlvbiBtYXAtbWVyZ2UtbXVsdGlwbGUoJG1hcHMuLi4pIHtcbiAgJG1lcmdlZC1tYXBzOiAoKTtcblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICAkbWVyZ2VkLW1hcHM6IG1hcC1tZXJnZSgkbWVyZ2VkLW1hcHMsICRtYXApO1xuICB9XG4gIEByZXR1cm4gJG1lcmdlZC1tYXBzO1xufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG4vL1xuLy8gUmVxdWlyZXMgdGhlIHVzZSBvZiBxdW90ZXMgYXJvdW5kIGRhdGEgVVJJcy5cblxuQGZ1bmN0aW9uIGVzY2FwZS1zdmcoJHN0cmluZykge1xuICBAaWYgc3RyLWluZGV4KCRzdHJpbmcsIFwiZGF0YTppbWFnZS9zdmcreG1sXCIpIHtcbiAgICBAZWFjaCAkY2hhciwgJGVuY29kZWQgaW4gJGVzY2FwZWQtY2hhcmFjdGVycyB7XG4gICAgICAvLyBEbyBub3QgZXNjYXBlIHRoZSB1cmwgYnJhY2tldHNcbiAgICAgIEBpZiBzdHItaW5kZXgoJHN0cmluZywgXCJ1cmwoXCIpID09IDEge1xuICAgICAgICAkc3RyaW5nOiB1cmwoXCIje3N0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCA2LCAtMyksICRjaGFyLCAkZW5jb2RlZCl9XCIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwMTY4XG5cbi8vIEEgbGlzdCBvZiBwcmUtY2FsY3VsYXRlZCBudW1iZXJzIG9mIHBvdyhkaXZpZGUoKGRpdmlkZSgkdmFsdWUsIDI1NSkgKyAuMDU1KSwgMS4wNTUpLCAyLjQpLiAoZnJvbSAwIHRvIDI1NSlcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuXG4kX2x1bWluYW5jZS1saXN0OiAuMDAwOCAuMDAxIC4wMDExIC4wMDEzIC4wMDE1IC4wMDE3IC4wMDIgLjAwMjIgLjAwMjUgLjAwMjcgLjAwMyAuMDAzMyAuMDAzNyAuMDA0IC4wMDQ0IC4wMDQ4IC4wMDUyIC4wMDU2IC4wMDYgLjAwNjUgLjAwNyAuMDA3NSAuMDA4IC4wMDg2IC4wMDkxIC4wMDk3IC4wMTAzIC4wMTEgLjAxMTYgLjAxMjMgLjAxMyAuMDEzNyAuMDE0NCAuMDE1MiAuMDE2IC4wMTY4IC4wMTc2IC4wMTg1IC4wMTk0IC4wMjAzIC4wMjEyIC4wMjIyIC4wMjMyIC4wMjQyIC4wMjUyIC4wMjYyIC4wMjczIC4wMjg0IC4wMjk2IC4wMzA3IC4wMzE5IC4wMzMxIC4wMzQzIC4wMzU2IC4wMzY5IC4wMzgyIC4wMzk1IC4wNDA5IC4wNDIzIC4wNDM3IC4wNDUyIC4wNDY3IC4wNDgyIC4wNDk3IC4wNTEzIC4wNTI5IC4wNTQ1IC4wNTYxIC4wNTc4IC4wNTk1IC4wNjEyIC4wNjMgLjA2NDggLjA2NjYgLjA2ODUgLjA3MDQgLjA3MjMgLjA3NDIgLjA3NjIgLjA3ODIgLjA4MDIgLjA4MjMgLjA4NDQgLjA4NjUgLjA4ODcgLjA5MDggLjA5MzEgLjA5NTMgLjA5NzYgLjA5OTkgLjEwMjIgLjEwNDYgLjEwNyAuMTA5NSAuMTExOSAuMTE0NCAuMTE3IC4xMTk1IC4xMjIxIC4xMjQ4IC4xMjc0IC4xMzAxIC4xMzI5IC4xMzU2IC4xMzg0IC4xNDEzIC4xNDQxIC4xNDcgLjE1IC4xNTI5IC4xNTU5IC4xNTkgLjE2MiAuMTY1MSAuMTY4MyAuMTcxNCAuMTc0NiAuMTc3OSAuMTgxMiAuMTg0NSAuMTg3OCAuMTkxMiAuMTk0NiAuMTk4MSAuMjAxNiAuMjA1MSAuMjA4NiAuMjEyMiAuMjE1OSAuMjE5NSAuMjIzMiAuMjI3IC4yMzA3IC4yMzQ2IC4yMzg0IC4yNDIzIC4yNDYyIC4yNTAyIC4yNTQyIC4yNTgyIC4yNjIzIC4yNjY0IC4yNzA1IC4yNzQ3IC4yNzg5IC4yODMxIC4yODc0IC4yOTE4IC4yOTYxIC4zMDA1IC4zMDUgLjMwOTUgLjMxNCAuMzE4NSAuMzIzMSAuMzI3OCAuMzMyNSAuMzM3MiAuMzQxOSAuMzQ2NyAuMzUxNSAuMzU2NCAuMzYxMyAuMzY2MyAuMzcxMiAuMzc2MyAuMzgxMyAuMzg2NCAuMzkxNiAuMzk2OCAuNDAyIC40MDcyIC40MTI1IC40MTc5IC40MjMzIC40Mjg3IC40MzQyIC40Mzk3IC40NDUyIC40NTA4IC40NTY0IC40NjIxIC40Njc4IC40NzM1IC40NzkzIC40ODUxIC40OTEgLjQ5NjkgLjUwMjkgLjUwODkgLjUxNDkgLjUyMSAuNTI3MSAuNTMzMyAuNTM5NSAuNTQ1NyAuNTUyIC41NTgzIC41NjQ3IC41NzExIC41Nzc2IC41ODQxIC41OTA2IC41OTcyIC42MDM4IC42MTA1IC42MTcyIC42MjQgLjYzMDggLjYzNzYgLjY0NDUgLjY1MTQgLjY1ODQgLjY2NTQgLjY3MjQgLjY3OTUgLjY4NjcgLjY5MzkgLjcwMTEgLjcwODQgLjcxNTcgLjcyMzEgLjczMDUgLjczNzkgLjc0NTQgLjc1MjkgLjc2MDUgLjc2ODIgLjc3NTggLjc4MzUgLjc5MTMgLjc5OTEgLjgwNyAuODE0OCAuODIyOCAuODMwOCAuODM4OCAuODQ2OSAuODU1IC44NjMyIC44NzE0IC44Nzk2IC44ODc5IC44OTYzIC45MDQ3IC45MTMxIC45MjE2IC45MzAxIC45Mzg3IC45NDczIC45NTYgLjk2NDcgLjk3MzQgLjk4MjMgLjk5MTEgMTtcblxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAkY29sb3ItY29udHJhc3QtZGFyazogJGNvbG9yLWNvbnRyYXN0LWRhcmssICRjb2xvci1jb250cmFzdC1saWdodDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkbWluLWNvbnRyYXN0LXJhdGlvOiAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XG4gICRmb3JlZ3JvdW5kczogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCAkY29sb3ItY29udHJhc3QtZGFyaywgJHdoaXRlLCAkYmxhY2s7XG4gICRtYXgtcmF0aW86IDA7XG4gICRtYXgtcmF0aW8tY29sb3I6IG51bGw7XG5cbiAgQGVhY2ggJGNvbG9yIGluICRmb3JlZ3JvdW5kcyB7XG4gICAgJGNvbnRyYXN0LXJhdGlvOiBjb250cmFzdC1yYXRpbygkYmFja2dyb3VuZCwgJGNvbG9yKTtcbiAgICBAaWYgJGNvbnRyYXN0LXJhdGlvID4gJG1pbi1jb250cmFzdC1yYXRpbyB7XG4gICAgICBAcmV0dXJuICRjb2xvcjtcbiAgICB9IEBlbHNlIGlmICRjb250cmFzdC1yYXRpbyA+ICRtYXgtcmF0aW8ge1xuICAgICAgJG1heC1yYXRpbzogJGNvbnRyYXN0LXJhdGlvO1xuICAgICAgJG1heC1yYXRpby1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEB3YXJuIFwiRm91bmQgbm8gY29sb3IgbGVhZGluZyB0byAjeyRtaW4tY29udHJhc3QtcmF0aW99OjEgY29udHJhc3QgcmF0aW8gYWdhaW5zdCAjeyRiYWNrZ3JvdW5kfS4uLlwiO1xuXG4gIEByZXR1cm4gJG1heC1yYXRpby1jb2xvcjtcbn1cblxuQGZ1bmN0aW9uIGNvbnRyYXN0LXJhdGlvKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZDogJGNvbG9yLWNvbnRyYXN0LWxpZ2h0KSB7XG4gICRsMTogbHVtaW5hbmNlKCRiYWNrZ3JvdW5kKTtcbiAgJGwyOiBsdW1pbmFuY2Uob3BhcXVlKCRiYWNrZ3JvdW5kLCAkZm9yZWdyb3VuZCkpO1xuXG4gIEByZXR1cm4gaWYoJGwxID4gJGwyLCBkaXZpZGUoJGwxICsgLjA1LCAkbDIgKyAuMDUpLCBkaXZpZGUoJGwyICsgLjA1LCAkbDEgKyAuMDUpKTtcbn1cblxuLy8gUmV0dXJuIFdDQUcyLjEgcmVsYXRpdmUgbHVtaW5hbmNlXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcvI2Rmbi1yZWxhdGl2ZS1sdW1pbmFuY2Vcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRy8jZGZuLWNvbnRyYXN0LXJhdGlvXG5AZnVuY3Rpb24gbHVtaW5hbmNlKCRjb2xvcikge1xuICAkcmdiOiAoXG4gICAgXCJyXCI6IHJlZCgkY29sb3IpLFxuICAgIFwiZ1wiOiBncmVlbigkY29sb3IpLFxuICAgIFwiYlwiOiBibHVlKCRjb2xvcilcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRyZ2Ige1xuICAgICR2YWx1ZTogaWYoZGl2aWRlKCR2YWx1ZSwgMjU1KSA8IC4wNDA0NSwgZGl2aWRlKGRpdmlkZSgkdmFsdWUsIDI1NSksIDEyLjkyKSwgbnRoKCRfbHVtaW5hbmNlLWxpc3QsICR2YWx1ZSArIDEpKTtcbiAgICAkcmdiOiBtYXAtbWVyZ2UoJHJnYiwgKCRuYW1lOiAkdmFsdWUpKTtcbiAgfVxuXG4gIEByZXR1cm4gKG1hcC1nZXQoJHJnYiwgXCJyXCIpICogLjIxMjYpICsgKG1hcC1nZXQoJHJnYiwgXCJnXCIpICogLjcxNTIpICsgKG1hcC1nZXQoJHJnYiwgXCJiXCIpICogLjA3MjIpO1xufVxuXG4vLyBSZXR1cm4gb3BhcXVlIGNvbG9yXG4vLyBvcGFxdWUoI2ZmZiwgcmdiYSgwLCAwLCAwLCAuNSkpID0+ICM4MDgwODBcbkBmdW5jdGlvbiBvcGFxdWUoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kKSB7XG4gIEByZXR1cm4gbWl4KHJnYmEoJGZvcmVncm91bmQsIDEpLCAkYmFja2dyb3VuZCwgb3BhY2l0eSgkZm9yZWdyb3VuZCkgKiAxMDAlKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLWZ1bmN0aW9uc1xuLy8gVGludCBhIGNvbG9yOiBtaXggYSBjb2xvciB3aXRoIHdoaXRlXG5AZnVuY3Rpb24gdGludC1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHdlaWdodCk7XG59XG5cbi8vIFNoYWRlIGEgY29sb3I6IG1peCBhIGNvbG9yIHdpdGggYmxhY2tcbkBmdW5jdGlvbiBzaGFkZS1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHdlaWdodCk7XG59XG5cbi8vIFNoYWRlIHRoZSBjb2xvciBpZiB0aGUgd2VpZ2h0IGlzIHBvc2l0aXZlLCBlbHNlIHRpbnQgaXRcbkBmdW5jdGlvbiBzaGlmdC1jb2xvcigkY29sb3IsICR3ZWlnaHQpIHtcbiAgQHJldHVybiBpZigkd2VpZ2h0ID4gMCwgc2hhZGUtY29sb3IoJGNvbG9yLCAkd2VpZ2h0KSwgdGludC1jb2xvcigkY29sb3IsIC0kd2VpZ2h0KSk7XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLWZ1bmN0aW9uc1xuXG4vLyBSZXR1cm4gdmFsaWQgY2FsY1xuQGZ1bmN0aW9uIGFkZCgkdmFsdWUxLCAkdmFsdWUyLCAkcmV0dXJuLWNhbGM6IHRydWUpIHtcbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUyO1xuICB9XG5cbiAgQGlmICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiAkdmFsdWUxO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHZhbHVlMSkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCR2YWx1ZTIpID09IG51bWJlciBhbmQgY29tcGFyYWJsZSgkdmFsdWUxLCAkdmFsdWUyKSB7XG4gICAgQHJldHVybiAkdmFsdWUxICsgJHZhbHVlMjtcbiAgfVxuXG4gIEByZXR1cm4gaWYoJHJldHVybi1jYWxjID09IHRydWUsIGNhbGMoI3skdmFsdWUxfSArICN7JHZhbHVlMn0pLCAkdmFsdWUxICsgdW5xdW90ZShcIiArIFwiKSArICR2YWx1ZTIpO1xufVxuXG5AZnVuY3Rpb24gc3VidHJhY3QoJHZhbHVlMSwgJHZhbHVlMiwgJHJldHVybi1jYWxjOiB0cnVlKSB7XG4gIEBpZiAkdmFsdWUxID09IG51bGwgYW5kICR2YWx1ZTIgPT0gbnVsbCB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgQGlmICR2YWx1ZTEgPT0gbnVsbCB7XG4gICAgQHJldHVybiAtJHZhbHVlMjtcbiAgfVxuXG4gIEBpZiAkdmFsdWUyID09IG51bGwge1xuICAgIEByZXR1cm4gJHZhbHVlMTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZTEpID09IG51bWJlciBhbmQgdHlwZS1vZigkdmFsdWUyKSA9PSBudW1iZXIgYW5kIGNvbXBhcmFibGUoJHZhbHVlMSwgJHZhbHVlMikge1xuICAgIEByZXR1cm4gJHZhbHVlMSAtICR2YWx1ZTI7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkdmFsdWUyKSAhPSBudW1iZXIge1xuICAgICR2YWx1ZTI6IHVucXVvdGUoXCIoXCIpICsgJHZhbHVlMiArIHVucXVvdGUoXCIpXCIpO1xuICB9XG5cbiAgQHJldHVybiBpZigkcmV0dXJuLWNhbGMgPT0gdHJ1ZSwgY2FsYygjeyR2YWx1ZTF9IC0gI3skdmFsdWUyfSksICR2YWx1ZTEgKyB1bnF1b3RlKFwiIC0gXCIpICsgJHZhbHVlMik7XG59XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjAvI3Zpc3VhbC1hdWRpby1jb250cmFzdC1jb250cmFzdFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuJGJsdWUtMjAwOiB0aW50LWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNTAwOiAkYmx1ZSAhZGVmYXVsdDtcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xuJGJsdWUtODAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRpbmRpZ28tMTAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNDAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby03MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMzAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XG4kcHVycGxlLTYwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTkwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcblxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuJHBpbmstMjAwOiB0aW50LWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNTAwOiAkcGluayAhZGVmYXVsdDtcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xuJHBpbmstODAwOiBzaGFkZS1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG5cbiRyZWQtMTAwOiB0aW50LWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtNDAwOiB0aW50LWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC03MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMzAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcblxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMjAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNTAwOiAkeWVsbG93ICFkZWZhdWx0O1xuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctODAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG5cbiRncmVlbi0xMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi00MDA6IHRpbnQtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xuXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC0zMDA6IHRpbnQtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xuJHRlYWwtNjAwOiBzaGFkZS1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtOTAwOiBzaGFkZS1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcblxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuJGN5YW4tMjAwOiB0aW50LWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNTAwOiAkY3lhbiAhZGVmYXVsdDtcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xuJGN5YW4tODAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiRibHVlczogKFxuICBcImJsdWUtMTAwXCI6ICRibHVlLTEwMCxcbiAgXCJibHVlLTIwMFwiOiAkYmx1ZS0yMDAsXG4gIFwiYmx1ZS0zMDBcIjogJGJsdWUtMzAwLFxuICBcImJsdWUtNDAwXCI6ICRibHVlLTQwMCxcbiAgXCJibHVlLTUwMFwiOiAkYmx1ZS01MDAsXG4gIFwiYmx1ZS02MDBcIjogJGJsdWUtNjAwLFxuICBcImJsdWUtNzAwXCI6ICRibHVlLTcwMCxcbiAgXCJibHVlLTgwMFwiOiAkYmx1ZS04MDAsXG4gIFwiYmx1ZS05MDBcIjogJGJsdWUtOTAwXG4pICFkZWZhdWx0O1xuXG4kaW5kaWdvczogKFxuICBcImluZGlnby0xMDBcIjogJGluZGlnby0xMDAsXG4gIFwiaW5kaWdvLTIwMFwiOiAkaW5kaWdvLTIwMCxcbiAgXCJpbmRpZ28tMzAwXCI6ICRpbmRpZ28tMzAwLFxuICBcImluZGlnby00MDBcIjogJGluZGlnby00MDAsXG4gIFwiaW5kaWdvLTUwMFwiOiAkaW5kaWdvLTUwMCxcbiAgXCJpbmRpZ28tNjAwXCI6ICRpbmRpZ28tNjAwLFxuICBcImluZGlnby03MDBcIjogJGluZGlnby03MDAsXG4gIFwiaW5kaWdvLTgwMFwiOiAkaW5kaWdvLTgwMCxcbiAgXCJpbmRpZ28tOTAwXCI6ICRpbmRpZ28tOTAwXG4pICFkZWZhdWx0O1xuXG4kcHVycGxlczogKFxuICBcInB1cnBsZS0xMDBcIjogJHB1cnBsZS0xMDAsXG4gIFwicHVycGxlLTIwMFwiOiAkcHVycGxlLTIwMCxcbiAgXCJwdXJwbGUtMzAwXCI6ICRwdXJwbGUtMzAwLFxuICBcInB1cnBsZS00MDBcIjogJHB1cnBsZS00MDAsXG4gIFwicHVycGxlLTUwMFwiOiAkcHVycGxlLTUwMCxcbiAgXCJwdXJwbGUtNjAwXCI6ICRwdXJwbGUtNjAwLFxuICBcInB1cnBsZS03MDBcIjogJHB1cnBsZS03MDAsXG4gIFwicHVycGxlLTgwMFwiOiAkcHVycGxlLTgwMCxcbiAgXCJwdXJwbGUtOTAwXCI6ICRwdXJwbGUtOTAwXG4pICFkZWZhdWx0O1xuXG4kcGlua3M6IChcbiAgXCJwaW5rLTEwMFwiOiAkcGluay0xMDAsXG4gIFwicGluay0yMDBcIjogJHBpbmstMjAwLFxuICBcInBpbmstMzAwXCI6ICRwaW5rLTMwMCxcbiAgXCJwaW5rLTQwMFwiOiAkcGluay00MDAsXG4gIFwicGluay01MDBcIjogJHBpbmstNTAwLFxuICBcInBpbmstNjAwXCI6ICRwaW5rLTYwMCxcbiAgXCJwaW5rLTcwMFwiOiAkcGluay03MDAsXG4gIFwicGluay04MDBcIjogJHBpbmstODAwLFxuICBcInBpbmstOTAwXCI6ICRwaW5rLTkwMFxuKSAhZGVmYXVsdDtcblxuJHJlZHM6IChcbiAgXCJyZWQtMTAwXCI6ICRyZWQtMTAwLFxuICBcInJlZC0yMDBcIjogJHJlZC0yMDAsXG4gIFwicmVkLTMwMFwiOiAkcmVkLTMwMCxcbiAgXCJyZWQtNDAwXCI6ICRyZWQtNDAwLFxuICBcInJlZC01MDBcIjogJHJlZC01MDAsXG4gIFwicmVkLTYwMFwiOiAkcmVkLTYwMCxcbiAgXCJyZWQtNzAwXCI6ICRyZWQtNzAwLFxuICBcInJlZC04MDBcIjogJHJlZC04MDAsXG4gIFwicmVkLTkwMFwiOiAkcmVkLTkwMFxuKSAhZGVmYXVsdDtcblxuJG9yYW5nZXM6IChcbiAgXCJvcmFuZ2UtMTAwXCI6ICRvcmFuZ2UtMTAwLFxuICBcIm9yYW5nZS0yMDBcIjogJG9yYW5nZS0yMDAsXG4gIFwib3JhbmdlLTMwMFwiOiAkb3JhbmdlLTMwMCxcbiAgXCJvcmFuZ2UtNDAwXCI6ICRvcmFuZ2UtNDAwLFxuICBcIm9yYW5nZS01MDBcIjogJG9yYW5nZS01MDAsXG4gIFwib3JhbmdlLTYwMFwiOiAkb3JhbmdlLTYwMCxcbiAgXCJvcmFuZ2UtNzAwXCI6ICRvcmFuZ2UtNzAwLFxuICBcIm9yYW5nZS04MDBcIjogJG9yYW5nZS04MDAsXG4gIFwib3JhbmdlLTkwMFwiOiAkb3JhbmdlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHllbGxvd3M6IChcbiAgXCJ5ZWxsb3ctMTAwXCI6ICR5ZWxsb3ctMTAwLFxuICBcInllbGxvdy0yMDBcIjogJHllbGxvdy0yMDAsXG4gIFwieWVsbG93LTMwMFwiOiAkeWVsbG93LTMwMCxcbiAgXCJ5ZWxsb3ctNDAwXCI6ICR5ZWxsb3ctNDAwLFxuICBcInllbGxvdy01MDBcIjogJHllbGxvdy01MDAsXG4gIFwieWVsbG93LTYwMFwiOiAkeWVsbG93LTYwMCxcbiAgXCJ5ZWxsb3ctNzAwXCI6ICR5ZWxsb3ctNzAwLFxuICBcInllbGxvdy04MDBcIjogJHllbGxvdy04MDAsXG4gIFwieWVsbG93LTkwMFwiOiAkeWVsbG93LTkwMFxuKSAhZGVmYXVsdDtcblxuJGdyZWVuczogKFxuICBcImdyZWVuLTEwMFwiOiAkZ3JlZW4tMTAwLFxuICBcImdyZWVuLTIwMFwiOiAkZ3JlZW4tMjAwLFxuICBcImdyZWVuLTMwMFwiOiAkZ3JlZW4tMzAwLFxuICBcImdyZWVuLTQwMFwiOiAkZ3JlZW4tNDAwLFxuICBcImdyZWVuLTUwMFwiOiAkZ3JlZW4tNTAwLFxuICBcImdyZWVuLTYwMFwiOiAkZ3JlZW4tNjAwLFxuICBcImdyZWVuLTcwMFwiOiAkZ3JlZW4tNzAwLFxuICBcImdyZWVuLTgwMFwiOiAkZ3JlZW4tODAwLFxuICBcImdyZWVuLTkwMFwiOiAkZ3JlZW4tOTAwXG4pICFkZWZhdWx0O1xuXG4kdGVhbHM6IChcbiAgXCJ0ZWFsLTEwMFwiOiAkdGVhbC0xMDAsXG4gIFwidGVhbC0yMDBcIjogJHRlYWwtMjAwLFxuICBcInRlYWwtMzAwXCI6ICR0ZWFsLTMwMCxcbiAgXCJ0ZWFsLTQwMFwiOiAkdGVhbC00MDAsXG4gIFwidGVhbC01MDBcIjogJHRlYWwtNTAwLFxuICBcInRlYWwtNjAwXCI6ICR0ZWFsLTYwMCxcbiAgXCJ0ZWFsLTcwMFwiOiAkdGVhbC03MDAsXG4gIFwidGVhbC04MDBcIjogJHRlYWwtODAwLFxuICBcInRlYWwtOTAwXCI6ICR0ZWFsLTkwMFxuKSAhZGVmYXVsdDtcblxuJGN5YW5zOiAoXG4gIFwiY3lhbi0xMDBcIjogJGN5YW4tMTAwLFxuICBcImN5YW4tMjAwXCI6ICRjeWFuLTIwMCxcbiAgXCJjeWFuLTMwMFwiOiAkY3lhbi0zMDAsXG4gIFwiY3lhbi00MDBcIjogJGN5YW4tNDAwLFxuICBcImN5YW4tNTAwXCI6ICRjeWFuLTUwMCxcbiAgXCJjeWFuLTYwMFwiOiAkY3lhbi02MDAsXG4gIFwiY3lhbi03MDBcIjogJGN5YW4tNzAwLFxuICBcImN5YW4tODAwXCI6ICRjeWFuLTgwMCxcbiAgXCJjeWFuLTkwMFwiOiAkY3lhbi05MDBcbikgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3ItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICBcImRhcmtcIjogICAgICAgJGRhcmtcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtdmFyaWFibGVzXG4kcHJpbWFyeS10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzOiBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLXRleHQtZW1waGFzaXM6ICAgICAgc2hhZGUtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci10ZXh0LWVtcGhhc2lzOiAgICBzaGFkZS1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LXRleHQtZW1waGFzaXM6ICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzOiAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkcHJpbWFyeSwgODAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYmctc3VidGxlOiAgICAgdGludC1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA4MCUpICFkZWZhdWx0O1xuJGluZm8tYmctc3VidGxlOiAgICAgICAgICB0aW50LWNvbG9yKCRpbmZvLCA4MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGU6ICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDgwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYmctc3VidGxlOiAgICAgICAgIG1peCgkZ3JheS0xMDAsICR3aGl0ZSkgIWRlZmF1bHQ7XG4kZGFyay1iZy1zdWJ0bGU6ICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcbiRwcmltYXJ5LWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZTogdGludC1jb2xvcigkc2Vjb25kYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tYm9yZGVyLXN1YnRsZTogICAgICB0aW50LWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCR3YXJuaW5nLCA2MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlOiAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtYm9yZGVyLXN1YnRsZTogICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGU6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jb250YWluZXItY2xhc3NlczogICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY3NzZ3JpZDogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmZzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcblxuJGVuYWJsZS1kYXJrLW1vZGU6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRjb2xvci1tb2RlLXR5cGU6ICAgICAgICAgICAgIGRhdGEgIWRlZmF1bHQ7IC8vIGBkYXRhYCBvciBgbWVkaWEtcXVlcnlgXG5cbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xuXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wIGZvciB0aGUgc2hvcnRlciBgJHByZWZpeGBcbiRwcmVmaXg6ICAgICAgICAgICAgICAgICAgICAgICR2YXJpYWJsZS1wcmVmaXggIWRlZmF1bHQ7XG5cbi8vIEdyYWRpZW50XG4vL1xuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcbi8vIFRoaXMgZ3JhZGllbnQgaXMgYWxzbyBhZGRlZCB0byBlbGVtZW50cyB3aXRoIGAuYmctZ3JhZGllbnRgXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZhcmlhYmxlLWdyYWRpZW50XG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogMCxcbiAgMTogJHNwYWNlciAqIC4yNSxcbiAgMjogJHNwYWNlciAqIC41LFxuICAzOiAkc3BhY2VyLFxuICA0OiAkc3BhY2VyICogMS41LFxuICA1OiAkc3BhY2VyICogMyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNwYWNlci12YXJpYWJsZXMtbWFwc1xuXG4vLyBQb3NpdGlvblxuLy9cbi8vIERlZmluZSB0aGUgZWRnZSBwb3NpdGlvbmluZyBhbmNob3JzIG9mIHRoZSBwb3NpdGlvbiB1dGlsaXRpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3NpdGlvbi1tYXBcbiRwb3NpdGlvbi12YWx1ZXM6IChcbiAgMDogMCxcbiAgNTA6IDUwJSxcbiAgMTAwOiAxMDAlXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3NpdGlvbi1tYXBcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktdGV4dC1hbGlnbjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGJvZHktc2Vjb25kYXJ5LWNvbG9yOiAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kYm9keS10ZXJ0aWFyeS1jb2xvcjogICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjUpICFkZWZhdWx0O1xuJGJvZHktdGVydGlhcnktYmc6ICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGJvZHktZW1waGFzaXMtY29sb3I6ICAgICAgICRibGFjayAhZGVmYXVsdDtcblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogICAgICAgICAgICAgICAgICAgMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4vLyBJY29uIGxpbmtzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaWNvbi1saW5rLXZhcmlhYmxlc1xuJGljb24tbGluay1nYXA6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstdW5kZXJsaW5lLW9mZnNldDogIC4yNWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXNpemU6ICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zaXRpb246ICAgLjJzIGVhc2UtaW4tb3V0IHRyYW5zZm9ybSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZTNkKC4yNWVtLCAwLCAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaWNvbi1saW5rLXZhcmlhYmxlc1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweCxcbiAgeHhsOiAxNDAwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHgsXG4gIHh4bDogMTMyMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb250YWluZXItbWF4LXdpZHRoc1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbi8vIENvbnRhaW5lciBwYWRkaW5nXG5cbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci12YXJpYWJsZXNcbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGhzOiAoXG4gIDE6IDFweCxcbiAgMjogMnB4LFxuICAzOiAzcHgsXG4gIDQ6IDRweCxcbiAgNTogNXB4XG4pICFkZWZhdWx0O1xuJGJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgc29saWQgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAgICByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteHhsOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuLy8gZnVzdi1kaXNhYmxlXG4kYm9yZGVyLXJhZGl1cy0yeGw6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy14eGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm94LXNoYWRvdy12YXJpYWJsZXNcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm94LXNoYWRvdy12YXJpYWJsZXNcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuJGZvY3VzLXJpbmctd2lkdGg6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctb3BhY2l0eTogICAgLjI1ICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctY29sb3I6ICAgICAgcmdiYSgkcHJpbWFyeSwgJGZvY3VzLXJpbmctb3BhY2l0eSkgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ibHVyOiAgICAgICAwICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYm94LXNoYWRvdzogMCAwICRmb2N1cy1yaW5nLWJsdXIgJGZvY3VzLXJpbmctd2lkdGggJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvY3VzLXJpbmctdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC12YXJpYWJsZXNcbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LXZhcmlhYmxlc1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xsYXBzZS10cmFuc2l0aW9uXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2Utd2lkdGg6ICAgd2lkdGggLjM1cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS10cmFuc2l0aW9uXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcbiRhc3BlY3QtcmF0aW9zOiAoXG4gIFwiMXgxXCI6IDEwMCUsXG4gIFwiNHgzXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcbiAgXCIxNng5XCI6IGNhbGMoOSAvIDE2ICogMTAwJSksXG4gIFwiMjF4OVwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXZhcmlhYmxlc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWNvZGU6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSAhZGVmYXVsdDtcblxuLy8gJGZvbnQtc2l6ZS1yb290IGFmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBhbmQgbWFyZ2luc1xuLy8gJGZvbnQtc2l6ZS1iYXNlIGFmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XG4kZm9udC1zaXplLXJvb3Q6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1tZWRpdW06ICAgICAgICAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogICAgICAgIDYwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDIgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtc2l6ZXNcbiRmb250LXNpemVzOiAoXG4gIDE6ICRoMS1mb250LXNpemUsXG4gIDI6ICRoMi1mb250LXNpemUsXG4gIDM6ICRoMy1mb250LXNpemUsXG4gIDQ6ICRoNC1mb250LXNpemUsXG4gIDU6ICRoNS1mb250LXNpemUsXG4gIDY6ICRoNi1mb250LXNpemVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtc2l6ZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGhlYWRpbmdzLXZhcmlhYmxlc1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXN0eWxlOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkaW5ncy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcbiAgMTogNXJlbSxcbiAgMjogNC41cmVtLFxuICAzOiA0cmVtLFxuICA0OiAzLjVyZW0sXG4gIDU6IDNyZW0sXG4gIDY6IDIuNXJlbVxuKSAhZGVmYXVsdDtcblxuJGRpc3BsYXktZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXN0eWxlOiAgbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkaXNwbGF5LWhlYWRpbmdzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0eXBlLXZhcmlhYmxlc1xuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiA1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kaHItYmctY29sb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuJGhyLWhlaWdodDogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIEFsbG93cyBmb3IgaW5oZXJpdGVkIGNvbG9yc1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kaHItb3BhY2l0eTogICAgICAgICAgICAgICAgICAuMjUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCB2ci12YXJpYWJsZXNcbiR2ci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2ci12YXJpYWJsZXNcblxuJGxlZ2VuZC1tYXJnaW4tYm90dG9tOiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4xODc1ZW0gIWRlZmF1bHQ7XG4kbWFyay1jb2xvcjogICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLWNvbG9yOiAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpICFkZWZhdWx0O1xuXG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmctZmFjdG9yOiAgICAgICAuMDc1ICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItZmFjdG9yOiAgICAgICAgIC4yICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcjogZXZlbiAhZGVmYXVsdDtcblxuJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjogY3VycmVudGNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS1sb29wXG4kdGFibGUtdmFyaWFudHM6IChcbiAgXCJwcmltYXJ5XCI6ICAgIHNoaWZ0LWNvbG9yKCRwcmltYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInNlY29uZGFyeVwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJzdWNjZXNzXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImluZm9cIjogICAgICAgc2hpZnQtY29sb3IoJGluZm8sICR0YWJsZS1iZy1zY2FsZSksXG4gIFwid2FybmluZ1wiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJkYW5nZXJcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFyayxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLWxvb3BcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGlucHV0LWJ0bi12YXJpYWJsZXNcbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgICAgJGZvY3VzLXJpbmctd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6ICRmb2N1cy1yaW5nLW9wYWNpdHkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ibHVyOiAgICAgICAgICAkZm9jdXMtcmluZy1ibHVyICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1idG4tdmFyaWFibGVzXG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhYmxlc1xuJGJ0bi1jb2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJ0bi1saW5rLWZvY3VzLXNoYWRvdy1yZ2I6ICAgdG8tcmdiKG1peChjb2xvci1jb250cmFzdCgkbGluay1jb2xvciksICRsaW5rLWNvbG9yLCAxNSUpKSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRidG4taG92ZXItYmctc2hhZGUtYW1vdW50OiAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50OiAgICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50OiAgIDIwJSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50OiAgICAxMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQ6ICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQ6ICAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAyNSUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQ6ICAgMTAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFibGVzXG5cblxuLy8gRm9ybXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdGV4dC12YXJpYWJsZXNcbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdGV4dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tbGFiZWwtdmFyaWFibGVzXG4kZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1sYWJlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0taW5wdXQtdmFyaWFibGVzXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAyKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogICAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdtNiAxMCAzIDMgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMicgZmlsbD0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTogICAgJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDogICAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1jaGVjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgIDJlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlOiAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzOiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbjogICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3I6ICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZTogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlOiAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1ncm91cC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgICAgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgZm9yIGJhY2tncm91bmQtaW1hZ2VcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc206ICAgICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZzogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC10cmFuc2l0aW9uOiAgICAgICAgICAkaW5wdXQtdHJhbnNpdGlvbiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbjogICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1yYW5nZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmlsZS12YXJpYWJsZXNcbiRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWhlaWdodDogICAgICAgICAgICAgICAgICBhZGQoMy41cmVtLCAkaW5wdXQtaGVpZ2h0LWJvcmRlcikgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDogICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy15OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgICAgICAgMS42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDogICAgICAgICAgICAxLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6ICAgICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgICAgICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG4kZm9ybS12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2VzcyksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3IpLFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlciksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fWRhbmdlci1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wOiAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDQ1ICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTUgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9hc3Q6ICAgICAgICAgICAgICAgICAgICAgIDEwOTAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LWxldmVscy1tYXBcbiR6aW5kZXgtbGV2ZWxzOiAoXG4gIG4xOiAtMSxcbiAgMDogMCxcbiAgMTogMSxcbiAgMjogMixcbiAgMzogM1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LWxldmVscy1tYXBcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi11bmRlcmxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdmFyaWFibGVzXG5cblxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdmFyaWFibGVzXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC42NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjE1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWljb24tY29sb3I6ICAgICAgICAgICAgJG5hdmJhci1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay12YXJpYWJsZXNcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi12YXJpYWJsZXNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBjYWxjKCN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9IC0gI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4zXG4vLyBmdXN2LWVuYWJsZVxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nTTIgNUw4IDExTDE0IDUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCc+PHBhdGggZD0nTTIgNUw4IDExTDE0IDUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yOiAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC12YXJpYWJsZXNcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCB0byBiZSByZW1vdmVkIGluIHY2XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLXZhcmlhYmxlc1xuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtdmFyaWFibGVzXG5cblxuLy8gTGlzdCBncm91cFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC12YXJpYWJsZXNcbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4vLyBmdXN2LWRpc2FibGVcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4kbGlzdC1ncm91cC1pdGVtLWNvbG9yLXNjYWxlOiAgICAgICA0MCUgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC12YXJpYWJsZXNcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWwtdmFyaWFibGVzXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aHVtYm5haWwtdmFyaWFibGVzXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlLXZhcmlhYmxlc1xuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmaWd1cmUtdmFyaWFibGVzXG5cblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItdmFyaWFibGVzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZDogICAgICAgICRicmVhZGNydW1iLWRpdmlkZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLXZhcmlhYmxlc1xuXG4vLyBDYXJvdXNlbFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtdmFyaWFibGVzXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJvdXNlbC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjogICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLWRhcmstdmFyaWFibGVzXG5cblxuLy8gU3Bpbm5lcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItdmFyaWFibGVzXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItdmVydGljYWwtYWxpZ246ICAtLjEyNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgICAuMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci12YXJpYWJsZXNcblxuXG4vLyBDbG9zZVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtdmFyaWFibGVzXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy14OiAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWJnOiAgICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMCAxIDEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDEgMSAxLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwIDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAgMSAwLTEuNDE0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtc2hhZG93OiAgICAgJGZvY3VzLXJpbmctYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tY2xvc2Utb3BhY2l0eTogICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogLjI1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNsb3NlLXZhcmlhYmxlc1xuXG5cbi8vIE9mZmNhbnZhc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuJG9mZmNhbnZhcy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhZGRpbmcteDogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aDogICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHQ6ICAgICAgICAgMzB2aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgIC4zcyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmctY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY29sb3I6ICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLXZhcmlhYmxlc1xuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjE4NzVyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHJlbW92aW5nIGluIHY2XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMtZGFya1wiOyAvLyBUT0RPOiBjYW4gYmUgcmVtb3ZlZCBzYWZlbHkgaW4gdjYsIG9ubHkgaGVyZSB0byBhdm9pZCBicmVha2luZyBjaGFuZ2VzIGluIHY1LjNcbiIsIi8vIERhcmsgY29sb3IgbW9kZSB2YXJpYWJsZXNcbi8vXG4vLyBDdXN0b20gdmFyaWFibGVzIGZvciB0aGUgYFtkYXRhLWJzLXRoZW1lPVwiZGFya1wiXWAgdGhlbWUuIFVzZSB0aGlzIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIHlvdXIgb3duIGN1c3RvbSBjb2xvciBtb2RlcyBieSBjcmVhdGluZyBhIG5ldyB0aGVtZS1zcGVjaWZpYyBmaWxlIGxpa2UgYF92YXJpYWJsZXMtZGFyay5zY3NzYCBhbmQgYWRkaW5nIHRoZSB2YXJpYWJsZXMgeW91IG5lZWQuXG5cbi8vXG4vLyBHbG9iYWwgY29sb3JzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2Fzcy1kYXJrLW1vZGUtdmFyc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXMtZGFyazogICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDQwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICB0aW50LWNvbG9yKCRzdWNjZXNzLCA0MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAgdGludC1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDQwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXMtZGFyazogICAgICAgICB0aW50LWNvbG9yKCRkYW5nZXIsIDQwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyay10ZXh0LWVtcGhhc2lzLWRhcms6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtZGFyay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYmctc3VidGxlLWRhcms6ICAgICAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA4MCUpICFkZWZhdWx0O1xuJGRhbmdlci1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGUtZGFyazogICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZS1kYXJrOiAgICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRibGFjaykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyazogICAgICBzaGFkZS1jb2xvcigkc2Vjb25kYXJ5LCA0MCUpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrOiAgICAgICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDQwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICBzaGFkZS1jb2xvcigkaW5mbywgNDAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgIHNoYWRlLWNvbG9yKCR3YXJuaW5nLCA0MCUpICFkZWZhdWx0O1xuJGRhbmdlci1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNDAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlLWRhcms6ICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyazogICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS1kYXJrLXZhcmlhYmxlc1xuXG4kYm9keS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kYm9keS1iZy1kYXJrOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktY29sb3ItZGFyazogICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC43NSkgIWRlZmF1bHQ7XG4kYm9keS1zZWNvbmRhcnktYmctZGFyazogICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrOiAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLWRhcmssIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnLWRhcms6ICAgICAgICAgICAgIG1peCgkZ3JheS04MDAsICRncmF5LTkwMCwgNTAlKSAhZGVmYXVsdDtcbiRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcms6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItZGFyazogICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFyazogICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRsaW5rLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDQwJSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvci1kYXJrOiAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvci1kYXJrLCAtJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kY29kZS1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb2RlLWNvbG9yLCA0MCUpICFkZWZhdWx0O1xuJG1hcmstY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3ItZGFyayAhZGVmYXVsdDtcbiRtYXJrLWJnLWRhcms6ICAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctODAwICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrOiAgJGJvZHktY29sb3ItZGFyayAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyazogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvci1kYXJrfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNvbG9yLWRhcms6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2UtZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jb2xvci1kYXJrfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1jb2xvcnMtZGFya1xuJGZvcm0tdmFsaWQtY29sb3ItZGFyazogICAgICAgICAgICAgJGdyZWVuLTMwMCAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrOiAgICAgICRncmVlbi0zMDAgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yLWRhcms6ICAgICAgICAgICAkcmVkLTMwMCAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcms6ICAgICRyZWQtMzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzLWRhcmtcblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4kYWNjb3JkaW9uLWljb24tY29sb3ItZGFyazogICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcms6ICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmsgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyazogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3ItZGFya30nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcms6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yLWRhcmt9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNhc3MtZGFyay1tb2RlLXZhcnNcbiIsIi8vIFJlLWFzc2lnbmVkIG1hcHNcbi8vXG4vLyBQbGFjZWQgaGVyZSBzbyB0aGF0IG90aGVycyBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgU2FzcyBtYXBzIGFuZCBzZWUgYXV0b21hdGljIHVwZGF0ZXMgdG8gdXRpbGl0aWVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLXJnYlxuJHRoZW1lLWNvbG9ycy1yZ2I6IG1hcC1sb29wKCR0aGVtZS1jb2xvcnMsIHRvLXJnYiwgXCIkdmFsdWVcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9ycy1yZ2JcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLXRleHQtbWFwXG4kdGhlbWUtY29sb3JzLXRleHQ6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LXRleHQtZW1waGFzaXMsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktdGV4dC1lbXBoYXNpcyxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMsXG4gIFwiaW5mb1wiOiAkaW5mby10ZXh0LWVtcGhhc2lzLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctdGV4dC1lbXBoYXNpcyxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLFxuICBcImxpZ2h0XCI6ICRsaWdodC10ZXh0LWVtcGhhc2lzLFxuICBcImRhcmtcIjogJGRhcmstdGV4dC1lbXBoYXNpcyxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJnLXN1YnRsZTogKFxuICBcInByaW1hcnlcIjogJHByaW1hcnktYmctc3VidGxlLFxuICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJnLXN1YnRsZSxcbiAgXCJpbmZvXCI6ICRpbmZvLWJnLXN1YnRsZSxcbiAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1iZy1zdWJ0bGUsXG4gIFwibGlnaHRcIjogJGxpZ2h0LWJnLXN1YnRsZSxcbiAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1tYXBcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG4kdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGU6IChcbiAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUsXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnktYm9yZGVyLXN1YnRsZSxcbiAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLWJvcmRlci1zdWJ0bGUsXG4gIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmctYm9yZGVyLXN1YnRsZSxcbiAgXCJkYW5nZXJcIjogJGRhbmdlci1ib3JkZXItc3VidGxlLFxuICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLFxuICBcImRhcmtcIjogJGRhcmstYm9yZGVyLXN1YnRsZSxcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtbWFwXG5cbiR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrOiBudWxsICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogbnVsbCAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiBudWxsICFkZWZhdWx0O1xuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuICAkdGhlbWUtY29sb3JzLXRleHQtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzZWNvbmRhcnlcIjogJHNlY29uZGFyeS10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJzdWNjZXNzXCI6ICRzdWNjZXNzLXRleHQtZW1waGFzaXMtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwid2FybmluZ1wiOiAkd2FybmluZy10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJkYW5nZXJcIjogJGRhbmdlci10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtdGV4dC1lbXBoYXNpcy1kYXJrLFxuICAgIFwiZGFya1wiOiAkZGFyay10ZXh0LWVtcGhhc2lzLWRhcmssXG4gICkgIWRlZmF1bHQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtdGV4dC1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtZGFyay1tYXBcbiAgJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyazogKFxuICAgIFwicHJpbWFyeVwiOiAkcHJpbWFyeS1iZy1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJnLXN1YnRsZS1kYXJrLFxuICAgIFwic3VjY2Vzc1wiOiAkc3VjY2Vzcy1iZy1zdWJ0bGUtZGFyayxcbiAgICBcImluZm9cIjogJGluZm8tYmctc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJnLXN1YnRsZS1kYXJrLFxuICAgIFwiZGFuZ2VyXCI6ICRkYW5nZXItYmctc3VidGxlLWRhcmssXG4gICAgXCJsaWdodFwiOiAkbGlnaHQtYmctc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJnLXN1YnRsZS1kYXJrLFxuICApICFkZWZhdWx0O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS1kYXJrLW1hcFxuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG4gICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrOiAoXG4gICAgXCJwcmltYXJ5XCI6ICRwcmltYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInNlY29uZGFyeVwiOiAkc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcInN1Y2Nlc3NcIjogJHN1Y2Nlc3MtYm9yZGVyLXN1YnRsZS1kYXJrLFxuICAgIFwiaW5mb1wiOiAkaW5mby1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJ3YXJuaW5nXCI6ICR3YXJuaW5nLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImRhbmdlclwiOiAkZGFuZ2VyLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgICBcImxpZ2h0XCI6ICRsaWdodC1ib3JkZXItc3VidGxlLWRhcmssXG4gICAgXCJkYXJrXCI6ICRkYXJrLWJvcmRlci1zdWJ0bGUtZGFyayxcbiAgKSAhZGVmYXVsdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1ib3JkZXItc3VidGxlLWRhcmstbWFwXG59XG5cbi8vIFV0aWxpdGllcyBtYXBzXG4vL1xuLy8gRXh0ZW5kcyB0aGUgZGVmYXVsdCBgJHRoZW1lLWNvbG9yc2AgbWFwcyB0byBoZWxwIGNyZWF0ZSBvdXIgdXRpbGl0aWVzLlxuXG4vLyBDb21lIHY2LCB3ZSdsbCBkZS1kdXBlIHRoZXNlIHZhcmlhYmxlcy4gVW50aWwgdGhlbiwgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlIGtlZXAgdGhlbSB0byByZWFzc2lnbi5cbi8vIHNjc3MtZG9jcy1zdGFydCB1dGlsaXRpZXMtY29sb3JzXG4kdXRpbGl0aWVzLWNvbG9yczogJHRoZW1lLWNvbG9ycy1yZ2IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuJHV0aWxpdGllcy10ZXh0OiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpLFxuICAgIFwiYm9keVwiOiB0by1yZ2IoJGJvZHktY29sb3IpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLXRleHQtY29sb3JzOiBtYXAtbG9vcCgkdXRpbGl0aWVzLXRleHQsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwidGV4dFwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy10ZXh0LWVtcGhhc2lzLWNvbG9yczogKFxuICBcInByaW1hcnktZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic2Vjb25kYXJ5LWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktdGV4dC1lbXBoYXNpcyksXG4gIFwic3VjY2Vzcy1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy10ZXh0LWVtcGhhc2lzKSxcbiAgXCJpbmZvLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLXRleHQtZW1waGFzaXMpLFxuICBcIndhcm5pbmctZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctdGV4dC1lbXBoYXNpcyksXG4gIFwiZGFuZ2VyLWVtcGhhc2lzXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItdGV4dC1lbXBoYXNpcyksXG4gIFwibGlnaHQtZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LXRleHQtZW1waGFzaXMpLFxuICBcImRhcmstZW1waGFzaXNcIjogdmFyKC0tI3skcHJlZml4fWRhcmstdGV4dC1lbXBoYXNpcylcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHV0aWxpdGllcy10ZXh0LWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuJHV0aWxpdGllcy1iZzogbWFwLW1lcmdlKFxuICAkdXRpbGl0aWVzLWNvbG9ycyxcbiAgKFxuICAgIFwiYmxhY2tcIjogdG8tcmdiKCRibGFjayksXG4gICAgXCJ3aGl0ZVwiOiB0by1yZ2IoJHdoaXRlKSxcbiAgICBcImJvZHlcIjogdG8tcmdiKCRib2R5LWJnKVxuICApXG4pICFkZWZhdWx0O1xuJHV0aWxpdGllcy1iZy1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYmcsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwiYmdcIikgIWRlZmF1bHQ7XG5cbiR1dGlsaXRpZXMtYmctc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSxcbiAgXCJzZWNvbmRhcnktc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctc3VidGxlKSxcbiAgXCJzdWNjZXNzLXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2Vzcy1iZy1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJnLXN1YnRsZSksXG4gIFwid2FybmluZy1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXdhcm5pbmctYmctc3VidGxlKSxcbiAgXCJkYW5nZXItc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXItYmctc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJnLXN1YnRsZSksXG4gIFwiZGFyay1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhcmstYmctc3VidGxlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdXRpbGl0aWVzLWJnLWNvbG9yc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbGl0aWVzLWJvcmRlci1jb2xvcnNcbiR1dGlsaXRpZXMtYm9yZGVyOiBtYXAtbWVyZ2UoXG4gICR1dGlsaXRpZXMtY29sb3JzLFxuICAoXG4gICAgXCJibGFja1wiOiB0by1yZ2IoJGJsYWNrKSxcbiAgICBcIndoaXRlXCI6IHRvLXJnYigkd2hpdGUpXG4gIClcbikgIWRlZmF1bHQ7XG4kdXRpbGl0aWVzLWJvcmRlci1jb2xvcnM6IG1hcC1sb29wKCR1dGlsaXRpZXMtYm9yZGVyLCByZ2JhLWNzcy12YXIsIFwiJGtleVwiLCBcImJvcmRlclwiKSAhZGVmYXVsdDtcblxuJHV0aWxpdGllcy1ib3JkZXItc3VidGxlOiAoXG4gIFwicHJpbWFyeS1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fXByaW1hcnktYm9yZGVyLXN1YnRsZSksXG4gIFwic2Vjb25kYXJ5LXN1YnRsZVwiOiB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGUpLFxuICBcInN1Y2Nlc3Mtc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLWJvcmRlci1zdWJ0bGUpLFxuICBcImluZm8tc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1pbmZvLWJvcmRlci1zdWJ0bGUpLFxuICBcIndhcm5pbmctc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH13YXJuaW5nLWJvcmRlci1zdWJ0bGUpLFxuICBcImRhbmdlci1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlci1ib3JkZXItc3VidGxlKSxcbiAgXCJsaWdodC1zdWJ0bGVcIjogdmFyKC0tI3skcHJlZml4fWxpZ2h0LWJvcmRlci1zdWJ0bGUpLFxuICBcImRhcmstc3VidGxlXCI6IHZhcigtLSN7JHByZWZpeH1kYXJrLWJvcmRlci1zdWJ0bGUpXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB1dGlsaXRpZXMtYm9yZGVyLWNvbG9yc1xuXG4kdXRpbGl0aWVzLWxpbmtzLXVuZGVybGluZTogbWFwLWxvb3AoJHV0aWxpdGllcy1jb2xvcnMsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwibGluay11bmRlcmxpbmVcIikgIWRlZmF1bHQ7XG5cbiRuZWdhdGl2ZS1zcGFjZXJzOiBpZigkZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnMsIG5lZ2F0aXZpZnktbWFwKCRzcGFjZXJzKSwgbnVsbCkgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3ItbW9kZVwiO1xuQGltcG9ydCBcIm1peGlucy9jb2xvci1zY2hlbWVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc3VhbGx5LWhpZGRlblwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL3V0aWxpdGllc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tkcm9wXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS12YXJpYW50c1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci1tb2RlLW1peGluXG5AbWl4aW4gY29sb3ItbW9kZSgkbW9kZTogbGlnaHQsICRyb290OiBmYWxzZSkge1xuICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgIEBpZiAkcm9vdCA9PSB0cnVlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIDpyb290IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogJG1vZGUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBbZGF0YS1icy10aGVtZT1cIiN7JG1vZGV9XCJdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci1tb2RlLW1peGluXG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgbWl4aW4tY29sb3Itc2NoZW1lXG5AbWl4aW4gY29sb3Itc2NoZW1lKCRuYW1lKSB7XG4gIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICN7JG5hbWV9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbWl4aW4tY29sb3Itc2NoZW1lXG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFVzZSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZCwgb3Igb25lIG9mIGl0cyBjaGlsZCBlbGVtZW50cyBpcyBmb2N1c2VkXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgpIHtcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICB9XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNoYXJlZCBiZXR3ZWVuIG1vZGFscyBhbmQgb2ZmY2FudmFzZXNcbkBtaXhpbiBvdmVybGF5LWJhY2tkcm9wKCR6aW5kZXgsICRiYWNrZHJvcC1iZywgJGJhY2tkcm9wLW9wYWNpdHkpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LW1peGluc1xuQG1peGluIGNhcmV0LWRvd24oJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC1lbmQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LXN0YXJ0KCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KFxuICAkZGlyZWN0aW9uOiBkb3duLFxuICAkd2lkdGg6ICRjYXJldC13aWR0aCxcbiAgJHNwYWNpbmc6ICRjYXJldC1zcGFjaW5nLFxuICAkdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnblxuKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWVuZCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1zdGFydCgkd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC1taXhpbnNcbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcbiAgJHN0YXRlLFxuICAkY29sb3IsXG4gICRpY29uLFxuICAkdG9vbHRpcC1jb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICRib3JkZXItY29sb3I6ICRjb2xvclxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uOiAje2VzY2FwZS1zdmcoJGljb24pfTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFudFxuQG1peGluIHRhYmxlLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KG9wYXF1ZSgkYm9keS1iZywgJGJhY2tncm91bmQpKTtcbiAgICAkaG92ZXItYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpKTtcbiAgICAkc3RyaXBlZC1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSk7XG4gICAgJGFjdGl2ZS1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpKTtcbiAgICAkdGFibGUtYm9yZGVyLWNvbG9yOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYm9yZGVyLWZhY3RvcikpO1xuXG4gICAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JGNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZzogI3skYmFja2dyb3VuZH07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJHN0cmlwZWQtYmcpfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skaG92ZXItYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xuXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYW50XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRzaGFkb3cge1xuICAgICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2YWx1ZSwgXCJjb21tYVwiKTtcbiAgICAgIH1cbiAgICAgIEBpZiAkdmFsdWUgPT0gbm9uZSBhbmQgbGVuZ3RoKCRzaGFkb3cpID4gMSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcblxuICB9IEBlbHNlIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyIG9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJGNvdW50KSk7XG4gIH1cbn1cblxuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXg6IDEgMCAwJTsgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICB9XG5cbiAgICAgIC5yb3ctY29scyN7JGluZml4fS1hdXRvID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gR3V0dGVyc1xuICAgICAgLy9cbiAgICAgIC8vIE1ha2UgdXNlIG9mIGAuZy0qYCwgYC5neC0qYCBvciBgLmd5LSpgIHV0aWxpdGllcyB0byBjaGFuZ2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBjb2x1bW5zLlxuICAgICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRndXR0ZXJzIHtcbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd4I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3kjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jc3NncmlkKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5nLWNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3RhcnQgd2l0aCBgMWAgYmVjYXVzZSBgMGAgaXMgYW4gaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVXRpbGl0aWVzXG5cbiR1dGlsaXRpZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR1dGlsaXRpZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy12ZXJ0aWNhbC1hbGlnblxuICAgIFwiYWxpZ25cIjogKFxuICAgICAgcHJvcGVydHk6IHZlcnRpY2FsLWFsaWduLFxuICAgICAgY2xhc3M6IGFsaWduLFxuICAgICAgdmFsdWVzOiBiYXNlbGluZSB0b3AgbWlkZGxlIGJvdHRvbSB0ZXh0LWJvdHRvbSB0ZXh0LXRvcFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy12ZXJ0aWNhbC1hbGlnblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1mbG9hdFxuICAgIFwiZmxvYXRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbG9hdCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBzdGFydDogbGVmdCxcbiAgICAgICAgZW5kOiByaWdodCxcbiAgICAgICAgbm9uZTogbm9uZSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZmxvYXRcbiAgICAvLyBPYmplY3QgRml0IHV0aWxpdGllc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1vYmplY3QtZml0XG4gICAgXCJvYmplY3QtZml0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogb2JqZWN0LWZpdCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBjb250YWluOiBjb250YWluLFxuICAgICAgICBjb3ZlcjogY292ZXIsXG4gICAgICAgIGZpbGw6IGZpbGwsXG4gICAgICAgIHNjYWxlOiBzY2FsZS1kb3duLFxuICAgICAgICBub25lOiBub25lLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1vYmplY3QtZml0XG4gICAgLy8gT3BhY2l0eSB1dGlsaXRpZXNcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtb3BhY2l0eVxuICAgIFwib3BhY2l0eVwiOiAoXG4gICAgICBwcm9wZXJ0eTogb3BhY2l0eSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAwOiAwLFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMSxcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtb3BhY2l0eVxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1vdmVyZmxvd1xuICAgIFwib3ZlcmZsb3dcIjogKFxuICAgICAgcHJvcGVydHk6IG92ZXJmbG93LFxuICAgICAgdmFsdWVzOiBhdXRvIGhpZGRlbiB2aXNpYmxlIHNjcm9sbCxcbiAgICApLFxuICAgIFwib3ZlcmZsb3cteFwiOiAoXG4gICAgICBwcm9wZXJ0eTogb3ZlcmZsb3cteCxcbiAgICAgIHZhbHVlczogYXV0byBoaWRkZW4gdmlzaWJsZSBzY3JvbGwsXG4gICAgKSxcbiAgICBcIm92ZXJmbG93LXlcIjogKFxuICAgICAgcHJvcGVydHk6IG92ZXJmbG93LXksXG4gICAgICB2YWx1ZXM6IGF1dG8gaGlkZGVuIHZpc2libGUgc2Nyb2xsLFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1vdmVyZmxvd1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1kaXNwbGF5XG4gICAgXCJkaXNwbGF5XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcmludDogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBkaXNwbGF5LFxuICAgICAgY2xhc3M6IGQsXG4gICAgICB2YWx1ZXM6IGlubGluZSBpbmxpbmUtYmxvY2sgYmxvY2sgZ3JpZCBpbmxpbmUtZ3JpZCB0YWJsZSB0YWJsZS1yb3cgdGFibGUtY2VsbCBmbGV4IGlubGluZS1mbGV4IG5vbmVcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtZGlzcGxheVxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1zaGFkb3dcbiAgICBcInNoYWRvd1wiOiAoXG4gICAgICBwcm9wZXJ0eTogYm94LXNoYWRvdyxcbiAgICAgIGNsYXNzOiBzaGFkb3csXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpLFxuICAgICAgICBzbTogdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctc20pLFxuICAgICAgICBsZzogdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGcpLFxuICAgICAgICBub25lOiBub25lLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1zaGFkb3dcbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgdXRpbHMtZm9jdXMtcmluZ1xuICAgIFwiZm9jdXMtcmluZ1wiOiAoXG4gICAgICBjc3MtdmFyOiB0cnVlLFxuICAgICAgY3NzLXZhcmlhYmxlLW5hbWU6IGZvY3VzLXJpbmctY29sb3IsXG4gICAgICBjbGFzczogZm9jdXMtcmluZyxcbiAgICAgIHZhbHVlczogbWFwLWxvb3AoJHRoZW1lLWNvbG9ycy1yZ2IsIHJnYmEtY3NzLXZhciwgXCIka2V5XCIsIFwiZm9jdXMtcmluZ1wiKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1mb2N1cy1yaW5nXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXBvc2l0aW9uXG4gICAgXCJwb3NpdGlvblwiOiAoXG4gICAgICBwcm9wZXJ0eTogcG9zaXRpb24sXG4gICAgICB2YWx1ZXM6IHN0YXRpYyByZWxhdGl2ZSBhYnNvbHV0ZSBmaXhlZCBzdGlja3lcbiAgICApLFxuICAgIFwidG9wXCI6IChcbiAgICAgIHByb3BlcnR5OiB0b3AsXG4gICAgICB2YWx1ZXM6ICRwb3NpdGlvbi12YWx1ZXNcbiAgICApLFxuICAgIFwiYm90dG9tXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3R0b20sXG4gICAgICB2YWx1ZXM6ICRwb3NpdGlvbi12YWx1ZXNcbiAgICApLFxuICAgIFwic3RhcnRcIjogKFxuICAgICAgcHJvcGVydHk6IGxlZnQsXG4gICAgICBjbGFzczogc3RhcnQsXG4gICAgICB2YWx1ZXM6ICRwb3NpdGlvbi12YWx1ZXNcbiAgICApLFxuICAgIFwiZW5kXCI6IChcbiAgICAgIHByb3BlcnR5OiByaWdodCxcbiAgICAgIGNsYXNzOiBlbmQsXG4gICAgICB2YWx1ZXM6ICRwb3NpdGlvbi12YWx1ZXNcbiAgICApLFxuICAgIFwidHJhbnNsYXRlLW1pZGRsZVwiOiAoXG4gICAgICBwcm9wZXJ0eTogdHJhbnNmb3JtLFxuICAgICAgY2xhc3M6IHRyYW5zbGF0ZS1taWRkbGUsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdHJhbnNsYXRlKC01MCUsIC01MCUpLFxuICAgICAgICB4OiB0cmFuc2xhdGVYKC01MCUpLFxuICAgICAgICB5OiB0cmFuc2xhdGVZKC01MCUpLFxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1wb3NpdGlvblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1ib3JkZXJzXG4gICAgXCJib3JkZXJcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlcixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSxcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLXRvcFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXRvcCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXN0eWxlKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSxcbiAgICAgICAgMDogMCxcbiAgICAgIClcbiAgICApLFxuICAgIFwiYm9yZGVyLWVuZFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXJpZ2h0LFxuICAgICAgY2xhc3M6IGJvcmRlci1lbmQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1zdHlsZSkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciksXG4gICAgICAgIDA6IDAsXG4gICAgICApXG4gICAgKSxcbiAgICBcImJvcmRlci1ib3R0b21cIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1ib3R0b20sXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1zdHlsZSkgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvciksXG4gICAgICAgIDA6IDAsXG4gICAgICApXG4gICAgKSxcbiAgICBcImJvcmRlci1zdGFydFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWxlZnQsXG4gICAgICBjbGFzczogYm9yZGVyLXN0YXJ0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItc3R5bGUpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpLFxuICAgICAgICAwOiAwLFxuICAgICAgKVxuICAgICksXG4gICAgXCJib3JkZXItY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1jb2xvcixcbiAgICAgIGNsYXNzOiBib3JkZXIsXG4gICAgICBsb2NhbC12YXJzOiAoXG4gICAgICAgIFwiYm9yZGVyLW9wYWNpdHlcIjogMVxuICAgICAgKSxcbiAgICAgIHZhbHVlczogJHV0aWxpdGllcy1ib3JkZXItY29sb3JzXG4gICAgKSxcbiAgICBcInN1YnRsZS1ib3JkZXItY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci1jb2xvcixcbiAgICAgIGNsYXNzOiBib3JkZXIsXG4gICAgICB2YWx1ZXM6ICR1dGlsaXRpZXMtYm9yZGVyLXN1YnRsZVxuICAgICksXG4gICAgXCJib3JkZXItd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IGJvcmRlci13aWR0aCxcbiAgICAgIGNsYXNzOiBib3JkZXIsXG4gICAgICB2YWx1ZXM6ICRib3JkZXItd2lkdGhzXG4gICAgKSxcbiAgICBcImJvcmRlci1vcGFjaXR5XCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjbGFzczogYm9yZGVyLW9wYWNpdHksXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMTA6IC4xLFxuICAgICAgICAyNTogLjI1LFxuICAgICAgICA1MDogLjUsXG4gICAgICAgIDc1OiAuNzUsXG4gICAgICAgIDEwMDogMVxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1ib3JkZXJzXG4gICAgLy8gU2l6aW5nIHV0aWxpdGllc1xuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1zaXppbmdcbiAgICBcIndpZHRoXCI6IChcbiAgICAgIHByb3BlcnR5OiB3aWR0aCxcbiAgICAgIGNsYXNzOiB3LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDI1OiAyNSUsXG4gICAgICAgIDUwOiA1MCUsXG4gICAgICAgIDc1OiA3NSUsXG4gICAgICAgIDEwMDogMTAwJSxcbiAgICAgICAgYXV0bzogYXV0b1xuICAgICAgKVxuICAgICksXG4gICAgXCJtYXgtd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IG1heC13aWR0aCxcbiAgICAgIGNsYXNzOiBtdyxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwJSlcbiAgICApLFxuICAgIFwidmlld3BvcnQtd2lkdGhcIjogKFxuICAgICAgcHJvcGVydHk6IHdpZHRoLFxuICAgICAgY2xhc3M6IHZ3LFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDB2dylcbiAgICApLFxuICAgIFwibWluLXZpZXdwb3J0LXdpZHRoXCI6IChcbiAgICAgIHByb3BlcnR5OiBtaW4td2lkdGgsXG4gICAgICBjbGFzczogbWluLXZ3LFxuICAgICAgdmFsdWVzOiAoMTAwOiAxMDB2dylcbiAgICApLFxuICAgIFwiaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBoZWlnaHQsXG4gICAgICBjbGFzczogaCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAyNTogMjUlLFxuICAgICAgICA1MDogNTAlLFxuICAgICAgICA3NTogNzUlLFxuICAgICAgICAxMDA6IDEwMCUsXG4gICAgICAgIGF1dG86IGF1dG9cbiAgICAgIClcbiAgICApLFxuICAgIFwibWF4LWhlaWdodFwiOiAoXG4gICAgICBwcm9wZXJ0eTogbWF4LWhlaWdodCxcbiAgICAgIGNsYXNzOiBtaCxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwJSlcbiAgICApLFxuICAgIFwidmlld3BvcnQtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBoZWlnaHQsXG4gICAgICBjbGFzczogdmgsXG4gICAgICB2YWx1ZXM6ICgxMDA6IDEwMHZoKVxuICAgICksXG4gICAgXCJtaW4tdmlld3BvcnQtaGVpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBtaW4taGVpZ2h0LFxuICAgICAgY2xhc3M6IG1pbi12aCxcbiAgICAgIHZhbHVlczogKDEwMDogMTAwdmgpXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLXNpemluZ1xuICAgIC8vIEZsZXggdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWZsZXhcbiAgICBcImZsZXhcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LFxuICAgICAgdmFsdWVzOiAoZmlsbDogMSAxIGF1dG8pXG4gICAgKSxcbiAgICBcImZsZXgtZGlyZWN0aW9uXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxleC1kaXJlY3Rpb24sXG4gICAgICBjbGFzczogZmxleCxcbiAgICAgIHZhbHVlczogcm93IGNvbHVtbiByb3ctcmV2ZXJzZSBjb2x1bW4tcmV2ZXJzZVxuICAgICksXG4gICAgXCJmbGV4LWdyb3dcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LWdyb3csXG4gICAgICBjbGFzczogZmxleCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBncm93LTA6IDAsXG4gICAgICAgIGdyb3ctMTogMSxcbiAgICAgIClcbiAgICApLFxuICAgIFwiZmxleC1zaHJpbmtcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmbGV4LXNocmluayxcbiAgICAgIGNsYXNzOiBmbGV4LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHNocmluay0wOiAwLFxuICAgICAgICBzaHJpbmstMTogMSxcbiAgICAgIClcbiAgICApLFxuICAgIFwiZmxleC13cmFwXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogZmxleC13cmFwLFxuICAgICAgY2xhc3M6IGZsZXgsXG4gICAgICB2YWx1ZXM6IHdyYXAgbm93cmFwIHdyYXAtcmV2ZXJzZVxuICAgICksXG4gICAgXCJqdXN0aWZ5LWNvbnRlbnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBqdXN0aWZ5LWNvbnRlbnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiZXR3ZWVuOiBzcGFjZS1iZXR3ZWVuLFxuICAgICAgICBhcm91bmQ6IHNwYWNlLWFyb3VuZCxcbiAgICAgICAgZXZlbmx5OiBzcGFjZS1ldmVubHksXG4gICAgICApXG4gICAgKSxcbiAgICBcImFsaWduLWl0ZW1zXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogYWxpZ24taXRlbXMsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgc3RhcnQ6IGZsZXgtc3RhcnQsXG4gICAgICAgIGVuZDogZmxleC1lbmQsXG4gICAgICAgIGNlbnRlcjogY2VudGVyLFxuICAgICAgICBiYXNlbGluZTogYmFzZWxpbmUsXG4gICAgICAgIHN0cmV0Y2g6IHN0cmV0Y2gsXG4gICAgICApXG4gICAgKSxcbiAgICBcImFsaWduLWNvbnRlbnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBhbGlnbi1jb250ZW50LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHN0YXJ0OiBmbGV4LXN0YXJ0LFxuICAgICAgICBlbmQ6IGZsZXgtZW5kLFxuICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgYmV0d2Vlbjogc3BhY2UtYmV0d2VlbixcbiAgICAgICAgYXJvdW5kOiBzcGFjZS1hcm91bmQsXG4gICAgICAgIHN0cmV0Y2g6IHN0cmV0Y2gsXG4gICAgICApXG4gICAgKSxcbiAgICBcImFsaWduLXNlbGZcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBhbGlnbi1zZWxmLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGF1dG86IGF1dG8sXG4gICAgICAgIHN0YXJ0OiBmbGV4LXN0YXJ0LFxuICAgICAgICBlbmQ6IGZsZXgtZW5kLFxuICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgICAgYmFzZWxpbmU6IGJhc2VsaW5lLFxuICAgICAgICBzdHJldGNoOiBzdHJldGNoLFxuICAgICAgKVxuICAgICksXG4gICAgXCJvcmRlclwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG9yZGVyLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIGZpcnN0OiAtMSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogMSxcbiAgICAgICAgMjogMixcbiAgICAgICAgMzogMyxcbiAgICAgICAgNDogNCxcbiAgICAgICAgNTogNSxcbiAgICAgICAgbGFzdDogNixcbiAgICAgICksXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWZsZXhcbiAgICAvLyBNYXJnaW4gdXRpbGl0aWVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXNwYWNpbmdcbiAgICBcIm1hcmdpblwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbixcbiAgICAgIGNsYXNzOiBtLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLXhcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tcmlnaHQgbWFyZ2luLWxlZnQsXG4gICAgICBjbGFzczogbXgsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgXCJtYXJnaW4teVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi10b3AgbWFyZ2luLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBteSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi10b3BcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tdG9wLFxuICAgICAgY2xhc3M6IG10LFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLWVuZFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi1yaWdodCxcbiAgICAgIGNsYXNzOiBtZSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKCRzcGFjZXJzLCAoYXV0bzogYXV0bykpXG4gICAgKSxcbiAgICBcIm1hcmdpbi1ib3R0b21cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG1iLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoJHNwYWNlcnMsIChhdXRvOiBhdXRvKSlcbiAgICApLFxuICAgIFwibWFyZ2luLXN0YXJ0XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLWxlZnQsXG4gICAgICBjbGFzczogbXMsXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZSgkc3BhY2VycywgKGF1dG86IGF1dG8pKVxuICAgICksXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIHV0aWxpdGllc1xuICAgIFwibmVnYXRpdmUtbWFyZ2luXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLFxuICAgICAgY2xhc3M6IG0sXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi14XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogbWFyZ2luLXJpZ2h0IG1hcmdpbi1sZWZ0LFxuICAgICAgY2xhc3M6IG14LFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4teVwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi10b3AgbWFyZ2luLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBteSxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIFwibmVnYXRpdmUtbWFyZ2luLXRvcFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IG1hcmdpbi10b3AsXG4gICAgICBjbGFzczogbXQsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi1lbmRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tcmlnaHQsXG4gICAgICBjbGFzczogbWUsXG4gICAgICB2YWx1ZXM6ICRuZWdhdGl2ZS1zcGFjZXJzXG4gICAgKSxcbiAgICBcIm5lZ2F0aXZlLW1hcmdpbi1ib3R0b21cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tYm90dG9tLFxuICAgICAgY2xhc3M6IG1iLFxuICAgICAgdmFsdWVzOiAkbmVnYXRpdmUtc3BhY2Vyc1xuICAgICksXG4gICAgXCJuZWdhdGl2ZS1tYXJnaW4tc3RhcnRcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBtYXJnaW4tbGVmdCxcbiAgICAgIGNsYXNzOiBtcyxcbiAgICAgIHZhbHVlczogJG5lZ2F0aXZlLXNwYWNlcnNcbiAgICApLFxuICAgIC8vIFBhZGRpbmcgdXRpbGl0aWVzXG4gICAgXCJwYWRkaW5nXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZyxcbiAgICAgIGNsYXNzOiBwLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJwYWRkaW5nLXhcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLXJpZ2h0IHBhZGRpbmctbGVmdCxcbiAgICAgIGNsYXNzOiBweCxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy15XCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy10b3AgcGFkZGluZy1ib3R0b20sXG4gICAgICBjbGFzczogcHksXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmctdG9wXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy10b3AsXG4gICAgICBjbGFzczogcHQsXG4gICAgICB2YWx1ZXM6ICRzcGFjZXJzXG4gICAgKSxcbiAgICBcInBhZGRpbmctZW5kXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcGFkZGluZy1yaWdodCxcbiAgICAgIGNsYXNzOiBwZSxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy1ib3R0b21cIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBwYWRkaW5nLWJvdHRvbSxcbiAgICAgIGNsYXNzOiBwYixcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIFwicGFkZGluZy1zdGFydFwiOiAoXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxuICAgICAgcHJvcGVydHk6IHBhZGRpbmctbGVmdCxcbiAgICAgIGNsYXNzOiBwcyxcbiAgICAgIHZhbHVlczogJHNwYWNlcnNcbiAgICApLFxuICAgIC8vIEdhcCB1dGlsaXR5XG4gICAgXCJnYXBcIjogKFxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBnYXAsXG4gICAgICBjbGFzczogZ2FwLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJyb3ctZ2FwXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogcm93LWdhcCxcbiAgICAgIGNsYXNzOiByb3ctZ2FwLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgXCJjb2x1bW4tZ2FwXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogY29sdW1uLWdhcCxcbiAgICAgIGNsYXNzOiBjb2x1bW4tZ2FwLFxuICAgICAgdmFsdWVzOiAkc3BhY2Vyc1xuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1zcGFjaW5nXG4gICAgLy8gVGV4dFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy10ZXh0XG4gICAgXCJmb250LWZhbWlseVwiOiAoXG4gICAgICBwcm9wZXJ0eTogZm9udC1mYW1pbHksXG4gICAgICBjbGFzczogZm9udCxcbiAgICAgIHZhbHVlczogKG1vbm9zcGFjZTogdmFyKC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlKSlcbiAgICApLFxuICAgIFwiZm9udC1zaXplXCI6IChcbiAgICAgIHJmczogdHJ1ZSxcbiAgICAgIHByb3BlcnR5OiBmb250LXNpemUsXG4gICAgICBjbGFzczogZnMsXG4gICAgICB2YWx1ZXM6ICRmb250LXNpemVzXG4gICAgKSxcbiAgICBcImZvbnQtc3R5bGVcIjogKFxuICAgICAgcHJvcGVydHk6IGZvbnQtc3R5bGUsXG4gICAgICBjbGFzczogZnN0LFxuICAgICAgdmFsdWVzOiBpdGFsaWMgbm9ybWFsXG4gICAgKSxcbiAgICBcImZvbnQtd2VpZ2h0XCI6IChcbiAgICAgIHByb3BlcnR5OiBmb250LXdlaWdodCxcbiAgICAgIGNsYXNzOiBmdyxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBsaWdodGVyOiAkZm9udC13ZWlnaHQtbGlnaHRlcixcbiAgICAgICAgbGlnaHQ6ICRmb250LXdlaWdodC1saWdodCxcbiAgICAgICAgbm9ybWFsOiAkZm9udC13ZWlnaHQtbm9ybWFsLFxuICAgICAgICBtZWRpdW06ICRmb250LXdlaWdodC1tZWRpdW0sXG4gICAgICAgIHNlbWlib2xkOiAkZm9udC13ZWlnaHQtc2VtaWJvbGQsXG4gICAgICAgIGJvbGQ6ICRmb250LXdlaWdodC1ib2xkLFxuICAgICAgICBib2xkZXI6ICRmb250LXdlaWdodC1ib2xkZXJcbiAgICAgIClcbiAgICApLFxuICAgIFwibGluZS1oZWlnaHRcIjogKFxuICAgICAgcHJvcGVydHk6IGxpbmUtaGVpZ2h0LFxuICAgICAgY2xhc3M6IGxoLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDE6IDEsXG4gICAgICAgIHNtOiAkbGluZS1oZWlnaHQtc20sXG4gICAgICAgIGJhc2U6ICRsaW5lLWhlaWdodC1iYXNlLFxuICAgICAgICBsZzogJGxpbmUtaGVpZ2h0LWxnLFxuICAgICAgKVxuICAgICksXG4gICAgXCJ0ZXh0LWFsaWduXCI6IChcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXG4gICAgICBwcm9wZXJ0eTogdGV4dC1hbGlnbixcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHN0YXJ0OiBsZWZ0LFxuICAgICAgICBlbmQ6IHJpZ2h0LFxuICAgICAgICBjZW50ZXI6IGNlbnRlcixcbiAgICAgIClcbiAgICApLFxuICAgIFwidGV4dC1kZWNvcmF0aW9uXCI6IChcbiAgICAgIHByb3BlcnR5OiB0ZXh0LWRlY29yYXRpb24sXG4gICAgICB2YWx1ZXM6IG5vbmUgdW5kZXJsaW5lIGxpbmUtdGhyb3VnaFxuICAgICksXG4gICAgXCJ0ZXh0LXRyYW5zZm9ybVwiOiAoXG4gICAgICBwcm9wZXJ0eTogdGV4dC10cmFuc2Zvcm0sXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogbG93ZXJjYXNlIHVwcGVyY2FzZSBjYXBpdGFsaXplXG4gICAgKSxcbiAgICBcIndoaXRlLXNwYWNlXCI6IChcbiAgICAgIHByb3BlcnR5OiB3aGl0ZS1zcGFjZSxcbiAgICAgIGNsYXNzOiB0ZXh0LFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIHdyYXA6IG5vcm1hbCxcbiAgICAgICAgbm93cmFwOiBub3dyYXAsXG4gICAgICApXG4gICAgKSxcbiAgICBcIndvcmQtd3JhcFwiOiAoXG4gICAgICBwcm9wZXJ0eTogd29yZC13cmFwIHdvcmQtYnJlYWssXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogKGJyZWFrOiBicmVhay13b3JkKSxcbiAgICAgIHJ0bDogZmFsc2VcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtdGV4dFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1jb2xvclxuICAgIFwiY29sb3JcIjogKFxuICAgICAgcHJvcGVydHk6IGNvbG9yLFxuICAgICAgY2xhc3M6IHRleHQsXG4gICAgICBsb2NhbC12YXJzOiAoXG4gICAgICAgIFwidGV4dC1vcGFjaXR5XCI6IDFcbiAgICAgICksXG4gICAgICB2YWx1ZXM6IG1hcC1tZXJnZShcbiAgICAgICAgJHV0aWxpdGllcy10ZXh0LWNvbG9ycyxcbiAgICAgICAgKFxuICAgICAgICAgIFwibXV0ZWRcIjogdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvciksIC8vIGRlcHJlY2F0ZWRcbiAgICAgICAgICBcImJsYWNrLTUwXCI6IHJnYmEoJGJsYWNrLCAuNSksIC8vIGRlcHJlY2F0ZWRcbiAgICAgICAgICBcIndoaXRlLTUwXCI6IHJnYmEoJHdoaXRlLCAuNSksIC8vIGRlcHJlY2F0ZWRcbiAgICAgICAgICBcImJvZHktc2Vjb25kYXJ5XCI6IHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpLFxuICAgICAgICAgIFwiYm9keS10ZXJ0aWFyeVwiOiB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpLFxuICAgICAgICAgIFwiYm9keS1lbXBoYXNpc1wiOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpLFxuICAgICAgICAgIFwicmVzZXRcIjogaW5oZXJpdCxcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgXCJ0ZXh0LW9wYWNpdHlcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNsYXNzOiB0ZXh0LW9wYWNpdHksXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDFcbiAgICAgIClcbiAgICApLFxuICAgIFwidGV4dC1jb2xvclwiOiAoXG4gICAgICBwcm9wZXJ0eTogY29sb3IsXG4gICAgICBjbGFzczogdGV4dCxcbiAgICAgIHZhbHVlczogJHV0aWxpdGllcy10ZXh0LWVtcGhhc2lzLWNvbG9yc1xuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1jb2xvclxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1saW5rc1xuICAgIFwibGluay1vcGFjaXR5XCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjbGFzczogbGluay1vcGFjaXR5LFxuICAgICAgc3RhdGU6IGhvdmVyLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDEwOiAuMSxcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDFcbiAgICAgIClcbiAgICApLFxuICAgIFwibGluay1vZmZzZXRcIjogKFxuICAgICAgcHJvcGVydHk6IHRleHQtdW5kZXJsaW5lLW9mZnNldCxcbiAgICAgIGNsYXNzOiBsaW5rLW9mZnNldCxcbiAgICAgIHN0YXRlOiBob3ZlcixcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxOiAuMTI1ZW0sXG4gICAgICAgIDI6IC4yNWVtLFxuICAgICAgICAzOiAuMzc1ZW0sXG4gICAgICApXG4gICAgKSxcbiAgICBcImxpbmstdW5kZXJsaW5lXCI6IChcbiAgICAgIHByb3BlcnR5OiB0ZXh0LWRlY29yYXRpb24tY29sb3IsXG4gICAgICBjbGFzczogbGluay11bmRlcmxpbmUsXG4gICAgICBsb2NhbC12YXJzOiAoXG4gICAgICAgIFwibGluay11bmRlcmxpbmUtb3BhY2l0eVwiOiAxXG4gICAgICApLFxuICAgICAgdmFsdWVzOiBtYXAtbWVyZ2UoXG4gICAgICAgICR1dGlsaXRpZXMtbGlua3MtdW5kZXJsaW5lLFxuICAgICAgICAoXG4gICAgICAgICAgbnVsbDogcmdiYSh2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpLFxuICAgICAgICApXG4gICAgICApXG4gICAgKSxcbiAgICBcImxpbmstdW5kZXJsaW5lLW9wYWNpdHlcIjogKFxuICAgICAgY3NzLXZhcjogdHJ1ZSxcbiAgICAgIGNsYXNzOiBsaW5rLXVuZGVybGluZS1vcGFjaXR5LFxuICAgICAgc3RhdGU6IGhvdmVyLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDEwOiAuMSxcbiAgICAgICAgMjU6IC4yNSxcbiAgICAgICAgNTA6IC41LFxuICAgICAgICA3NTogLjc1LFxuICAgICAgICAxMDA6IDFcbiAgICAgICksXG4gICAgKSxcbiAgICAvLyBzY3NzLWRvY3MtZW5kIHV0aWxzLWxpbmtzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLWJnLWNvbG9yXG4gICAgXCJiYWNrZ3JvdW5kLWNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgY2xhc3M6IGJnLFxuICAgICAgbG9jYWwtdmFyczogKFxuICAgICAgICBcImJnLW9wYWNpdHlcIjogMVxuICAgICAgKSxcbiAgICAgIHZhbHVlczogbWFwLW1lcmdlKFxuICAgICAgICAkdXRpbGl0aWVzLWJnLWNvbG9ycyxcbiAgICAgICAgKFxuICAgICAgICAgIFwidHJhbnNwYXJlbnRcIjogdHJhbnNwYXJlbnQsXG4gICAgICAgICAgXCJib2R5LXNlY29uZGFyeVwiOiByZ2JhKHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiKSwgdmFyKC0tI3skcHJlZml4fWJnLW9wYWNpdHkpKSxcbiAgICAgICAgICBcImJvZHktdGVydGlhcnlcIjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiKSwgdmFyKC0tI3skcHJlZml4fWJnLW9wYWNpdHkpKSxcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgXCJiZy1vcGFjaXR5XCI6IChcbiAgICAgIGNzcy12YXI6IHRydWUsXG4gICAgICBjbGFzczogYmctb3BhY2l0eSxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICAxMDogLjEsXG4gICAgICAgIDI1OiAuMjUsXG4gICAgICAgIDUwOiAuNSxcbiAgICAgICAgNzU6IC43NSxcbiAgICAgICAgMTAwOiAxXG4gICAgICApXG4gICAgKSxcbiAgICBcInN1YnRsZS1iYWNrZ3JvdW5kLWNvbG9yXCI6IChcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgY2xhc3M6IGJnLFxuICAgICAgdmFsdWVzOiAkdXRpbGl0aWVzLWJnLXN1YnRsZVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1iZy1jb2xvclxuICAgIFwiZ3JhZGllbnRcIjogKFxuICAgICAgcHJvcGVydHk6IGJhY2tncm91bmQtaW1hZ2UsXG4gICAgICBjbGFzczogYmcsXG4gICAgICB2YWx1ZXM6IChncmFkaWVudDogdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KSlcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1pbnRlcmFjdGlvblxuICAgIFwidXNlci1zZWxlY3RcIjogKFxuICAgICAgcHJvcGVydHk6IHVzZXItc2VsZWN0LFxuICAgICAgdmFsdWVzOiBhbGwgYXV0byBub25lXG4gICAgKSxcbiAgICBcInBvaW50ZXItZXZlbnRzXCI6IChcbiAgICAgIHByb3BlcnR5OiBwb2ludGVyLWV2ZW50cyxcbiAgICAgIGNsYXNzOiBwZSxcbiAgICAgIHZhbHVlczogbm9uZSBhdXRvLFxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1pbnRlcmFjdGlvblxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy1ib3JkZXItcmFkaXVzXG4gICAgXCJyb3VuZGVkXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSksXG4gICAgICAgIDI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMzogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpLFxuICAgICAgICA0OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bCksXG4gICAgICAgIDU6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCksXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsKVxuICAgICAgKVxuICAgICksXG4gICAgXCJyb3VuZGVkLXRvcFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cyBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLXRvcCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSxcbiAgICAgICAgMjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAzOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZyksXG4gICAgICAgIDQ6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsKSxcbiAgICAgICAgNTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKSxcbiAgICAgICAgY2lyY2xlOiA1MCUsXG4gICAgICAgIHBpbGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGwpXG4gICAgICApXG4gICAgKSxcbiAgICBcInJvdW5kZWQtZW5kXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cyBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cyxcbiAgICAgIGNsYXNzOiByb3VuZGVkLWVuZCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICBudWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDA6IDAsXG4gICAgICAgIDE6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSxcbiAgICAgICAgMjogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAzOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZyksXG4gICAgICAgIDQ6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXhsKSxcbiAgICAgICAgNTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKSxcbiAgICAgICAgY2lyY2xlOiA1MCUsXG4gICAgICAgIHBpbGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXBpbGwpXG4gICAgICApXG4gICAgKSxcbiAgICBcInJvdW5kZWQtYm90dG9tXCI6IChcbiAgICAgIHByb3BlcnR5OiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQtYm90dG9tLFxuICAgICAgdmFsdWVzOiAoXG4gICAgICAgIG51bGw6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMDogMCxcbiAgICAgICAgMTogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pLFxuICAgICAgICAyOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cyksXG4gICAgICAgIDM6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSxcbiAgICAgICAgNDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGwpLFxuICAgICAgICA1OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpLFxuICAgICAgICBjaXJjbGU6IDUwJSxcbiAgICAgICAgcGlsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbClcbiAgICAgIClcbiAgICApLFxuICAgIFwicm91bmRlZC1zdGFydFwiOiAoXG4gICAgICBwcm9wZXJ0eTogYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cyBib3JkZXItdG9wLWxlZnQtcmFkaXVzLFxuICAgICAgY2xhc3M6IHJvdW5kZWQtc3RhcnQsXG4gICAgICB2YWx1ZXM6IChcbiAgICAgICAgbnVsbDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpLFxuICAgICAgICAwOiAwLFxuICAgICAgICAxOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSksXG4gICAgICAgIDI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSxcbiAgICAgICAgMzogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpLFxuICAgICAgICA0OiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bCksXG4gICAgICAgIDU6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bCksXG4gICAgICAgIGNpcmNsZTogNTAlLFxuICAgICAgICBwaWxsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsKVxuICAgICAgKVxuICAgICksXG4gICAgLy8gc2Nzcy1kb2NzLWVuZCB1dGlscy1ib3JkZXItcmFkaXVzXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHV0aWxzLXZpc2liaWxpdHlcbiAgICBcInZpc2liaWxpdHlcIjogKFxuICAgICAgcHJvcGVydHk6IHZpc2liaWxpdHksXG4gICAgICBjbGFzczogbnVsbCxcbiAgICAgIHZhbHVlczogKFxuICAgICAgICB2aXNpYmxlOiB2aXNpYmxlLFxuICAgICAgICBpbnZpc2libGU6IGhpZGRlbixcbiAgICAgIClcbiAgICApLFxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtdmlzaWJpbGl0eVxuICAgIC8vIHNjc3MtZG9jcy1zdGFydCB1dGlscy16aW5kZXhcbiAgICBcInotaW5kZXhcIjogKFxuICAgICAgcHJvcGVydHk6IHotaW5kZXgsXG4gICAgICBjbGFzczogeixcbiAgICAgIHZhbHVlczogJHppbmRleC1sZXZlbHMsXG4gICAgKVxuICAgIC8vIHNjc3MtZG9jcy1lbmQgdXRpbHMtemluZGV4XG4gICksXG4gICR1dGlsaXRpZXNcbik7XG4iLCI6cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyRwcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dCB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9keS12YXJpYWJsZXNcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZTogI3skZm9udC1zaXplLXJvb3R9O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHk6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktYmFzZSl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZS1iYXNlLCAtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yKX07XG5cbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvcn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1saW5rLWRlY29yYXRpb246ICN7JGxpbmstZGVjb3JhdGlvbn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvcil9O1xuXG4gIEBpZiAkbGluay1ob3Zlci1kZWNvcmF0aW9uICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItZGVjb3JhdGlvbjogI3skbGluay1ob3Zlci1kZWNvcmF0aW9ufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvcmRlci12YXJcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoOiAjeyRib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItc3R5bGU6ICN7JGJvcmRlci1zdHlsZX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnR9O1xuXG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtOiAjeyRib3JkZXItcmFkaXVzLXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZzogI3skYm9yZGVyLXJhZGl1cy1sZ307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGw6ICN7JGJvcmRlci1yYWRpdXMteGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bDogI3skYm9yZGVyLXJhZGl1cy14eGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKTsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjAgZm9yIGNvbnNpc3RlbmN5XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbDogI3skYm9yZGVyLXJhZGl1cy1waWxsfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvcmRlci12YXJcblxuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93OiAjeyRib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbTogI3skYm94LXNoYWRvdy1zbX07XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGc6ICN7JGJveC1zaGFkb3ctbGd9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0OiAjeyRib3gtc2hhZG93LWluc2V0fTtcblxuICAvLyBGb2N1cyBzdHlsZXNcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9jdXMtdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGg6ICN7JGZvY3VzLXJpbmctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLW9wYWNpdHk6ICN7JGZvY3VzLXJpbmctb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3I6ICN7JGZvY3VzLXJpbmctY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9jdXMtdmFyaWFibGVzXG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgY29sb3Itc2NoZW1lOiBkYXJrO1xuXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZy1kYXJrKX07XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLy8gUm9vdFxuLy9cbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXG4vLyBudWxsIGJ5IGRlZmF1bHQsIHRodXMgbm90aGluZyBpcyBnZW5lcmF0ZWQuXG5cbjpyb290IHtcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplKSk7XG4gIH1cblxuICBAaWYgJGVuYWJsZS1zbW9vdGgtc2Nyb2xsIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXG4vLyAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVib290LWJvZHktcnVsZXNcbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktYmcpOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gM1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZWJvb3QtYm9keS1ydWxlc1xuXG5cbi8vIENvbnRlbnQgZ3JvdXBpbmdcbi8vXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxuXG5ociB7XG4gIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XG4gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuXG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyAxLiBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy8gICAgQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3Bcbi8vICAgIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cblxuJWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yKTtcbn1cblxuaDEge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG59XG5cbmgyIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xufVxuXG5oMyB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbn1cblxuaDQge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG59XG5cbmg1IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xufVxuXG5oNiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbn1cblxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQWJicmV2aWF0aW9uc1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDIuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDMuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMVxuICBjdXJzb3I6IGhlbHA7IC8vIDJcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyAzXG59XG5cblxuLy8gQWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuXG4vLyBMaXN0c1xuXG5vbCxcbnVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIDFcbn1cblxuXG4vLyBCbG9ja3F1b3RlXG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xufVxuXG5cbi8vIFNtYWxsXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gTWFya1xuXG5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnKTtcbn1cblxuXG4vLyBTdWIgYW5kIFN1cFxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc3ViLXN1cC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vIExpbmtzXG5cbmEge1xuICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSk7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiKTtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cbn1cblxuLy8gQW5kIHVuZG8gdGhlc2Ugc3R5bGVzIGZvciBwbGFjZWhvbGRlciBsaW5rcy9uYW1lZCBhbmNob3JzICh3aXRob3V0IGhyZWYpLlxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4LlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTk0MDJcblxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICAmLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBDb2RlXG5cbnByZSxcbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jb2RlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG4vLyAxLiBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbi8vIDIuIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7IC8vIDFcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgLy8gMlxuICBvdmVyZmxvdzogYXV0bzsgLy8gM1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y29kZS1jb2xvcik7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbmtiZCB7XG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pO1xuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcbiAgfVxufVxuXG5cbi8vIEZpZ3VyZXNcbi8vXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG5cbmltZyxcbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xuXG50YWJsZSB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vLyAxLiBSZW1vdmVzIGZvbnQtd2VpZ2h0IGJvbGQgYnkgaW5oZXJpdGluZ1xuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcblxudGgge1xuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIDJcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290LFxudHIsXG50ZCxcbnRoIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDA7XG59XG5cblxuLy8gRm9ybXNcbi8vXG4vLyAxLiBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xuXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcbi8vIHZpc2libGUgKGUuZy4gYXMgcmVzdWx0IG9mIG1vdXNlIGNsaWNrIG9yIHRvdWNoIHRhcCkuIEl0IGFscmVhZHlcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gMVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbiAgd29yZC13cmFwOiBub3JtYWw7XG5cbiAgLy8gVW5kbyB0aGUgb3BhY2l0eSBjaGFuZ2UgZnJvbSBDaHJvbWVcbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IG9ubHkgZnJvbSB0ZXh0IHR5cGUgaW5wdXRzIGJ1aWx0IHdpdGggZGF0YWxpc3RzIGluIENocm9tZS5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTQ5OTcxMThcblxuW2xpc3RdOm5vdChbdHlwZT1cImRhdGVcIl0pOm5vdChbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdKTpub3QoW3R5cGU9XCJtb250aFwiXSk6bm90KFt0eXBlPVwid2Vla1wiXSk6bm90KFt0eXBlPVwidGltZVwiXSk6Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG5cbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcbn1cblxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuLy8gICAgU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbi8vIDIuIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gMlxuICBib3JkZXI6IDA7IC8vIDJcbn1cblxuLy8gMS4gQnkgdXNpbmcgYGZsb2F0OiBsZWZ0YCwgdGhlIGxlZ2VuZCB3aWxsIGJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudC5cbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50LlxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5NzEyXG5cbmxlZ2VuZCB7XG4gIGZsb2F0OiBsZWZ0OyAvLyAxXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGVnZW5kLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICArICoge1xuICAgIGNsZWFyOiBsZWZ0OyAvLyAyXG4gIH1cbn1cblxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0MlxuXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyAxLiBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4vLyAgICBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbi8vICAgIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbi8vICAgIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4vLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxufVxuXG4vLyAxLiBBIGZldyBpbnB1dCB0eXBlcyBzaG91bGQgc3RheSBMVFJcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcbi8vIFNlZSBodHRwczovL3J0bGNzcy5jb20vbGVhcm4vdXNhZ2UtZ3VpZGUvY29udHJvbC1kaXJlY3RpdmVzLyNyYXdcblxuLyogcnRsOnJhdzpcblt0eXBlPVwidGVsXCJdLFxuW3R5cGU9XCJ1cmxcIl0sXG5bdHlwZT1cImVtYWlsXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbiovXG5cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBSZW1vdmUgcGFkZGluZyBhcm91bmQgY29sb3IgcGlja2VycyBpbiB3ZWJraXQgYnJvd3NlcnNcblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuXG4vLyAxLiBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGZyb20gaWZyYW1lXG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gU3VtbWFyeVxuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBQcm9ncmVzc1xuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5cbi8vIEhpZGRlbiBhdHRyaWJ1dGVcbi8vXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlLlxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIC41O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZpZ3VyZS1jYXB0aW9uIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmaWd1cmUtY2FwdGlvbi1mb250LXNpemUpO1xuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtY29udGFpbmVyLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICAvLyBSZXNldCBuZWVkZWQgZm9yIG5lc3RpbmcgdGFibGVzXG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogaW5pdGlhbDtcbiAgLy8gRW5kIG9mIHJlc2V0XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyR0YWJsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyR0YWJsZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnOiAjeyR0YWJsZS1hY2NlbnQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAjeyR0YWJsZS1zdHJpcGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyR0YWJsZS1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG5cbiAgLy8gVGFyZ2V0IHRoICYgdGRcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXG4gIC8vIEFub3RoZXIgYWR2YW50YWdlIGlzIHRoYXQgdGhpcyBnZW5lcmF0ZXMgbGVzcyBjb2RlIGFuZCBtYWtlcyB0aGUgc2VsZWN0b3IgbGVzcyBzcGVjaWZpYyBtYWtpbmcgaXQgZWFzaWVyIHRvIG92ZXJyaWRlLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15ICR0YWJsZS1jZWxsLXBhZGRpbmcteDtcbiAgICAvLyBGb2xsb3dpbmcgdGhlIHByZWNlcHQgb2YgY2FzY2FkZXM6IGh0dHBzOi8vY29kZXBlbi5pby9taXJpYW1zdXphbm5lL2Z1bGwvdllOZ29kYlxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWNjZW50LWJnKSkpO1xuICB9XG5cbiAgPiB0Ym9keSB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIH1cblxuICA+IHRoZWFkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi50YWJsZS1ncm91cC1kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogY2FsYygjeyR0YWJsZS1ib3JkZXItd2lkdGh9ICogMikgc29saWQgJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy9cbi8vIENoYW5nZSBwbGFjZW1lbnQgb2YgY2FwdGlvbnMgd2l0aCBhIGNsYXNzXG4vL1xuXG4uY2FwdGlvbi10b3Age1xuICBjYXB0aW9uLXNpZGU6IHRvcDtcbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbSAkdGFibGUtY2VsbC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuLy9cbi8vIFdoZW4gYm9yZGVycyBhcmUgYWRkZWQgb24gYWxsIHNpZGVzIG9mIHRoZSBjZWxscywgdGhlIGNvcm5lcnMgY2FuIHJlbmRlciBvZGQgd2hlblxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50LlxuLy8gVGhlcmVmb3JlIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi8vIEZvciByb3dzXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEZvciBjb2x1bW5zXG4udGFibGUtc3RyaXBlZC1jb2x1bW5zIHtcbiAgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKCN7JHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcn0pIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSB0YWJsZVxuLy9cbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXG5cbi50YWJsZS1hY3RpdmUge1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJmb3Jtcy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXRleHRcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLWNvbnRyb2xcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXNlbGVjdFwiO1xuQGltcG9ydCBcImZvcm1zL2Zvcm0tY2hlY2tcIjtcbkBpbXBvcnQgXCJmb3Jtcy9mb3JtLXJhbmdlXCI7XG5AaW1wb3J0IFwiZm9ybXMvZmxvYXRpbmctbGFiZWxzXCI7XG5AaW1wb3J0IFwiZm9ybXMvaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJmb3Jtcy92YWxpZGF0aW9uXCI7XG4iLCIvL1xuLy8gTGFiZWxzXG4vL1xuXG4uZm9ybS1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1sYWJlbC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcbi8vIHRleHQgdG8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbn1cbiIsIi8vXG4vLyBGb3JtIHRleHRcbi8vXG5cbi5mb3JtLXRleHQge1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS10ZXh0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLXRleHQtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXRleHQtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xufVxuIiwiLy9cbi8vIEdlbmVyYWwgZm9ybSBjb250cm9scyAocGx1cyBhIGZldyBzcGVjaWZpYyBoaWdoLWxldmVsIGludGVydmVudGlvbnMpXG4vL1xuXG4uZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cywgMCk7XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gICZbdHlwZT1cImZpbGVcIl0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIHByZXZlbnQgcHNldWRvIGVsZW1lbnQgYnV0dG9uIG92ZXJsYXBcblxuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcbiAgICAvLyBPbiBBbmRyb2lkIENocm9tZSwgZm9ybS1jb250cm9sJ3MgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgLy9cbiAgICAvLyBPbiBpT1MgU2FmYXJpLCBmb3JtLWNvbnRyb2wncyBcImFwcGVhcmFuY2U6IG5vbmVcIiArIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIGlPUyAxNi4yIC8gU2FmYXJpIDE2LjJcbiAgICBtaW4td2lkdGg6IDg1cHg7IC8vIFNlZW1zIHRvIGJlIGEgZ29vZCBtaW5pbXVtIHNhZmUgd2lkdGhcblxuICAgIC8vIEFkZCBzb21lIGhlaWdodCB0byBkYXRlIGlucHV0cyBvbiBpT1NcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzMzA3XG4gICAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXG4gICAgLy8gTXVsdGlwbHkgbGluZS1oZWlnaHQgYnkgMWVtIGlmIGl0IGhhcyBubyB1bml0XG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXCJcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xuXG4gICAgLy8gQW5kcm9pZCBDaHJvbWUgdHlwZT1cImRhdGVcIiBpcyB0YWxsZXIgdGhhbiB0aGUgb3RoZXIgaW5wdXRzXG4gICAgLy8gYmVjYXVzZSBvZiBcIm1hcmdpbjogMXB4IDI0cHggMXB4IDRweFwiIGluc2lkZSB0aGUgc2hhZG93IERPTVxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBQcmV2ZW50IGV4Y2Vzc2l2ZSBkYXRlIGlucHV0IGhlaWdodCBpbiBXZWJraXRcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8zNDQzM1xuICAmOjotd2Via2l0LWRhdGV0aW1lLWVkaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIEZpbGUgaW5wdXQgYnV0dG9ucyB0aGVtaW5nXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXg7XG4gICAgY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG4gIH1cblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcbi8vXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXG5cbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcbiAgfVxufVxuXG4vLyBNYWtlIHN1cmUgdGV4dGFyZWFzIGRvbid0IHNocmluayB0b28gbXVjaCB3aGVuIHJlc2l6ZWRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI5MTI0XG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbnRleHRhcmVhIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgd2lkdGg6ICRmb3JtLWNvbG9yLXdpZHRoO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6Oi1tb3otY29sb3Itc3dhdGNoIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtY29sb3Itc3dhdGNoIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHsgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtOyB9XG4gICYuZm9ybS1jb250cm9sLWxnIHsgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnOyB9XG59XG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKX07XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nKSwgdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xuICBtYXJnaW4tdG9wOiAoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkZm9ybS1jaGVjay1pbnB1dC13aWR0aCkgKiAuNTsgLy8gbGluZS1oZWlnaHQgbWludXMgY2hlY2sgaGVpZ2h0XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2UpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tY2hlY2stdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgZmlsdGVyOiAkZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I7XG5cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJlt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpfSwgdmFyKC0tI3skcHJlZml4fWdyYWRpZW50KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbdHlwZT1cImNoZWNrYm94XCJdOmluZGV0ZXJtaW5hdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcblxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2UpfTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIFVzZSBkaXNhYmxlZCBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gb2YgOmRpc2FibGVkIHBzZXVkby1jbGFzc1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XG4gIGN1cnNvcjogJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yO1xufVxuXG4vL1xuLy8gU3dpdGNoXG4vL1xuXG4uZm9ybS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZSl9O1xuXG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMsIDApO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSl9O1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcblxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDtcbn1cblxuLmJ0bi1jaGVjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgICsgLmJ0biB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1iZy1pbWFnZS1kYXJrKX07XG4gICAgfVxuICB9XG59XG4iLCIvLyBSYW5nZVxuLy9cbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxuLy8gYWN0aXZlIHN0YXRlcyBvbiBwcmVmaXhlZCBzZWxlY3RvcnMuXG5cbi5mb3JtLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiAgICAgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpICogLjU7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZpcmVmb3ggc3BlY2lmaWM/XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tZmxvYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbWluLWhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDtcbiAgfVxuXG4gID4gbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyBSZXF1aXJlZCBmb3IgYWxpZ25pbmcgbGFiZWwncyB0ZXh0IHdpdGggdGhlIGlucHV0IGFzIGl0IGFmZmVjdHMgaW5uZXIgYm94IG1vZGVsXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbik7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIH4gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgI3skZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5fSk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgKCRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteCAqIC41KTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDsgLy8gUmVxdWlyZWQgdG8gcHJvcGVybHkgcG9zaXRpb24gbGFiZWwgdGV4dCAtIGFzIGV4cGxhaW5lZCBhYm92ZVxuICAgIH1cbiAgfVxuXG4gID4gOmRpc2FibGVkIH4gbGFiZWwsXG4gID4gLmZvcm0tY29udHJvbDpkaXNhYmxlZCB+IGxhYmVsIHsgLy8gUmVxdWlyZWQgZm9yIGAuZm9ybS1jb250cm9sYHMgYmVjYXVzZSBvZiBzcGVjaWZpY2l0eVxuICAgIGNvbG9yOiAkZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1zZWxlY3QsXG4gID4gLmZvcm0tZmxvYXRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tc2VsZWN0OmZvY3VzLFxuICA+IC5mb3JtLWZsb2F0aW5nOmZvY3VzLXdpdGhpbiB7XG4gICAgei1pbmRleDogNTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFwiXCI7XG4gIEBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkZm9ybS12YWxpZGF0aW9uLXN0YXRlcykge1xuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi10b29sdGlwKVwiICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLWZlZWRiYWNrKVwiO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRpbnB1dC1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXItc2lkZSB2YWxpZGF0aW9uLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlcy1sb29wXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGRhdGEuLi4pO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzLWxvb3BcbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmJ0biB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBidG4tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteDogI3skYnRuLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JGJ0bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHk6ICN7JGJ0bi1mb250LWZhbWlseX07XG4gIEBpbmNsdWRlIHJmcygkYnRuLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skYnRuLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0OiAjeyRidG4tbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGJ0bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGg6ICN7JGJ0bi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJ0bi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAjeyRidG4tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAwIDAgMCAjeyRidG4tZm9jdXMtd2lkdGh9IHJnYmEodmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiKSwgLjUpO1xuICAvLyBzY3NzLWRvY3MtZW5kIGJ0bi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy14KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1mYW1pbHkpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IGlmKCRlbmFibGUtYnV0dG9uLXBvaW50ZXJzLCBwb2ludGVyLCBudWxsKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1iZykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdykpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmJ0bi1jaGVjayArICY6aG92ZXIge1xuICAgIC8vIG92ZXJyaWRlIGZvciB0aGUgY2hlY2tib3gvcmFkaW8gYnV0dG9uc1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcbiAgOm5vdCguYnRuLWNoZWNrKSArICY6YWN0aXZlLFxuICAmOmZpcnN0LWNoaWxkOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICYuc2hvdyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZyk7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdykpO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpjaGVja2VkOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwOyAvLyBDYW4ndCB1c2UgYG5vbmVgIGFzIGtleXdvcmQgbmVnYXRlcyBhbGwgdmFsdWVzIHdoZW4gdXNlZCB3aXRoIG11bHRpcGxlIHNoYWRvd3NcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7JGJ0bi1saW5rLWZvY3VzLXNoYWRvdy1yZ2J9O1xuXG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNvbG9yKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtY2xhc3Nlc1xuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLmNvbGxhcHNlLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLWJvcmRlci1yYWRpdXMsIDApKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnKSk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmcpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWRhcmstYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tZGFyay1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXCJhY3RpdmVcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XG4gIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcbiAgPiAuYnRuOmhvdmVyLFxuICA+IC5idG46Zm9jdXMsXG4gID4gLmJ0bjphY3RpdmUsXG4gID4gLmJ0bi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiA6bm90KC5idG4tY2hlY2s6Zmlyc3QtY2hpbGQpICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRidG4tYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6Zmlyc3QtY2hpbGQsXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gIH1cblxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wc3RhcnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygjeyRidG4tYm9yZGVyLXdpZHRofSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG4gfiAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogI3skbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6ICN7JG5hdi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6ICN7JG5hdi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JG5hdi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXYtbGluay10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXRhYnMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdGFicy1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi10YWJzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXRhYnMtY3NzLXZhcnNcblxuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLWNvbG9yKTtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZykpO1xuICB9XG59XG5cblxuLy9cbi8vIFVuZGVybGluZVxuLy9cblxuLm5hdi11bmRlcmxpbmUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXVuZGVybGluZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcDogI3skbmF2LXVuZGVybGluZS1nYXB9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogI3skbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdW5kZXJsaW5lLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG5cbiAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1nYXApO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoKSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWZpbGwsXG4ubmF2LWp1c3RpZmllZCB7XG4gIC5uYXYtaXRlbSAubmF2LWxpbmsge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBNYWtlIHN1cmUgYnV0dG9uIHdpbGwgZ3Jvd1xuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy9cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuXG4udGFiLWNvbnRlbnQge1xuICA+IC50YWItcGFuZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA+IC5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCIvLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXg6ICN7aWYoJG5hdmJhci1wYWRkaW5nLXggPT0gbnVsbCwgMCwgJG5hdmJhci1wYWRkaW5nLXgpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteTogI3skbmF2YmFyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1saWdodC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15OiAjeyRuYXZiYXItYnJhbmQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICN7JG5hdmJhci1icmFuZC1tYXJnaW4tZW5kfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogI3skbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZX07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAjeyRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogI3skbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogI3skbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAjeyRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICN7JG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb259O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdmJhci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgLy8gVGhlIGBmbGV4LXdyYXBgIHByb3BlcnR5IGlzIGluaGVyaXRlZCB0byBzaW1wbGlmeSB0aGUgZXhwYW5kZWQgbmF2YmFyc1xuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IGluaGVyaXQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICA+IC5jb250YWluZXIsXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgYnJhbmRcbi8vXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cblxuLm5hdmJhci1icmFuZCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLXBhZGRpbmcteSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1tYXJnaW4tZW5kKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXg6IDA7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteTogI3skbmF2LWxpbmstcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRuYXYtbGluay1mb250LXNpemUsIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWZvbnQtd2VpZ2h0OiAjeyRuYXYtbGluay1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLW5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICAmLmFjdGl2ZSxcbiAgICAmLnNob3cge1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0ZXh0XG4vL1xuLy9cblxuLm5hdmJhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1jb2xvcik7XG5cbiAgYSxcbiAgYTpob3ZlcixcbiAgYTpmb2N1cyAge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1mb250LXNpemUpKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3IpOyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uKSk7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoKTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zY3JvbGwtaGVpZ2h0LCA3NXZoKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1leHBhbmQtbG9vcFxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tdW5pb24tY2xhc3MtbmFtZVxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteCk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzIHtcbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIHotaW5kZXg6IGF1dG87XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG5vbmUpO1xuICAgICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAub2ZmY2FudmFzLWhlYWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5vZmZjYW52YXMtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1leHBhbmQtbG9vcFxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4ubmF2YmFyLWxpZ2h0IHtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYC5uYXZiYXItbGlnaHRgXCIsIFwidjUuMi4wXCIsIFwidjYuMC4wXCIsIHRydWUpO1xufVxuXG4ubmF2YmFyLWRhcmssXG4ubmF2YmFyW2RhdGEtYnMtdGhlbWU9XCJkYXJrXCJdIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdmJhci1jb2xvcjogI3skbmF2YmFyLWRhcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yOiAjeyRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3I6ICN7JG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmc6ICN7ZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmNhcmQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15OiAjeyRjYXJkLXNwYWNlci15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteDogI3skY2FyZC1zcGFjZXIteH07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXk6ICN7JGNhcmQtdGl0bGUtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXRpdGxlLWNvbG9yOiAjeyRjYXJkLXRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1zdWJ0aXRsZS1jb2xvcjogI3skY2FyZC1zdWJ0aXRsZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoOiAjeyRjYXJkLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yOiAjeyRjYXJkLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXJhZGl1czogI3skY2FyZC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3gtc2hhZG93OiAjeyRjYXJkLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteTogI3skY2FyZC1jYXAtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1iZzogI3skY2FyZC1jYXAtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcjogI3skY2FyZC1jYXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWhlaWdodDogI3skY2FyZC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNvbG9yOiAjeyRjYXJkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1iZzogI3skY2FyZC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogI3skY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ncm91cC1tYXJnaW46ICN7JGNhcmQtZ3JvdXAtbWFyZ2lufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3cpKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcbiAgLy8gdXNlIGEgY2hpbGQgc2VsZWN0b3IgaGVyZSB0byBwcmV2ZW50IGRvdWJsZSBib3JkZXJzLlxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi5jYXJkLWJvZHkge1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXG4gIC8vIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUsIGVuc3VyaW5nIGZvb3RlcnMgYXJlIGFsaWduZWQgdG8gdGhlIGJvdHRvbS5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jb2xvcik7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtdGl0bGUtc3BhY2VyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yKTtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXgpO1xuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgMCAwKTtcbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1iZyk7XG4gIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpIHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWltZy1vdmVybGF5LXBhZGRpbmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICAgID4gLmNhcmQge1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFjY29yZGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yOiAjeyRhY2NvcmRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYmc6ICN7JGFjY29yZGlvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAjeyRhY2NvcmRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aDogI3skYWNjb3JkaW9uLWljb24td2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm19O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3c6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tY3NzLXZhcnNcbn1cblxuLmFjY29yZGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBSZXNldCBidXR0b24gc3R5bGVcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmcpO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb24pKTtcblxuICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZyk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpKSAwIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uKTtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvbiBpY29uXG4gICY6OmFmdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24pO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbikpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICA+IC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jbGFzc1xuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJixcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3NcblxuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbi1kYXJrKX07XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24tZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteTogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICN7JGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbX07XG4gIEBpbmNsdWRlIHJmcygkYnJlYWRjcnVtYi1mb250LXNpemUsIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZzogI3skYnJlYWRjcnVtYi1iZ307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogI3skYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAjeyRicmVhZGNydW1iLWRpdmlkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAjeyRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogI3skYnJlYWRjcnVtYi1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcik7XG4gICAgICBjb250ZW50OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1wiLyogcnRsOlwifSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XCIqL1wifTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJhZGdlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteDogI3skYmFkZ2UtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15OiAjeyRiYWRnZS1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGJhZGdlLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC13ZWlnaHQ6ICN7JGJhZGdlLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtY29sb3I6ICN7JGJhZGdlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtYm9yZGVyLXJhZGl1czogI3skYmFkZ2UtYm9yZGVyLXJhZGl1c307XG4gIC8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5XG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuLmJ0biAuYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFsZXJ0IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWFsZXJ0LWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14OiAjeyRhbGVydC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXk6ICN7JGFsZXJ0LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b206ICN7JGFsZXJ0LW1hcmdpbi1ib3R0b219O1xuICAtLSN7JHByZWZpeH1hbGVydC1jb2xvcjogaW5oZXJpdDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyOiAjeyRhbGVydC1ib3JkZXItd2lkdGh9IHNvbGlkIHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzOiAjeyRhbGVydC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogaW5oZXJpdDtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3IpO1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5idG4tY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXggKyAxO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgKiAxLjI1ICRhbGVydC1wYWRkaW5nLXg7XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtbW9kaWZpZXJzXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0XG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAuYWxlcnQtI3skc3RhdGV9IHtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwcm9ncmVzcy1rZXlmcmFtZXNcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6ICRwcm9ncmVzcy1oZWlnaHQ7IH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1rZXlmcmFtZXNcblxuLnByb2dyZXNzLFxuLnByb2dyZXNzLXN0YWNrZWQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0OiAjeyRwcm9ncmVzcy1oZWlnaHR9O1xuICBAaW5jbHVkZSByZnMoJHByb2dyZXNzLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmc6ICN7JHByb2dyZXNzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogI3skcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3c6ICN7JHByb2dyZXNzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3I6ICN7JHByb2dyZXNzLWJhci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZzogI3skcHJvZ3Jlc3MtYmFyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICN7JHByb2dyZXNzLWJhci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3cpKTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uKSk7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KSB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZzogI3skbGlzdC1ncm91cC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAjeyRsaXN0LWdyb3VwLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogI3skbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogI3skbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogI3skbGlzdC1ncm91cC1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1iZzogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtOjpiZWZvcmUge1xuICAgIC8vIEluY3JlbWVudHMgb25seSB0aGlzIGluc3RhbmNlIG9mIHRoZSBzZWN0aW9uIGNvdW50ZXJcbiAgICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCBcIi5cIikgXCIuIFwiO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICB9XG59XG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnKTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZyk7XG4gIH1cbn1cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3IpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmcpO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tcmVkdW5kYW50LW5lc3Rpbmctc2VsZWN0b3JcbiAgJiArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsXG4vL1xuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXModmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cykpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItd2lkdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gTGlzdCBncm91cCBjb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGxpc3QtZ3JvdXAtbW9kaWZpZXJzXG4iLCIvLyBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi5idG4tY2xvc2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgY2xvc2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yOiAjeyRidG4tY2xvc2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtYmc6ICN7IGVzY2FwZS1zdmcoJGJ0bi1jbG9zZS1iZykgfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICN7JGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogI3skYnRuLWNsb3NlLWZvY3VzLXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAjeyRidG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICN7JGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXJ9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNsb3NlLWNzcy12YXJzXG5cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAkYnRuLWNsb3NlLXdpZHRoO1xuICBoZWlnaHQ6ICRidG4tY2xvc2UtaGVpZ2h0O1xuICBwYWRkaW5nOiAkYnRuLWNsb3NlLXBhZGRpbmcteSAkYnRuLWNsb3NlLXBhZGRpbmcteDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgYm9yZGVyOiAwOyAvLyBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbiAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5KTtcblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtaG92ZXItb3BhY2l0eSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtc2hhZG93KTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5KTtcbiAgfVxufVxuXG5AbWl4aW4gYnRuLWNsb3NlLXdoaXRlKCkge1xuICBmaWx0ZXI6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyKTtcbn1cblxuLmJ0bi1jbG9zZS13aGl0ZSB7XG4gIEBpbmNsdWRlIGJ0bi1jbG9zZS13aGl0ZSgpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgIEBpbmNsdWRlIGJ0bi1jbG9zZS13aGl0ZSgpO1xuICAgIH1cbiAgfVxufVxuIiwiLnRvYXN0IHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvYXN0LXppbmRleDogI3skemluZGV4LXRvYXN0fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14OiAjeyR0b2FzdC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXk6ICN7JHRvYXN0LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvYXN0LXNwYWNpbmc6ICN7JHRvYXN0LXNwYWNpbmd9O1xuICAtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGg6ICN7JHRvYXN0LW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkdG9hc3QtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b2FzdC1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH10b2FzdC1jb2xvcjogI3skdG9hc3QtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1iZzogI3skdG9hc3QtYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aDogI3skdG9hc3QtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzOiAjeyR0b2FzdC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm94LXNoYWRvdzogI3skdG9hc3QtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcjogI3skdG9hc3QtaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJnOiAjeyR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvYXN0LWNzcy12YXJzXG5cbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b2FzdC1tYXgtd2lkdGgpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLWNvbG9yKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1jb250YWluZXIge1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4KTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nKTtcbiAgfVxufVxuXG4udG9hc3QtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSkpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cbi5tb2RhbCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1tb2RhbC16aW5kZXg6ICN7JHppbmRleC1tb2RhbH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1tZH07XG4gIC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmc6ICN7JG1vZGFsLWlubmVyLXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW46ICN7JG1vZGFsLWRpYWxvZy1tYXJnaW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1jb2xvcjogI3skbW9kYWwtY29udGVudC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJnOiAjeyRtb2RhbC1jb250ZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aDogI3skbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14OiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteTogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nOiAjeyRtb2RhbC1oZWFkZXItcGFkZGluZ307IC8vIFRvZG8gaW4gdjY6IFNwbGl0IHRoaXMgcGFkZGluZyBpbnRvIHggYW5kIHlcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogI3skbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1tb2RhbC10aXRsZS1saW5lLWhlaWdodDogI3skbW9kYWwtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItZ2FwOiAjeyRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW59O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmc6ICN7JG1vZGFsLWZvb3Rlci1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRofTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4KTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAvLyBQcmV2ZW50IENocm9tZSBvbiBXaW5kb3dzIGZyb20gYWRkaW5nIGEgZm9jdXMgb3V0bGluZS4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cbiAgb3V0bGluZTogMDtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHVzZSBgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO2AgZHVlIHRvIGFcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKTtcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gIC5tb2RhbC5mYWRlICYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xuICB9XG4gIC5tb2RhbC5zaG93ICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xuICB9XG5cbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zY2FsZS10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luKSAqIDIpO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtY29sb3IpO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93KSk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC16aW5kZXg6ICN7JHppbmRleC1tb2RhbC1iYWNrZHJvcH07XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLWJnOiAjeyRtb2RhbC1iYWNrZHJvcC1iZ307XG4gIC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHk6ICN7JG1vZGFsLWJhY2tkcm9wLW9wYWNpdHl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWJhY2tkcm9wLWNzcy12YXJzXG5cbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCh2YXIoLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4KSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLWJnKSwgdmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLW9wYWNpdHkpKTtcbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b29sdGlwLXppbmRleDogI3skemluZGV4LXRvb2x0aXB9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aDogI3skdG9vbHRpcC1tYXgtd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteDogI3skdG9vbHRpcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteTogI3skdG9vbHRpcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbjogI3skdG9vbHRpcC1tYXJnaW59O1xuICBAaW5jbHVkZSByZnMoJHRvb2x0aXAtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3I6ICN7JHRvb2x0aXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJnOiAjeyR0b29sdGlwLWJnfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzOiAjeyR0b29sdGlwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHk6ICN7JHRvb2x0aXAtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGg6ICN7JHRvb2x0aXAtYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodDogI3skdG9vbHRpcC1hcnJvdy1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW4pO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgJHRvb2x0aXAtbWFyZ2luYFwiLCBcInY1XCIsIFwidjUueFwiLCB0cnVlKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHkpOyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3R0b206IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwiLnBvcG92ZXIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcG9wb3Zlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleDogI3skemluZGV4LXBvcG92ZXJ9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aDogI3skcG9wb3Zlci1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYmc6ICN7JHBvcG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aDogI3skcG9wb3Zlci1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcjogI3skcG9wb3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93OiAjeyRwb3BvdmVyLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWhlYWRlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnOiAjeyRwb3BvdmVyLWhlYWRlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yOiAjeyRwb3BvdmVyLWJvZHktY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoOiAjeyRwb3BvdmVyLWFycm93LXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIC8vIHNjc3MtZG9jcy1lbmQgcG9wb3Zlci1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLW1heC13aWR0aCk7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdykpO1xuXG4gIC5wb3BvdmVyLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgYm90dG9tOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1lbmQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBsZWZ0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1ib3R0b20ge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICB0b3A6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6YmVnaW46aWdub3JlICovXG4uYnMtcG9wb3Zlci1zdGFydCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHJpZ2h0OiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtcG9wb3Zlci1hdXRvIHtcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xuICB9XG59XG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcik7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cbi8vIDUuIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXG4vL1xuXG4uY2Fyb3VzZWwtZmFkZSB7XG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb24pO1xuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xufVxuXG4vLyBJY29ucyBmb3Igd2l0aGluXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKSAje1wiLypydGw6XCIgKyBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZykgKyBcIiovXCJ9O1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpICN7XCIvKnJ0bDpcIiArIGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKSArIFwiKi9cIn07XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzL2NvbnRyb2xzXG4vL1xuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxuLy8gbGlrZSBhIGJ1dHRvbikgd2l0aCBkYXRhLWJzLXRhcmdldCBmb3IgZWFjaCBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG5cbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gRGFyayBtb2RlIGNhcm91c2VsXG5cbkBtaXhpbiBjYXJvdXNlbC1kYXJrKCkge1xuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgZmlsdGVyOiAkY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyO1xuICB9XG5cbiAgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxuXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtZGFyayB7XG4gIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICAgIC5jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5jYXJvdXNlbCxcbiAgICAgICYuY2Fyb3VzZWwge1xuICAgICAgICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4uc3Bpbm5lci1ncm93LFxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodCk7XG4gIHZlcnRpY2FsLWFsaWduOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZCkgbGluZWFyIGluZmluaXRlIHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lKTtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1wiLyogcnRsOmlnbm9yZSAqL1wifTsgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcblxuLnNwaW5uZXItYm9yZGVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGg6ICN7JHNwaW5uZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ib3JkZXI7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItY3NzLXZhcnNcblxuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aCkgc29saWQgY3VycmVudGNvbG9yO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aC1zbX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXItc20tY3NzLXZhcnNcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWtleWZyYW1lc1xuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcblxuLnNwaW5uZXItZ3JvdyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWdyb3ctY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ246ICN7JHNwaW5uZXItdmVydGljYWwtYWxpZ259O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1uYW1lOiBzcGlubmVyLWdyb3c7XG4gIC8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci13aWR0aDogI3skc3Bpbm5lci13aWR0aC1zbX07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItaGVpZ2h0OiAjeyRzcGlubmVyLWhlaWdodC1zbX07XG59XG5cbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAuc3Bpbm5lci1ib3JkZXIsXG4gICAgLnNwaW5uZXItZ3JvdyB7XG4gICAgICAtLSN7JHByZWZpeH1zcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogI3skc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgKiAyfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4lb2ZmY2FudmFzLWNzcy12YXJzIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtemluZGV4OiAjeyR6aW5kZXgtb2ZmY2FudmFzfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoOiAjeyRvZmZjYW52YXMtaG9yaXpvbnRhbC13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6ICN7JG9mZmNhbnZhcy12ZXJ0aWNhbC1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14OiAjeyRvZmZjYW52YXMtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteTogI3skb2ZmY2FudmFzLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcjogI3skb2ZmY2FudmFzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnOiAjeyRvZmZjYW52YXMtYmctY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAjeyRvZmZjYW52YXMtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcjogI3skb2ZmY2FudmFzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3gtc2hhZG93OiAjeyRvZmZjYW52YXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uOiAje3RyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXR9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgb2ZmY2FudmFzLWNzcy12YXJzXG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGV4dGVuZCAlb2ZmY2FudmFzLWNzcy12YXJzO1xuICB9XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgLm9mZmNhbnZhcyN7JGluZml4fSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWNvbG9yKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYmcpO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdykpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRyYW5zaXRpb24pKTtcblxuICAgICAgJi5vZmZjYW52YXMtc3RhcnQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXdpZHRoKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1lbmQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYub2ZmY2FudmFzLXRvcCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy1ib3R0b20ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWhlaWdodCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci1jb2xvcik7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5zaG93Om5vdCguaGlkaW5nKSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93aW5nLFxuICAgICAgJi5oaWRpbmcsXG4gICAgICAmLnNob3cge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQ6IGF1dG87XG4gICAgICAgIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmY2FudmFzLWJvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICAvLyBSZXNldCBgYmFja2dyb3VuZC1jb2xvcmAgaW4gY2FzZSBgLmJnLSpgIGNsYXNzZXMgYXJlIHVzZWQgaW4gb2ZmY2FudmFzXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcbiAgQGluY2x1ZGUgb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcCwgJG9mZmNhbnZhcy1iYWNrZHJvcC1iZywgJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5KTtcbn1cblxuLm9mZmNhbnZhcy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbjogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpIGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSkgYXV0bztcbiAgfVxufVxuXG4ub2ZmY2FudmFzLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4ub2ZmY2FudmFzLWJvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiB3YWl0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1heDtcblxuICAmLmJ0bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi5wbGFjZWhvbGRlci14cyB7XG4gIG1pbi1oZWlnaHQ6IC42ZW07XG59XG5cbi5wbGFjZWhvbGRlci1zbSB7XG4gIG1pbi1oZWlnaHQ6IC44ZW07XG59XG5cbi5wbGFjZWhvbGRlci1sZyB7XG4gIG1pbi1oZWlnaHQ6IDEuMmVtO1xufVxuXG4vLyBBbmltYXRpb25cbi5wbGFjZWhvbGRlci1nbG93IHtcbiAgLnBsYWNlaG9sZGVyIHtcbiAgICBhbmltYXRpb246IHBsYWNlaG9sZGVyLWdsb3cgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci1nbG93IHtcbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW47XG4gIH1cbn1cblxuLnBsYWNlaG9sZGVyLXdhdmUge1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAkYmxhY2sgNTUlLCByZ2JhKDAsIDAsIDAsICgxIC0gJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluKSkgNzUlLCAkYmxhY2sgOTUlKTtcbiAgbWFzay1zaXplOiAyMDAlIDEwMCU7XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItd2F2ZSAycyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItd2F2ZSB7XG4gIDEwMCUge1xuICAgIG1hc2stcG9zaXRpb246IC0yMDAlIDAlO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiaGVscGVycy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcImhlbHBlcnMvY29sb3ItYmdcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbG9yZWQtbGlua3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2ZvY3VzLXJpbmdcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2ljb24tbGlua1wiO1xuQGltcG9ydCBcImhlbHBlcnMvcmF0aW9cIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwiaGVscGVycy9zdGFja3NcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3Zpc3VhbGx5LWhpZGRlblwiO1xuQGltcG9ydCBcImhlbHBlcnMvc3RyZXRjaGVkLWxpbmtcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3RleHQtdHJ1bmNhdGlvblwiO1xuQGltcG9ydCBcImhlbHBlcnMvdnJcIjtcbiIsIi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCIvLyBBbGwtY2FwcyBgUkdCQSgpYCBmdW5jdGlvbiB1c2VkIGJlY2F1c2Ugb2YgdGhpcyBTYXNzIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvbm9kZS1zYXNzL2lzc3Vlcy8yMjUxXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLnRleHQtYmctI3skY29sb3J9IHtcbiAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJHZhbHVlKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICRob3Zlci1jb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICAgIGNvbG9yOiBSR0JBKCN7dG8tcmdiKCRob3Zlci1jb2xvcil9LCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHRvLXJnYigkaG92ZXItY29sb3IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9uZS1vZmYgc3BlY2lhbCBsaW5rIGhlbHBlciBhcyBhIGJyaWRnZSB1bnRpbCB2NlxuLmxpbmstYm9keS1lbXBoYXNpcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb2N1cy1yaW5nOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgLy8gQnkgZGVmYXVsdCwgdGhlcmUgaXMgbm8gYC0tYnMtZm9jdXMtcmluZy14YCwgYC0tYnMtZm9jdXMtcmluZy15YCwgb3IgYC0tYnMtZm9jdXMtcmluZy1ibHVyYCwgYnV0IHdlIHByb3ZpZGUgQ1NTIHZhcmlhYmxlcyB3aXRoIGZhbGxiYWNrcyB0byBpbml0aWFsIGAwYCB2YWx1ZXNcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteSwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctYmx1ciwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yKTtcbn1cbiIsIi5pY29uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiAkaWNvbi1saW5rLWdhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgPiAuYmkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBUZXh0IHRydW5jYXRpb25cbi8vXG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xufVxuIiwiLnZyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB3aWR0aDogJHZyLWJvcmRlci13aWR0aDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFFQ0U7Ozs7S0FJRztBRkNMLE9BQU8sQ0FBQyxrS0FBSTtBQUNaLE9BQU8sQ0FBQywySEFBSTtBa0NQWixBQUFBLEtBQUs7Q0FDTCxBQUFBLGFBQUMsQ0FBYyxPQUFPLEFBQXJCLEVBQXVCO0VBUXBCLFNBQXFCLENBQUUsUUFBQztFQUF4QixXQUFxQixDQUFFLFFBQUM7RUFBeEIsV0FBcUIsQ0FBRSxRQUFDO0VBQXhCLFNBQXFCLENBQUUsUUFBQztFQUF4QixRQUFxQixDQUFFLFFB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 */
